CASToR  3.2
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)
 
void SetVerbose (int a_verboseLevel)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
void SetOptions (const string &a_options)
 
bool GetUseModel ()
 Indicate if the use of a dynamic model is enabled. More...
 
void SetUseModelInReconstruction (bool a_useModelInReconstruction)
 
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...
 
 oDynamicModelManager ()
 
 ~oDynamicModelManager ()
 
int CheckParameters ()
 
int Initialize ()
 
int ApplyDynamicModel (oImageSpace *ap_ImageS, int a_iteration, int a_subset)
 
int SaveParametricImages (int a_iteration, int a_subset=-1)
 
void SetVerbose (int a_verboseLevel)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
void SetOptions (const string &a_options)
 
bool GetUseModel ()
 
void SetUseModelInReconstruction (bool a_useModelInReconstruction)
 
int SetDiagonalTimeBasisFunctions ()
 
int SetDiagonalRespBasisFunctions ()
 
int SetDiagonalCardBasisFunctions ()
 

Private Member Functions

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

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
 
bool m_useModelInReconstruction
 
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 23 of file code/include/dynamic/oDynamicModelManager.hh.

Constructor & Destructor Documentation

◆ oDynamicModelManager() [1/2]

oDynamicModelManager::oDynamicModelManager ( )

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

Definition at line 19 of file code/src/dynamic/oDynamicModelManager.cc.

◆ ~oDynamicModelManager() [1/2]

oDynamicModelManager::~oDynamicModelManager ( )

Destructor of oDynamicModelManager. Free memory from all allocated tabs.

Definition at line 54 of file code/src/dynamic/oDynamicModelManager.cc.

◆ oDynamicModelManager() [2/2]

oDynamicModelManager::oDynamicModelManager ( )

◆ ~oDynamicModelManager() [2/2]

oDynamicModelManager::~oDynamicModelManager ( )

Member Function Documentation

◆ ApplyDynamicModel() [1/2]

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

Definition at line 313 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ ApplyDynamicModel() [2/2]

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

◆ CheckParameters() [1/2]

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 70 of file code/src/dynamic/oDynamicModelManager.cc.

Here is the caller graph for this function:

◆ CheckParameters() [2/2]

int oDynamicModelManager::CheckParameters ( )

◆ GetUseModel() [1/2]

oDynamicModelManager::GetUseModel ( )
inline

Indicate if the use of a dynamic model is enabled.

Returns
true if enabled, false otherwise

Definition at line 112 of file code/include/dynamic/oDynamicModelManager.hh.

◆ GetUseModel() [2/2]

bool oDynamicModelManager::GetUseModel ( )
inline

Definition at line 112 of file include/dynamic/oDynamicModelManager.hh.

◆ Initialize() [1/2]

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 108 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ Initialize() [2/2]

int oDynamicModelManager::Initialize ( )

◆ ParseOptionsAndInitializeModel() [1/2]

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 165 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ ParseOptionsAndInitializeModel() [2/2]

int oDynamicModelManager::ParseOptionsAndInitializeModel ( )
private

◆ SaveParametricImages() [1/2]

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

Definition at line 358 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ SaveParametricImages() [2/2]

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

◆ SetDiagonalCardBasisFunctions() [1/2]

int oDynamicModelManager::SetDiagonalCardBasisFunctions ( )

Set diagonal Cardiac Basis Functions for regular gated reconstruction.

Returns
true if enabled, false otherwise

Definition at line 432 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ SetDiagonalCardBasisFunctions() [2/2]

int oDynamicModelManager::SetDiagonalCardBasisFunctions ( )

◆ SetDiagonalRespBasisFunctions() [1/2]

int oDynamicModelManager::SetDiagonalRespBasisFunctions ( )

Set diagonal Respiratory Basis Functions for regular gated reconstruction.

Returns
true if enabled, false otherwise

Definition at line 407 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ SetDiagonalRespBasisFunctions() [2/2]

int oDynamicModelManager::SetDiagonalRespBasisFunctions ( )

◆ SetDiagonalTimeBasisFunctions() [1/2]

int oDynamicModelManager::SetDiagonalTimeBasisFunctions ( )

◆ SetDiagonalTimeBasisFunctions() [2/2]

int oDynamicModelManager::SetDiagonalTimeBasisFunctions ( )

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

Returns
true if enabled, false otherwise

Definition at line 385 of file code/src/dynamic/oDynamicModelManager.cc.

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

◆ SetImageDimensionsAndQuantification() [1/2]

void oDynamicModelManager::SetImageDimensionsAndQuantification ( oImageDimensionsAndQuantification ap_ImageDimensionsAndQuantification)
inline

Definition at line 98 of file include/dynamic/oDynamicModelManager.hh.

◆ SetImageDimensionsAndQuantification() [2/2]

void oDynamicModelManager::SetImageDimensionsAndQuantification ( oImageDimensionsAndQuantification ap_ImageDimensionsAndQuantification)
inline

Definition at line 98 of file code/include/dynamic/oDynamicModelManager.hh.

Here is the caller graph for this function:

◆ SetOptions() [1/2]

void oDynamicModelManager::SetOptions ( const string &  a_options)
inline

Definition at line 105 of file include/dynamic/oDynamicModelManager.hh.

◆ SetOptions() [2/2]

void oDynamicModelManager::SetOptions ( const string &  a_options)
inline

Definition at line 105 of file code/include/dynamic/oDynamicModelManager.hh.

Here is the caller graph for this function:

◆ SetUseModelInReconstruction() [1/2]

void oDynamicModelManager::SetUseModelInReconstruction ( bool  a_useModelInReconstruction)
inline

Definition at line 120 of file include/dynamic/oDynamicModelManager.hh.

Here is the call graph for this function:

◆ SetUseModelInReconstruction() [2/2]

void oDynamicModelManager::SetUseModelInReconstruction ( bool  a_useModelInReconstruction)
inline

Definition at line 120 of file code/include/dynamic/oDynamicModelManager.hh.

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

◆ SetVerbose() [1/2]

void oDynamicModelManager::SetVerbose ( int  a_verboseLevel)
inline

Definition at line 91 of file code/include/dynamic/oDynamicModelManager.hh.

Here is the caller graph for this function:

◆ SetVerbose() [2/2]

void oDynamicModelManager::SetVerbose ( int  a_verboseLevel)
inline

Definition at line 91 of file include/dynamic/oDynamicModelManager.hh.

Member Data Documentation

◆ m2p_cardBasisFunctions

FLTNB ** oDynamicModelManager::m2p_cardBasisFunctions
private

The table of cardiac basis functions coefficients

Definition at line 171 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m2p_respBasisFunctions

FLTNB ** oDynamicModelManager::m2p_respBasisFunctions
private

The table of respiratory basis functions coefficients

Definition at line 170 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m2p_timeBasisFunctions

FLTNB ** oDynamicModelManager::m2p_timeBasisFunctions
private

The table of time basis functions coefficients

Definition at line 169 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_checked

bool oDynamicModelManager::m_checked
private

Boolean indicating whether the parameters were checked or not

Definition at line 177 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_initialized

bool oDynamicModelManager::m_initialized
private

Boolean indicating whether the manager was initialized or not

Definition at line 178 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_nbCardBasisFunctions

int oDynamicModelManager::m_nbCardBasisFunctions
private

Number of Cardiac Basis Functions

Definition at line 168 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_nbRespBasisFunctions

int oDynamicModelManager::m_nbRespBasisFunctions
private

Number of Respiratory Basis Functions

Definition at line 167 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_nbTimeBasisFunctions

int oDynamicModelManager::m_nbTimeBasisFunctions
private

Number of Time Basis Functions

Definition at line 166 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_options

string oDynamicModelManager::m_options
private

The string containing options for the dynamic model

Definition at line 163 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_useModel

bool oDynamicModelManager::m_useModel
private

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

Definition at line 174 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_useModelInReconstruction

bool oDynamicModelManager::m_useModelInReconstruction
private

Flag indicating if the model is used with castor-recon or with imageDynamicTools

Definition at line 175 of file code/include/dynamic/oDynamicModelManager.hh.

◆ m_verbose

int oDynamicModelManager::m_verbose
private

The verbose level

Definition at line 176 of file code/include/dynamic/oDynamicModelManager.hh.

◆ mp_DynamicModel

vDynamicModel * oDynamicModelManager::mp_DynamicModel
private

Dynamic model object

Definition at line 164 of file code/include/dynamic/oDynamicModelManager.hh.

◆ mp_ID

oImageDimensionsAndQuantification * oDynamicModelManager::mp_ID
private

Pointer to the oImageDimensionsAndQuantification object in use

Definition at line 162 of file code/include/dynamic/oDynamicModelManager.hh.


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