CASToR  1.0
Tomographic Reconstruction (PET/SPECT)
iProjectorIncrementalSiddonMulti.hh
Go to the documentation of this file.
00001 
00008 #ifndef IPROJECTORINCREMENTALSIDDONMULTI_HH
00009 #define IPROJECTORINCREMENTALSIDDONMULTI_HH 1
00010 
00011 #include "gVariables.hh"
00012 #include "sAddonManager.hh"
00013 #include "vProjector.hh"
00014 
00015 
00023 class iProjectorIncrementalSiddonMulti : public vProjector
00024 {
00025   // -------------------------------------------------------------------
00026   // Constructor & Destructor
00027   public:
00034     iProjectorIncrementalSiddonMulti();
00041     ~iProjectorIncrementalSiddonMulti();
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(iProjectorIncrementalSiddonMulti)
00058     int ReadConfigurationFile(const string& a_configurationFile);
00069     int ReadOptionsList(const string& a_optionsList);
00078     INTNB EstimateMaxNumberOfVoxelsPerLine();
00079   // -------------------------------------------------------------------
00080   // Private member functions
00081   private:
00090     void ShowHelpSpecific();
00100     int CheckSpecificParameters();
00107     int InitializeSpecific();
00117     int ProjectWithoutTOF( int a_direction, oProjectionLine* ap_ProjectionLine );
00128     int ProjectWithTOFPos( int a_direction, oProjectionLine* ap_ProjectionLine );
00139     int ProjectWithTOFBin( int a_direction, oProjectionLine* ap_ProjectionLine );
00140 
00141   // -------------------------------------------------------------------
00142   // Data members
00143   private:
00144     int m_nbLines; 
00145 };
00146 
00147 
00148 // Class for automatic insertion (set here the visible projector's name as the first parameter,
00149 // put the class name as the second parameter and do NOT add semi-colon at the end of the line)
00150 CLASS_PROJECTOR(multiSiddon,iProjectorIncrementalSiddonMulti)
00151 
00152 #endif
00153 
 All Classes Files Functions Variables Typedefs Defines