CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
include/optimizer/iOptimizerMLTR.hh
Go to the documentation of this file.
1 
8 #ifndef IOPTIMIZERMLTR_HH
9 #define IOPTIMIZERMLTR_HH 1
10 
11 #include "gVariables.hh"
12 #include "sAddonManager.hh"
13 #include "vOptimizer.hh"
14 
23 class iOptimizerMLTR : public vOptimizer
24 {
25  // -------------------------------------------------------------------
26  // Constructor & Destructor
27  public:
42 
43 
44  // -------------------------------------------------------------------
45  // Public member functions
46  public:
47  // Function for automatic insertion (put the class name as the parameter and do not add semi-column at the end of the line)
59  int ReadConfigurationFile(const string& a_configurationFile);
70  int ReadOptionsList(const string& a_optionsList);
71 
72  // -------------------------------------------------------------------
73  // Private member functions (virtual in vOptimizer)
74  private:
83 
84  // -------------------------------------------------------------------
85  // Private member functions (pure virtual in vOptimizer)
86  private:
96  void ShowHelpSpecific();
113  int InitializeSpecific();
129  int SensitivitySpecificOperations( FLTNB a_data, FLTNB a_forwardModel, FLTNB* ap_weight,
130  FLTNB a_multiplicativeCorrections, FLTNB a_additiveCorrections, FLTNB a_blankValue,
131  FLTNB a_quantificationFactor, oProjectionLine* ap_Line );
148  int DataSpaceSpecificOperations( FLTNB a_data, FLTNB a_forwardModel, FLTNB* ap_backwardValues,
149  FLTNB a_multiplicativeCorrections, FLTNB a_additiveCorrections, FLTNB a_blankValue,
150  FLTNB a_quantificationFactor, oProjectionLine* ap_Line );
166  int ImageSpaceSpecificOperations( FLTNB a_currentImageValue, FLTNB* ap_newImageValue,
167  FLTNB a_sensitivity, FLTNB* ap_correctionValues,
168  INTNB a_voxel, int a_tbf = -1, int a_rbf = -1, int a_cbf = -1 );
169 
170 
171  // -------------------------------------------------------------------
172  // Data members
173  private:
174 // FLTNB* mp_alpha; /*!< The alpha image described in the paper from Katrien Van Slambrouck */
175 // FLTNB m_alphaRatio; /*!< The ratio of alpha values between the interior and the exterior of the cylindrical FOV */
180 };
181 
182 
183 // Class for automatic insertion (set here the visible optimizer's name as the first parameter,
184 // put the class name as the second parameter and do NOT add semi-colon at the end of the line)
186 
187 #endif
188 
~iOptimizerMLTR()
The destructor of iOptimizerMLTR.
void ShowHelpSpecific()
A function used to show help about the child optimizer.
int DataSpaceSpecificOperations(FLTNB a_data, FLTNB a_forwardModel, FLTNB *ap_backwardValues, FLTNB a_multiplicativeCorrections, FLTNB a_additiveCorrections, FLTNB a_blankValue, FLTNB a_quantificationFactor, oProjectionLine *ap_Line)
iOptimizerMLTR()
The constructor of iOptimizerMLTR.
int CheckSpecificParameters()
A private function used to check the parameters settings specific to the child optimizer.
int ReadOptionsList(const string &a_optionsList)
Declaration of class vOptimizer.
int InitializeSpecific()
This function is used to initialize specific stuff to the child optimizer.
This class implements a version of the Maximum Likelihood Transmission algorithm. ...
#define FUNCTION_OPTIMIZER(CLASS)
#define CLASS_OPTIMIZER(NAME, CLASS)
This class is designed to generically described any iterative optimizer.
This class is designed to manage and store system matrix elements associated to a vEvent...
int ImageSpaceSpecificOperations(FLTNB a_currentImageValue, FLTNB *ap_newImageValue, FLTNB a_sensitivity, FLTNB *ap_correctionValues, INTNB a_voxel, int a_tbf=-1, int a_rbf=-1, int a_cbf=-1)
int PreImageUpdateSpecificStep()
This function is overloaded from the vOptimizer that does nothing by default.
int ReadConfigurationFile(const string &a_configurationFile)
int SensitivitySpecificOperations(FLTNB a_data, FLTNB a_forwardModel, FLTNB *ap_weight, FLTNB a_multiplicativeCorrections, FLTNB a_additiveCorrections, FLTNB a_blankValue, FLTNB a_quantificationFactor, oProjectionLine *ap_Line)