CASToR
2.0
Tomographic Reconstruction (PET/SPECT/CT)
|
This class is designed to manage the automatic declaration of 'addon' classes. More...
#include <sAddonManager.hh>
Public Types | |
typedef vProjector *(* | maker_projector )() |
typedef vOptimizer *(* | maker_optimizer )() |
typedef vPenalty *(* | maker_penalty )() |
typedef vImageConvolver *(* | maker_image_convolver )() |
typedef vImageProcessingModule *(* | maker_image_processing_module )() |
typedef vScanner *(* | maker_scanner )() |
typedef vDynamicModel *(* | maker_dynamic_model )() |
typedef vDeformation *(* | maker_deformation )() |
Public Member Functions | |
~sAddonManager () | |
The destructor of sAddonManager. More... | |
void | ShowHelpProjector () |
Show help about all implemented projectors. More... | |
void | ShowHelpOptimizer () |
Show help about all implemented optimizers. More... | |
void | ShowHelpPenalty () |
Show help about all implemented penalties. More... | |
void | ShowHelpImageConvolver () |
Show help about all implemented image convolvers. More... | |
void | ShowHelpImageProcessingModule () |
Show help about all implemented image processing modules. More... | |
void | ShowHelpScanner () |
Show help about all implemented scanners. More... | |
void | ShowHelpDynamicModel () |
Show help about all implemented dynamic models. More... | |
void | ShowHelpDeformation () |
Show help about all implemented deformations. More... | |
Static Public Member Functions | |
static sAddonManager * | GetInstance () |
Public Attributes | |
std::map< string, maker_projector > | mp_listOfProjectors |
std::map< string, maker_optimizer > | mp_listOfOptimizers |
std::map< string, maker_penalty > | mp_listOfPenalties |
std::map< string, maker_image_convolver > | mp_listOfImageConvolvers |
std::map< string, maker_image_processing_module > | mp_listOfImageProcessingModules |
std::map< string, maker_scanner > | mp_listOfScannerTypes |
std::map< string, maker_dynamic_model > | mp_listOfDynamicModels |
std::map< string, maker_deformation > | mp_listOfDeformations |
Private Member Functions | |
sAddonManager () | |
The constructor of sAddonManager. More... | |
Static Private Attributes | |
static sAddonManager * | mp_Instance = NULL |
This class is designed to manage the automatic declaration of 'addon' classes.
An 'addon' class is any class deriving from an abstract class used for the implementation of specific modules.
As an example, the class vProjector is an abstract class that cannot be used on its own, but all its children
are implementing actual projectors that can be used.
This addon manager allows to automatically declare the existency of an 'addon' class into the CASToR project.
Based on specific macros to be added in the 'addon' class, and what is defined in this addon manager,
there is nothing more to do to be able to use the 'addon' inside CASToR.
This class is a singleton. For all things to work properly, additional macros are defined inside
the header file of abstract classes.
The philosophy of this 'addon' mechanism is taken from the GATE software.
Definition at line 56 of file sAddonManager.hh.
typedef vDeformation*(* sAddonManager::maker_deformation)() |
Definition at line 189 of file sAddonManager.hh.
typedef vDynamicModel*(* sAddonManager::maker_dynamic_model)() |
Definition at line 174 of file sAddonManager.hh.
typedef vImageConvolver*(* sAddonManager::maker_image_convolver)() |
Definition at line 129 of file sAddonManager.hh.
typedef vImageProcessingModule*(* sAddonManager::maker_image_processing_module)() |
Definition at line 144 of file sAddonManager.hh.
typedef vOptimizer*(* sAddonManager::maker_optimizer)() |
Definition at line 99 of file sAddonManager.hh.
typedef vPenalty*(* sAddonManager::maker_penalty)() |
Definition at line 114 of file sAddonManager.hh.
typedef vProjector*(* sAddonManager::maker_projector)() |
Definition at line 84 of file sAddonManager.hh.
typedef vScanner*(* sAddonManager::maker_scanner)() |
Definition at line 159 of file sAddonManager.hh.
|
inline |
The destructor of sAddonManager.
This is the default and unique destructor. It simply replace the instance pointer by NULL.
Definition at line 76 of file sAddonManager.hh.
|
private |
The constructor of sAddonManager.
This is the default and unique constructor. It does nothing.
Definition at line 40 of file sAddonManager.cc.
|
inlinestatic |
Definition at line 66 of file sAddonManager.hh.
void sAddonManager::ShowHelpDeformation | ( | ) |
Show help about all implemented deformations.
Loop over all entries of mp_listOfDeformations and call the associated ShowHelp() function of vDeformation.
Definition at line 306 of file sAddonManager.cc.
void sAddonManager::ShowHelpDynamicModel | ( | ) |
Show help about all implemented dynamic models.
Loop over all entries of mp_listOfDynamicModels and call the associated ShowHelp() function of vDynamicModel.
Definition at line 269 of file sAddonManager.cc.
void sAddonManager::ShowHelpImageConvolver | ( | ) |
Show help about all implemented image convolvers.
Loop over all entries of mp_listOfImageConvolvers and call the associated ShowHelp() function of vImageConvolver.
Definition at line 158 of file sAddonManager.cc.
void sAddonManager::ShowHelpImageProcessingModule | ( | ) |
Show help about all implemented image processing modules.
Loop over all entries of mp_listOfImageProcessingModules and call the associated ShowHelp() function of vImageProcessingModule.
Definition at line 195 of file sAddonManager.cc.
void sAddonManager::ShowHelpOptimizer | ( | ) |
Show help about all implemented optimizers.
Loop over all entries of mp_listOfOptimizers and call the associated ShowHelp() function of vOptimizer.
Definition at line 84 of file sAddonManager.cc.
void sAddonManager::ShowHelpPenalty | ( | ) |
Show help about all implemented penalties.
Loop over all entries of mp_listOfPenalties and call the associated ShowHelp() function of vPenalty.
Definition at line 232 of file sAddonManager.cc.
void sAddonManager::ShowHelpProjector | ( | ) |
Show help about all implemented projectors.
Loop over all entries of mp_listOfProjectors and call the associated ShowHelp() function of vProjector.
Definition at line 47 of file sAddonManager.cc.
void sAddonManager::ShowHelpScanner | ( | ) |
Show help about all implemented scanners.
Loop over all entries of mp_listOfScannerTypes and call the associated ShowHelp() function of vScanner.
Definition at line 121 of file sAddonManager.cc.
|
staticprivate |
Pointer to this singleton object
Definition at line 218 of file sAddonManager.hh.
std::map<string,maker_deformation> sAddonManager::mp_listOfDeformations |
Definition at line 195 of file sAddonManager.hh.
std::map<string,maker_dynamic_model> sAddonManager::mp_listOfDynamicModels |
Definition at line 180 of file sAddonManager.hh.
std::map<string,maker_image_convolver> sAddonManager::mp_listOfImageConvolvers |
Definition at line 135 of file sAddonManager.hh.
std::map<string,maker_image_processing_module> sAddonManager::mp_listOfImageProcessingModules |
Definition at line 150 of file sAddonManager.hh.
std::map<string,maker_optimizer> sAddonManager::mp_listOfOptimizers |
Definition at line 105 of file sAddonManager.hh.
std::map<string,maker_penalty> sAddonManager::mp_listOfPenalties |
Definition at line 120 of file sAddonManager.hh.
std::map<string,maker_projector> sAddonManager::mp_listOfProjectors |
The map of all vProjector children's constructors
Definition at line 90 of file sAddonManager.hh.
std::map<string,maker_scanner> sAddonManager::mp_listOfScannerTypes |
Definition at line 165 of file sAddonManager.hh.