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

This class is designed to manage the use of dynamic model in the reconstruction. More...

#include <oDynamicModelManager.hh>

Collaboration diagram for oDynamicModelManager:
Collaboration graph

Public Member Functions

 oDynamicModelManager ()
 Constructor of oDynamicModelManager. Simply set all data members to default values. More...
 
 ~oDynamicModelManager ()
 Destructor of oDynamicModelManager. Free memory from all allocated tabs. More...
 
int CheckParameters ()
 This function is used to check parameters after the latter have been all set using Set functions. More...
 
int Initialize ()
 Set the dynamic model flag and instanciate/initialize model objects through the ParseOptionsAndInitializeDeformations() private function. More...
 
int ApplyDynamicModel (oImageSpace *ap_ImageS, int a_iteration, int a_subset)
 
int SaveParametricImages (int a_iteration, int a_subset=-1)
 Call SaveParametricImages() function of the dynamic model object is 'm_UseModel' is on, in order to save any parameter image. More...
 
void SetVerbose (int a_verboseLevel)
 Set the verbose level. More...
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 Set the image dimensions in use. More...
 
void SetOptions (const string &a_options)
 Set the respiratory motion options contained in the provided string. More...
 
bool UseModel ()
 Indicate if the use of a dynamic model is enabled. More...
 
int SetDiagonalTimeBasisFunctions ()
 Set diagonal Time Basis Functions for regular frame-by-frame reconstruction. More...
 
int SetDiagonalRespBasisFunctions ()
 Set diagonal Respiratory Basis Functions for regular gated reconstruction. More...
 
int SetDiagonalCardBasisFunctions ()
 Set diagonal Cardiac Basis Functions for regular gated reconstruction. More...
 

Private Member Functions

int ParseOptionsAndInitializeModel ()
 Parse dynamic model options contained in the previously provided strings. This function is called inside the Initialize() function. More...
 

Private Attributes

oImageDimensionsAndQuantificationmp_ID
 
string m_options
 
vDynamicModelmp_DynamicModel
 
int m_nbTimeBasisFunctions
 
int m_nbRespBasisFunctions
 
int m_nbCardBasisFunctions
 
FLTNB ** m2p_timeBasisFunctions
 
FLTNB ** m2p_respBasisFunctions
 
FLTNB ** m2p_cardBasisFunctions
 
bool m_UseModel
 
int m_verbose
 
bool m_checked
 
bool m_initialized
 

Detailed Description

This class is designed to manage the use of dynamic model in the reconstruction.

As each manager class, it is created in the main program, all parameters are then set, checked, and the manager is initialized.
The manager is then used by the algorithm itself, where the function ApplyDynamicModel() is called at the end of the subset loop

Definition at line 45 of file oDynamicModelManager.hh.

Constructor & Destructor Documentation

◆ oDynamicModelManager()

oDynamicModelManager::oDynamicModelManager ( )

Constructor of oDynamicModelManager. Simply set all data members to default values.

Definition at line 41 of file oDynamicModelManager.cc.

◆ ~oDynamicModelManager()

oDynamicModelManager::~oDynamicModelManager ( )

Destructor of oDynamicModelManager. Free memory from all allocated tabs.

Definition at line 75 of file oDynamicModelManager.cc.

Member Function Documentation

◆ ApplyDynamicModel()

int oDynamicModelManager::ApplyDynamicModel ( oImageSpace ap_ImageS,
int  a_iteration,
int  a_subset 
)

Definition at line 332 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CheckParameters()

int oDynamicModelManager::CheckParameters ( )

This function is used to check parameters after the latter have been all set using Set functions.

Returns
0 if success, positive value otherwise.

Definition at line 91 of file oDynamicModelManager.cc.

Here is the caller graph for this function:

◆ Initialize()

int oDynamicModelManager::Initialize ( )

Set the dynamic model flag and instanciate/initialize model objects through the ParseOptionsAndInitializeDeformations() private function.

Returns
0 if success, positive value otherwise.

Definition at line 129 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseOptionsAndInitializeModel()

int oDynamicModelManager::ParseOptionsAndInitializeModel ( )
private

Parse dynamic model options contained in the previously provided strings. This function is called inside the Initialize() function.

Manage the options reading and initialize specific vDynamicModel
Options are a string containing first the name of the model, then either a ':' and a configuration file specific to the model

  • or - as many ',' as needed parameters for this model.
    Specific pure virtual functions of the vDynamicModel are used to read parameters and initialize them.
    Returns
    0 if success, positive value otherwise

Definition at line 186 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SaveParametricImages()

int oDynamicModelManager::SaveParametricImages ( int  a_iteration,
int  a_subset = -1 
)

Call SaveParametricImages() function of the dynamic model object is 'm_UseModel' is on, in order to save any parameter image.

Parameters
a_iteration: current iteration index
a_subset: current number of subsets (or -1 by default)
Returns
0 if success, positive value otherwise

Definition at line 377 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetDiagonalCardBasisFunctions()

int oDynamicModelManager::SetDiagonalCardBasisFunctions ( )

Set diagonal Cardiac Basis Functions for regular gated reconstruction.

Returns
true if enabled, false otherwise

Definition at line 451 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetDiagonalRespBasisFunctions()

int oDynamicModelManager::SetDiagonalRespBasisFunctions ( )

Set diagonal Respiratory Basis Functions for regular gated reconstruction.

Returns
true if enabled, false otherwise

Definition at line 426 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetDiagonalTimeBasisFunctions()

int oDynamicModelManager::SetDiagonalTimeBasisFunctions ( )

Set diagonal Time Basis Functions for regular frame-by-frame reconstruction.

Returns
true if enabled, false otherwise

Definition at line 404 of file oDynamicModelManager.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetImageDimensionsAndQuantification()

oDynamicModelManager::SetImageDimensionsAndQuantification ( oImageDimensionsAndQuantification ap_ImageDimensionsAndQuantification)
inline

Set the image dimensions in use.

Parameters
ap_ImageDimensionsAndQuantification

Definition at line 120 of file oDynamicModelManager.hh.

Here is the caller graph for this function:

◆ SetOptions()

oDynamicModelManager::SetOptions ( const string &  a_options)
inline

Set the respiratory motion options contained in the provided string.

Parameters
a_options

Definition at line 127 of file oDynamicModelManager.hh.

Here is the caller graph for this function:

◆ SetVerbose()

oDynamicModelManager::SetVerbose ( int  a_verboseLevel)
inline

Set the verbose level.

Parameters
a_verboseLevel

Definition at line 113 of file oDynamicModelManager.hh.

Here is the caller graph for this function:

◆ UseModel()

oDynamicModelManager::UseModel ( )
inline

Indicate if the use of a dynamic model is enabled.

Returns
true if enabled, false otherwise

Definition at line 134 of file oDynamicModelManager.hh.

Here is the call graph for this function:

Member Data Documentation

◆ m2p_cardBasisFunctions

FLTNB** oDynamicModelManager::m2p_cardBasisFunctions
private

The table of cardiac basis functions coefficients

Definition at line 185 of file oDynamicModelManager.hh.

◆ m2p_respBasisFunctions

FLTNB** oDynamicModelManager::m2p_respBasisFunctions
private

The table of respiratory basis functions coefficients

Definition at line 184 of file oDynamicModelManager.hh.

◆ m2p_timeBasisFunctions

FLTNB** oDynamicModelManager::m2p_timeBasisFunctions
private

The table of time basis functions coefficients

Definition at line 183 of file oDynamicModelManager.hh.

◆ m_checked

bool oDynamicModelManager::m_checked
private

Boolean indicating whether the parameters were checked or not

Definition at line 190 of file oDynamicModelManager.hh.

◆ m_initialized

bool oDynamicModelManager::m_initialized
private

Boolean indicating whether the manager was initialized or not

Definition at line 191 of file oDynamicModelManager.hh.

◆ m_nbCardBasisFunctions

int oDynamicModelManager::m_nbCardBasisFunctions
private

Number of Cardiac Basis Functions

Definition at line 182 of file oDynamicModelManager.hh.

◆ m_nbRespBasisFunctions

int oDynamicModelManager::m_nbRespBasisFunctions
private

Number of Respiratory Basis Functions

Definition at line 181 of file oDynamicModelManager.hh.

◆ m_nbTimeBasisFunctions

int oDynamicModelManager::m_nbTimeBasisFunctions
private

Number of Time Basis Functions

Definition at line 180 of file oDynamicModelManager.hh.

◆ m_options

string oDynamicModelManager::m_options
private

The string containing options for the dynamic model

Definition at line 177 of file oDynamicModelManager.hh.

◆ m_UseModel

bool oDynamicModelManager::m_UseModel
private

Flag indicating that use of a dynamic model is enabled or not

Definition at line 188 of file oDynamicModelManager.hh.

◆ m_verbose

int oDynamicModelManager::m_verbose
private

The verbose level

Definition at line 189 of file oDynamicModelManager.hh.

◆ mp_DynamicModel

vDynamicModel* oDynamicModelManager::mp_DynamicModel
private

Dynamic model object

Definition at line 178 of file oDynamicModelManager.hh.

◆ mp_ID

oImageDimensionsAndQuantification* oDynamicModelManager::mp_ID
private

Pointer to the oImageDimensionsAndQuantification object in use

Definition at line 176 of file oDynamicModelManager.hh.


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