CASToR  1.0
Tomographic Reconstruction (PET/SPECT)
iProjectorIncrementalSiddon.hh
Go to the documentation of this file.
00001 
00008 #ifndef IPROJECTORINCREMENTALSIDDON_HH
00009 #define IPROJECTORINCREMENTALSIDDON_HH 1
00010 
00011 #include "gVariables.hh"
00012 #include "sAddonManager.hh"
00013 #include "vProjector.hh"
00014 
00015 
00024 class iProjectorIncrementalSiddon : public vProjector
00025 {
00026   // -------------------------------------------------------------------
00027   // Constructor & Destructor
00028   public:
00035     iProjectorIncrementalSiddon();
00042     ~iProjectorIncrementalSiddon();
00043 
00044   // -------------------------------------------------------------------
00045   // Public member functions
00046   public:
00047     // Function for automatic insertion (put the class name as the parameter and do not add semi-column at the end of the line)
00048     FUNCTION_PROJECTOR(iProjectorIncrementalSiddon)
00059     int ReadConfigurationFile(const string& a_configurationFile);
00070     int ReadOptionsList(const string& a_optionsList);
00079     INTNB EstimateMaxNumberOfVoxelsPerLine();
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(incrementalSiddon,iProjectorIncrementalSiddon)
00148 
00149 #endif
00150 
 All Classes Files Functions Variables Typedefs Defines