303 #define FUNCTION_PENALTY(CLASS) \ 304 static vPenalty *make_penalty() { return new CLASS(); }; 307 #define CLASS_PENALTY(NAME,CLASS) \ 308 class NAME##PenaltyCreator \ 311 NAME##PenaltyCreator() \ 312 { sAddonManager::GetInstance()->mp_listOfPenalties[#NAME] = CLASS::make_penalty; } \ 314 static NAME##PenaltyCreator PenaltyCreator##NAME; This header file is mainly used to declare some macro definitions and all includes needed from the st...
void SetPenaltyStrength(FLTNB a_penaltyStrength)
Set the penalty strength.
Declaration of class oImageDimensionsAndQuantification.
virtual int InitializeSpecific()=0
A private function used to initialize everything specific to the child penalty.
int m_penaltyDerivativesOrder
oImageSpace * mp_ImageSpace
virtual int ReadConfigurationFile(const string &a_configurationFile)=0
A function used to read options from a configuration file and check that the corresponding values are...
const string & GetPenaltyID()
virtual int LocalPreProcessingStep(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)
A public function computing a local pre-processing step for the penalty.
virtual FLTNB ComputeSecondDerivative(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)=0
A public function computing the second derivative of the penalty (the two derivatives are according t...
FLTNB GetPenaltyStrength()
Get the penalty strength.
virtual void ShowHelpSpecific()=0
A function used to show help about the child module.
int Initialize()
A public function used to initialize the penalty.
void ShowHelp()
A function used to show help about the penalty.
vPenalty()
The constructor of vPenalty.
Declaration of class oProjectionLine.
virtual ~vPenalty()
The destructor of vPenalty.
oImageDimensionsAndQuantification * mp_ImageDimensionsAndQuantification
Declaration of class vDataFile.
virtual int GlobalPreProcessingStep()
A public function computing a global pre-processing step for the penalty.
void SetPenaltyID(const string &a_penaltyID)
Set the penalty ID.
This class is designed to generically described any penalty applied to MAP algorithms.
void SetImageSpace(oImageSpace *ap_ImageSpace)
Set the pointer to the image space in use.
void SetVerbose(int a_verbose)
Set the verbose level.
int GetPenaltyDerivativesOrder()
Get the penalty deratives order.
int CheckParameters()
A public function used to check the parameters settings.
virtual int CheckSpecificParameters()=0
A private function used to check the parameters settings specific to the child penalty.
Declaration of class oImageSpace.
virtual FLTNB ComputePenaltyValue(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)=0
A public function computing the value of the penalty function.
This class holds all the matrices in the image domain that can be used in the algorithm: image...
void SetImageDimensionsAndQuantification(oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
Set the pointer to the image dimensions in use.
This class is designed to manage all dimensions and quantification related stuff. ...
virtual int ReadOptionsList(const string &a_optionsList)=0
A function used to read options from a list of options.
virtual FLTNB ComputeFirstDerivative(int a_tbf, int a_rbf, int a_cbf, INTNB a_voxel, int a_th)=0
A public function computing the derivative of the penalty.