![]() |
CASToR
1.0
Tomographic Reconstruction (PET/SPECT)
|
00001 00008 #ifndef IPROJECTORCLASSICSIDDON_HH 00009 #define IPROJECTORCLASSICSIDDON_HH 1 00010 00011 #include "gVariables.hh" 00012 #include "sAddonManager.hh" 00013 #include "vProjector.hh" 00014 00022 class iProjectorClassicSiddon : public vProjector 00023 { 00024 // ------------------------------------------------------------------- 00025 // Constructor & Destructor 00026 public: 00033 iProjectorClassicSiddon(); 00040 ~iProjectorClassicSiddon(); 00041 00042 00043 // ------------------------------------------------------------------- 00044 // Public member functions 00045 public: 00046 // Function for automatic insertion (put the class name as the parameter and do not add semi-column at the end of the line) 00047 FUNCTION_PROJECTOR( iProjectorClassicSiddon ) 00058 int ReadConfigurationFile(const string& a_configurationFile); 00069 int ReadOptionsList(const string& a_optionsList); 00078 INTNB EstimateMaxNumberOfVoxelsPerLine(); 00079 00080 00081 // ------------------------------------------------------------------- 00082 // Private member functions 00083 private: 00092 void ShowHelpSpecific(); 00102 int CheckSpecificParameters(); 00109 int InitializeSpecific(); 00119 int ProjectWithoutTOF( int a_direction, oProjectionLine* ap_ProjectionLine ); 00130 int ProjectWithTOFPos( int a_direction, oProjectionLine* ap_ProjectionLine ); 00141 int ProjectWithTOFBin( int a_direction, oProjectionLine* ap_ProjectionLine ); 00142 }; 00143 00144 00145 // Class for automatic insertion (set here the visible projector's name as the first parameter, 00146 // put the class name as the second parameter and do NOT add semi-colon at the end of the line) 00147 CLASS_PROJECTOR( classicSiddon, iProjectorClassicSiddon ) 00148 00149 #endif 00150