CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
Public Member Functions | Private Member Functions | List of all members
iImageProcessingTemplate Class Reference

This class is a template of an image processing module to serve as an example. More...

#include <iImageProcessingTemplate.hh>

Inheritance diagram for iImageProcessingTemplate:
Inheritance graph
Collaboration diagram for iImageProcessingTemplate:
Collaboration graph

Public Member Functions

 iImageProcessingTemplate ()
 The constructor of iImageProcessingTemplate. More...
 
 ~iImageProcessingTemplate ()
 The destructor of iImageProcessingTemplate. More...
 
int ReadConfigurationFile (const string &a_configurationFile)
 
int ReadOptionsList (const string &a_optionsList)
 
void ShowHelp ()
 A function used to show help about the child module. More...
 
int Process (FLTNB ****a4p_image)
 
 iImageProcessingTemplate ()
 
 ~iImageProcessingTemplate ()
 
int ReadConfigurationFile (const string &a_configurationFile)
 
int ReadOptionsList (const string &a_optionsList)
 
void ShowHelp ()
 A function used to show help about the child module. More...
 
int Process (FLTNB ****a4p_image)
 
- Public Member Functions inherited from vImageProcessingModule
 vImageProcessingModule ()
 The constructor of vImageProcessingModule. More...
 
virtual ~vImageProcessingModule ()
 The destructor of vImageProcessingModule. More...
 
int CheckParameters ()
 A public function used to check the parameters settings. More...
 
int Initialize ()
 A public function used to initialize the module. More...
 
void SetVerbose (int a_verbose)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
bool GetAffectTimeDimensionFlag ()
 Return the boolean value of m_affectTimeDimensionFlag member. More...
 
bool GetAffectRespDimensionFlag ()
 Return the boolean value of m_affectRespDimensionFlag member. More...
 
bool GetAffectCardDimensionFlag ()
 Return the boolean value of m_affectCardDimensionFlag member. More...
 
 vImageProcessingModule ()
 
virtual ~vImageProcessingModule ()
 
int CheckParameters ()
 
int Initialize ()
 
void SetVerbose (int a_verbose)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
bool GetAffectTimeDimensionFlag ()
 
bool GetAffectRespDimensionFlag ()
 
bool GetAffectCardDimensionFlag ()
 

Private Member Functions

int CheckSpecificParameters ()
 A private function used to check the parameters settings specific to the child module. More...
 
int InitializeSpecific ()
 A private function used to initialize everything specific to the child module. More...
 
int CheckSpecificParameters ()
 A private function used to check the parameters settings specific to the child module. More...
 
int InitializeSpecific ()
 A private function used to initialize everything specific to the child module. More...
 

Additional Inherited Members

- Protected Attributes inherited from vImageProcessingModule
oImageDimensionsAndQuantificationmp_ImageDimensionsAndQuantification
 
bool m_affectTimeDimensionFlag
 
bool m_affectRespDimensionFlag
 
bool m_affectCardDimensionFlag
 
bool m_checked
 
bool m_initialized
 
int m_verbose
 

Detailed Description

This class is a template of an image processing module to serve as an example.

This class is a child of vImageProcessingModule. It is a template of an image processing module that implements all mandatory parts to be compilable but does not do nothing. It can be used as a starting point to implement ones own image processing module. Many explanations are provided within the corpus of all functions to guide through the implementation of ones own module. In a few words, one simply has to implement few pure virtual functions inherited from the vImageProcessingModule abstract class, while observing a few rules.

Definition at line 28 of file code/include/image/iImageProcessingTemplate.hh.

Constructor & Destructor Documentation

◆ iImageProcessingTemplate() [1/2]

iImageProcessingTemplate::iImageProcessingTemplate ( )

The constructor of iImageProcessingTemplate.

This is the default and unique constructor. It does not take any parameter and its role is:
(i) to affect default values to parameters specific to this module;
(ii) to affect the values of the three booleans m_affectTimeDimensionFlag, m_affectRespDimensionFlag and m_affectCardDimensionFlag
These booleans are inherited from the abstract class vImageProcessingModule, that specifies if this specific module will affect or operate on the different dynamic dimensions. This is used by the oImageProcessingManager to check that dynamic basis functions are not used at the same time as a module that work on these dimensions too.

Definition at line 16 of file code/src/image/iImageProcessingTemplate.cc.

◆ ~iImageProcessingTemplate() [1/2]

iImageProcessingTemplate::~iImageProcessingTemplate ( )

The destructor of iImageProcessingTemplate.

This is the default and unique destructor. It does not take any parameter and its role is only to free or delete all structures that were built specifically by this module.

Definition at line 36 of file code/src/image/iImageProcessingTemplate.cc.

◆ iImageProcessingTemplate() [2/2]

iImageProcessingTemplate::iImageProcessingTemplate ( )

◆ ~iImageProcessingTemplate() [2/2]

iImageProcessingTemplate::~iImageProcessingTemplate ( )

Member Function Documentation

◆ CheckSpecificParameters() [1/2]

int iImageProcessingTemplate::CheckSpecificParameters ( )
privatevirtual

A private function used to check the parameters settings specific to the child module.

This function is used to check that all parameters specific to the module are correctly set within allowed values. It is called by the CheckParameters() function of the mother class. It is the implementation of the pure virtual function inherited from the abstract mother class vImageProcessingModule.

Returns
An integer reflecting the check status; 0 if no problem, another value otherwise.

Implements vImageProcessingModule.

Definition at line 84 of file code/src/image/iImageProcessingTemplate.cc.

◆ CheckSpecificParameters() [2/2]

int iImageProcessingTemplate::CheckSpecificParameters ( )
privatevirtual

A private function used to check the parameters settings specific to the child module.

This function is used to check that all parameters specific to the module are correctly set within allowed values. It is called by the CheckParameters() function. It is pure virtual so is implemented by children.

Returns
An integer reflecting the check status; 0 if no problem, another value otherwise.

Implements vImageProcessingModule.

◆ InitializeSpecific() [1/2]

int iImageProcessingTemplate::InitializeSpecific ( )
privatevirtual

A private function used to initialize everything specific to the child module.

This function is used to initialize everything specific to the module that should be initialized. It is called by the Initialize() function of the mother class. It is the implementation of the pure virtual function inherited from the abstract mother class vImageProcessingModule.

Returns
An integer reflecting the initialization status; 0 if no problem, another value otherwise.

Implements vImageProcessingModule.

Definition at line 97 of file code/src/image/iImageProcessingTemplate.cc.

◆ InitializeSpecific() [2/2]

int iImageProcessingTemplate::InitializeSpecific ( )
privatevirtual

A private function used to initialize everything specific to the child module.

This function is used to initialize everything specific to the module that should be initialized. It is called by the Initialize() function. It is pure virtual so is implemented by children.

Returns
An integer reflecting the initialization status; 0 if no problem, another value otherwise.

Implements vImageProcessingModule.

◆ Process() [1/2]

int iImageProcessingTemplate::Process ( FLTNB ****  a4p_image)
virtual

◆ Process() [2/2]

int iImageProcessingTemplate::Process ( FLTNB ****  a4p_image)
virtual

◆ ReadConfigurationFile() [1/2]

int iImageProcessingTemplate::ReadConfigurationFile ( const string &  a_configurationFile)
virtual

◆ ReadConfigurationFile() [2/2]

int iImageProcessingTemplate::ReadConfigurationFile ( const string &  a_configurationFile)
virtual

Implements vImageProcessingModule.

Definition at line 46 of file code/src/image/iImageProcessingTemplate.cc.

◆ ReadOptionsList() [1/2]

int iImageProcessingTemplate::ReadOptionsList ( const string &  a_optionsList)
virtual

◆ ReadOptionsList() [2/2]

int iImageProcessingTemplate::ReadOptionsList ( const string &  a_optionsList)
virtual

Implements vImageProcessingModule.

Definition at line 59 of file code/src/image/iImageProcessingTemplate.cc.

◆ ShowHelp() [1/2]

void iImageProcessingTemplate::ShowHelp ( )
virtual

A function used to show help about the child module.

This function must describe what the module does and how to use it. It describes in details the different parameters of the module, and how to set them through the use of a configuration file or a list of options. It is the implementation of the pure virtual function inherited from the abstract class vImageProcessingModule.

Implements vImageProcessingModule.

Definition at line 72 of file code/src/image/iImageProcessingTemplate.cc.

◆ ShowHelp() [2/2]

void iImageProcessingTemplate::ShowHelp ( )
virtual

A function used to show help about the child module.

This function must describe what the module does and how to use it. It describes in details the different parameters of the module, and how to set them through the use of a configuration file or a list of options. It is pure virtual so is implemented by children.

Implements vImageProcessingModule.


The documentation for this class was generated from the following files: