![]() |
CASToR
1.0
Tomographic Reconstruction (PET/SPECT)
|
00001 00002 /* 00003 Implementation of class iEventNorm 00004 00005 - separators: X 00006 - doxygen: X 00007 - default initialization: X 00008 - CASTOR_DEBUG: none 00009 - CASTOR_VERBOSE: none 00010 */ 00011 00020 #include "iEventNorm.hh" 00021 #include "vDataFile.hh" 00022 #include "sOutputManager.hh" 00023 00024 // ===================================================================== 00025 // --------------------------------------------------------------------- 00026 // --------------------------------------------------------------------- 00027 // ===================================================================== 00028 00029 iEventNorm::iEventNorm() : vEvent() 00030 { 00031 m_dataMode = MODE_NORMALIZATION; 00032 m_normalizationFactor = 1.; 00033 m_attenuationCorrectionFactor = 1.; 00034 } 00035 00036 // ===================================================================== 00037 // --------------------------------------------------------------------- 00038 // --------------------------------------------------------------------- 00039 // ===================================================================== 00040 00041 iEventNorm::~iEventNorm() {} 00042 00043 // ===================================================================== 00044 // --------------------------------------------------------------------- 00045 // --------------------------------------------------------------------- 00046 // ===================================================================== 00047 00048 void iEventNorm::Describe() 00049 { 00050 Cout("---------------------- iEventNorm::Describe() --------------------------" << endl); 00051 Cout("sizeof(FLTNB): " << sizeof(FLTNB) << endl); 00052 Cout("Number of lines: " << m_nbLines << endl); 00053 for (uint16_t l=0; l<m_nbLines; l++) Cout(" --> ID1: " << mp_ID1[l] << " | ID2: " << mp_ID2[l] << endl); 00054 Cout("Attenuation correction factor: " << m_attenuationCorrectionFactor << endl); 00055 Cout("Normalization factor: " << m_normalizationFactor << endl); 00056 Cout("----------------------------------------------------------------------------" << endl); 00057 Cout(flush); 00058 } 00059 00060 // ===================================================================== 00061 // --------------------------------------------------------------------- 00062 // --------------------------------------------------------------------- 00063 // ===================================================================== 00064 00065 FLTNB iEventNorm::GetEventValue(int a_bin) 00066 { 00067 // This function is an implementation of inheritance, but has no sense in this context 00068 Cerr("***** iEventNorm::GetEventValue() -> This function should not be used ! Alternatives are:" << endl); 00069 Cerr(" GetNormalizationFactor() and GetAttenuationCorrectionFactor" << endl); 00070 Exit(EXIT_FAILURE); 00071 return -1.; 00072 } 00073 00074 // ===================================================================== 00075 // --------------------------------------------------------------------- 00076 // --------------------------------------------------------------------- 00077 // ===================================================================== 00078 00079 FLTNB iEventNorm::GetAdditiveCorrections(int a_bin) 00080 { 00081 // This function is an implementation of inheritance, but has no sense in this context 00082 Cerr("***** iEventNorm::GetAdditiveCorrections() -> This function should not be used ! Alternatives are:" << endl); 00083 Cerr(" GetNormalizationFactor() and GetAttenuationCorrectionFactor" << endl); 00084 Exit(EXIT_FAILURE); 00085 return -1.; 00086 } 00087 00088 // ===================================================================== 00089 // --------------------------------------------------------------------- 00090 // --------------------------------------------------------------------- 00091 // ===================================================================== 00092 00093 void iEventNorm::SetEventValue(int a_bin, FLTNBDATA a_value) 00094 { 00095 // This function is an implementation of inheritance, but has no sense in this context 00096 Cerr("***** iEventNorm::GetAdditiveCorrections() -> This function should not be used ! Alternatives are:" << endl); 00097 Cerr(" GetNormalizationFactor() and GetAttenuationCorrectionFactor" << endl); 00098 Exit(EXIT_FAILURE); 00099 }