![]() |
CASToR
1.0
Tomographic Reconstruction (PET/SPECT)
|
00001 00008 #ifndef OCOMPUTEPROJECTION_HH 00009 #define OCOMPUTEPROJECTION_HH 1 00010 00011 #include "oProjectionLine.hh" 00012 #include "oImageSpace.hh" 00013 #include "vEvent.hh" 00014 00015 00024 class oComputeProjection 00025 { 00026 // Constructor & Destructor 00027 public: 00028 00034 oComputeProjection(oImageDimensionsAndQuantification* ap_ImageDimensionsAndQuantification); 00035 00039 ~oComputeProjection(); 00040 00041 00042 // ------------------------------------------------------------------- 00043 // Public member functions 00044 public: 00045 00061 int DataUpdateStep(vDataFile* ap_DataFile, 00062 oProjectionLine* a2p_Line, 00063 oImageSpace* ap_Image, 00064 vEvent* ap_Event, 00065 int a_fr, 00066 int a_rg, 00067 int a_cg, 00068 int th, 00069 uint32_t a_timestamp); 00070 00071 00080 int InitNoiseModel(string aNoiseModel); 00081 00093 uint32_t GetPoissonNoise(uint32_t a_lambda); 00094 00100 void SetVerbose(int a_verboseLevel) {m_verbose = a_verboseLevel;}; 00101 00102 00103 // ------------------------------------------------------------------- 00104 // Private member functions 00105 private: 00106 00107 00108 // ------------------------------------------------------------------- 00109 // Data members 00110 private: 00111 oImageDimensionsAndQuantification* mp_ID; 00112 int m_verbose; 00113 bool m_noiseModelEnabled; 00114 }; 00115 00116 #endif 00117