CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
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);
78  FLTNB ComputePenaltyValue(FLTNB* ap_image, INTNB a_voxel, int a_th);
89  FLTNB ComputeFirstDerivative(FLTNB* ap_image, INTNB a_voxel, int a_th);
100  FLTNB ComputeSecondDerivative(FLTNB* ap_image, INTNB a_voxel, int a_th);
101 
102  // -------------------------------------------------------------------
103  // Private member functions
104  private:
114  void ShowHelpSpecific();
131  int InitializeSpecific();
132 
133  // -------------------------------------------------------------------
134  // Data members
135  private:
136 
137 };
138 
139 // Class for automatic insertion (set here the visible optimizer's name as the first parameter,
140 // put the class name as the second parameter and do NOT add semi-colon at the end of the line)
142 
143 #endif
144 
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.
Declaration of class vPenalty.
iPenaltyTemplate()
The constructor of iPenaltyTemplate.