CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
code/include/optimizer/iPenaltyTemplate.hh
Go to the documentation of this file.
1 
8 #ifndef IPENALTYTEMPLATE_HH
9 #define IPENALTYTEMPLATE_HH 1
10 
11 #include "vPenalty.hh"
12 #include "sAddonManager.hh"
13 #include "sOutputManager.hh"
14 
20 class iPenaltyTemplate : public vPenalty
21 {
22  // -------------------------------------------------------------------
23  // Constructor & Destructor
24  public:
25 
40 
41  // -------------------------------------------------------------------
42  // Public member functions
43  public:
44  // Function for automatic insertion (put the class name as the parameter and do not add semi-column at the end of the line)
56  int ReadConfigurationFile(const string& a_configurationFile);
67  int ReadOptionsList(const string& a_optionsList);
80  FLTNB ComputePenaltyValue(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th);
93  FLTNB ComputeFirstDerivative(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th);
106  FLTNB ComputeSecondDerivative(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th);
107 
108  // -------------------------------------------------------------------
109  // Private member functions
110  private:
120  void ShowHelpSpecific();
137  int InitializeSpecific();
138 
139  // -------------------------------------------------------------------
140  // Data members
141  private:
142 
143 };
144 
145 // Class for automatic insertion (set here the visible optimizer's name as the first parameter,
146 // put the class name as the second parameter and do NOT add semi-colon at the end of the line)
148 
149 #endif
150 
int ReadOptionsList(const string &a_optionsList)
int ReadConfigurationFile(const string &a_configurationFile)
FLTNB ComputePenaltyValue(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
void ShowHelpSpecific()
A function used to show help about the child penalty.
int InitializeSpecific()
This function is used to initialize specific stuff to the child penalty.
int CheckSpecificParameters()
A private function used to check the parameters settings specific to the child penalty.
#define CLASS_PENALTY(NAME, CLASS)
#define FUNCTION_PENALTY(CLASS)
~iPenaltyTemplate()
The destructor of iPenaltyTemplate.
FLTNB ComputeFirstDerivative(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
This class is designed to generically described any penalty applied to MAP algorithms.
FLTNB ComputeSecondDerivative(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
This class is a template for penalties.
iPenaltyTemplate()
The constructor of iPenaltyTemplate.
Declaration of class vPenalty.