16 #if !defined(_ciDETECTOR_H_)
17 #define _ciDETECTOR_H_
21 #endif // _MSC_VER > 1000
81 void setNET(
double NET ) { m_NET = NET; }
103 m_FixedNoisePercent = percentNoise;
187 if (resolutionScale == 0)
188 resolutionScale = .000001;
189 m_resolutionScale = resolutionScale; }
597 void setScanMaskGainFilename(
char* gainFilename);
611 void setScanMaskLevelFilename(
char* levelFilename);
667 void setChargeWellCapacity(
double threshold)
669 m_chargeWellCapacity = threshold;
677 double getChargeWellCapacity()
const
679 return m_chargeWellCapacity;
687 void setQuantumEfficiency(
double efficiency)
689 m_quantumEfficiency = efficiency;
697 double getQuantumEfficiency()
const
699 return m_quantumEfficiency;
707 void setAntiBloomingType(
int antibloomDirection)
709 m_antiBloomDirection = antibloomDirection;
717 int getAntiBloomingType()
const
719 return m_antiBloomDirection;
727 void setMaterialWavelengthCutOnCutOff(
double cuton,
double cutoff)
729 m_wavelengthCutOn = cuton;
730 m_wavelengthCutOff = cutoff;
738 void getMaterialWavelengthCutOnCutOff(
double &cuton,
double &cutoff)
const
740 cuton = m_wavelengthCutOn;
741 cutoff = m_wavelengthCutOff;
751 m_microChannelPlateDistance =
distance;
759 double getMicroChannelPlateDistance()
const
761 return m_microChannelPlateDistance;
769 void setPhotoCathodeVoltage(
double voltage)
771 m_photoCathodeVoltage = voltage;
779 double getPhotoCathodeVoltage()
const
781 return m_photoCathodeVoltage;
790 double getWellCapacityPercentage()
const
792 return m_wellCapacityPercentage;
801 void setWellCapacityPercentage(
double percentage)
803 m_wellCapacityPercentage = (float)percentage;
812 double getReadoutNoiseNumElectron()
const
814 return m_electronReadoutNoise;
823 void setReadoutNoiseNumElectron(
double electrons)
825 m_electronReadoutNoise = (float)electrons;
834 bool get3DNoiseEnable()
const
836 return m_enable3DNoise;
856 float get3DNoiseSigmaH()
const
858 return m_3DNoiseSigmaH;
867 void set3DNoiseSigmaH(
float STD)
869 m_3DNoiseSigmaH = STD;
878 float get3DNoiseSigmaV()
const
880 return m_3DNoiseSigmaV;
889 void set3DNoiseSigmaV(
float STD)
891 m_3DNoiseSigmaV = STD;
900 float get3DNoiseSigmaVH()
const
902 return m_3DNoiseSigmaVH;
911 void set3DNoiseSigmaVH(
float STD)
913 m_3DNoiseSigmaVH = STD;
922 float get3DNoiseSigmaT()
const
924 return m_3DNoiseSigmaT;
933 void set3DNoiseSigmaT(
float STD)
935 m_3DNoiseSigmaT = STD;
944 float get3DNoiseSigmaTH()
const
946 return m_3DNoiseSigmaTH;
955 void set3DNoiseSigmaTH(
float STD)
957 m_3DNoiseSigmaTH = STD;
966 float get3DNoiseSigmaTV()
const
968 return m_3DNoiseSigmaTV;
977 void set3DNoiseSigmaTV(
float STD)
979 m_3DNoiseSigmaTV = STD;
988 float get3DNoiseSigmaTVH()
const
990 return m_3DNoiseSigmaTVH;
999 void set3DNoiseSigmaTVH(
float STD)
1001 m_3DNoiseSigmaTVH = STD;
1013 bool archive(std::ofstream &outf,
int idx = 0);
1024 int serialize(
char *filepath,
int idx);
1046 bool parseXML(
clXML& xmlDocument);
1056 bool loadXMLNode(
std::string tag,
char *nodeString);
1065 bool loadXMLNode(
std::string tag,
bool *nodeBool);
1083 bool loadXMLNode(
std::string tag,
long *nodeLong);
1092 bool loadXMLNode(
std::string tag,
double *nodeDouble);
1102 void saveXML(
clXML* xmlDocument);
1111 int serializeCheck(
char *filepath);
1173 char m_scanMaskGainFilename[512];
1174 char m_scanMaskLevelFilename[512];
1215 #endif // _ciDETECTOR_H_