![]() |
CASToR
1.0
Tomographic Reconstruction (PET/SPECT)
|
00001 00002 /* 00003 Implementation of class iEventListSPECT 00004 00005 - separators: X 00006 - doxygen: X 00007 - default initialization: X 00008 - CASTOR_DEBUG: none 00009 - CASTOR_VERBOSE: none 00010 */ 00011 00012 00021 #include "iEventListSPECT.hh" 00022 #include "vDataFile.hh" // DATA_MODE/ DATA_TYPE macros 00023 #include "sOutputManager.hh" // Cout()/Cerr() 00024 00025 // ===================================================================== 00026 // --------------------------------------------------------------------- 00027 // --------------------------------------------------------------------- 00028 // ===================================================================== 00029 00030 iEventListSPECT::iEventListSPECT() : iEventSPECT() 00031 { 00032 m_dataType = TYPE_SPECT; 00033 m_dataMode = MODE_LIST; 00034 mp_POI[0] = 0.; 00035 mp_POI[1] = 0.; 00036 mp_POI[2] = -1.; 00037 m_kind = KIND_UNKNOWN; 00038 m_eventValue = 1.; 00039 } 00040 00041 // ===================================================================== 00042 // --------------------------------------------------------------------- 00043 // --------------------------------------------------------------------- 00044 // ===================================================================== 00045 00046 iEventListSPECT::~iEventListSPECT() {} 00047 00048 // ===================================================================== 00049 // --------------------------------------------------------------------- 00050 // --------------------------------------------------------------------- 00051 // ===================================================================== 00052 /* 00053 \fn virtual void SetEventValue(int a_bin, FLTNBDATA a_value) 00054 \param a_bin 00055 \param a_value 00056 \brief Throw a warning (depending of verbosity) as the event value of a list-mode Event should be equal to 1 and not modified 00057 */ 00058 void iEventListSPECT::SetEventValue(int a_bin, FLTNBDATA a_value) 00059 { 00060 if (m_verbose>5) 00061 Cout("!!!!! iEventListSPECT::SetEventValue() -> Trying to set the value of a list mode event, which is equal to 1 by default."); 00062 } 00063 00064 // ===================================================================== 00065 // --------------------------------------------------------------------- 00066 // --------------------------------------------------------------------- 00067 // ===================================================================== 00068 /* 00069 \fn virtual void Describe() 00070 \brief This function can be used to get a description of the event printed out 00071 */ 00072 void iEventListSPECT::Describe() 00073 { 00074 Cout("---------------------- iEventListSPECT::Describe() --------------------------" << endl); 00075 Cout("sizeof(FLTNB): " << sizeof(FLTNB) << endl); 00076 Cout("Time: " << m_timeInMs << " ms" << endl); 00077 Cout("Number of lines: " << m_nbLines << endl); 00078 for (uint16_t l=0; l<m_nbLines; l++) Cout(" --> ID1: " << mp_ID1[l] << " | ID2: " << mp_ID2[l] << endl); 00079 Cout("Scatter rate: " << m_eventScatRate << endl); 00080 Cout("Normalization factor: " << m_eventNormFactor << endl); 00081 Cout("kind: " << m_kind << endl); 00082 Cout("POI (x ; y ; z ) = " << mp_POI[0] <<" ; " << mp_POI[1] <<" ; " << mp_POI[2] <<" ; " << endl); 00083 Cout("----------------------------------------------------------------------------" << endl); 00084 }