DexelaDetector API: DexImage.h Source File

Dexela API

DexImage.h
Go to the documentation of this file.
1 // DexImage.h: Main header file for the DexImage object
2 //
6 #pragma once
7 
8 #ifndef DEX_BUILD
9 #ifdef _DEBUG
10 #pragma comment(lib,"DexImage-d.lib")
11 #else
12 #pragma comment(lib,"DexImage.lib")
13 #endif
14 #endif
15 #include "DexDefs.h"
16 #include "DexImage.h"
17 #include <vector>
18 #include <boost/shared_ptr.hpp>
19 
20 using namespace std;
21 
22 #pragma warning(disable: 4251)
23 
27 class DllExport DexImage
28 {
29 
30  private:
31  boost::shared_ptr<BaseImage> baseIm;
32 
33 public:
34  DexImage(void);
35  DexImage(const char* filename);
36  DexImage(const DexImage &input);
37  void operator =(const DexImage &input);
38  ~DexImage(void);
39 
40  void ReadImage(const char* filename);
41  void WriteImage(const char* filename);
42  void WriteImage(const char* filename, int iZ);
43  void Build(int iWidth, int iHeight, int iDepth, pType iPxType);
44  void Build(int model, bins binFmt, int iDepth);
45 
46  void* GetDataPointerToPlane(int iZ=0);
47  int GetImageXdim();
48  int GetImageYdim();
49  int GetImageDepth();
50  pType GetImagePixelType();
51  float PlaneAvg(int iZ=0);
52  void FixFlood();
53  void FindMedianofPlanes();
54  void FindAverageofPlanes();
55  void LinearizeData();
56  void SubtractDark();
57  void FloodCorrection();
58  void DefectCorrection(int DefectFlags=31);
59  void SubImageDefectCorrection(int startCol, int startRow, int width, int height,int CorrectionsFlag=31);
60  void FullCorrection();
61  void UnscrambleImage();
62  void AddImage();
63 
64  void LoadDarkImage(const DexImage &dark);
65  void LoadDarkImage(const char* filename);
66  void LoadFloodImage(const DexImage &flood);
67  void LoadFloodImage(const char* filename);
68  void LoadDefectMap(const DexImage &defect);
69  void LoadDefectMap(const char* filename);
70 
71  DexImage GetDarkImage();
72  DexImage GetFloodImage();
73  DexImage GetDefectMap();
74  DexImage GetImagePlane(int iZ);
75 
76  DexImageTypes GetImageType();
77  void SetImageType(DexImageTypes type);
78 
79  void SetDarkOffset(int offset);
80  int GetDarkOffset();
81 
82  void SetLinearizationStarts(unsigned int* msArray, int msLength);
83  unsigned int* GetLinearizationStarts(int& msLength);
84 
85  void SetImageParameters(bins binningMode, int modelNumber);
86 
87  int GetImageModel();
88  bins GetImageBinning();
89 
90  bool IsEmpty();
91 
92  void SetScrambledFlag(bool onOff);
93 
94  void SetROIParameters(unsigned short usStartColumn, unsigned short usStartRow, unsigned short usROIWidth, unsigned short usROIHeight);
95 };
pType
Enumneration of pixel types
Definition: DexDefs.h:205
This class is used to store and handle the images acquired from a detector.
Definition: DexImage.h:27
DexImageTypes
An enumeration of the different image types.
Definition: DexDefs.h:357
bins
An enumeration of the different bin levels available
Definition: DexDefs.h:73
Generated on Tue Nov 25 2014 10:22:44 for DexelaDetector API by   doxygen 1.8.7