CASToR  1.1
Tomographic Reconstruction (PET/SPECT)
 All Classes Files Functions Variables Typedefs Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
oAnalyticProjection Class Reference

This class manages the analytic projection of an image and the computation of the associated datafile.
. More...

#include <oAnalyticProjection.hh>

Collaboration diagram for oAnalyticProjection:
Collaboration graph

Public Member Functions

 oAnalyticProjection ()
 oAnalyticProjection constructor. Initialize the member variables to their default values. More...
 
 ~oAnalyticProjection ()
 oAnalyticProjection destructor. More...
 
int Launch ()
 Just call either the LaunchCPU or the LaunchGPU function as asked for. More...
 
int LaunchCPU ()
 
void InitOptimizer (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 
int InitNoiseModel (string aNoiseModel)
 
void SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
 Set the Image Dimensions and Quantification Object. More...
 
void SetImageSpace (oImageSpace *ap_ImageSpace)
 Set the Image Space Object. More...
 
void SetProjectorManager (oProjectorManager *ap_ProjectorManager)
 Set the Projector Manager Object. More...
 
void SetImageConvolverManager (oImageConvolverManager *ap_ImageConvolverManager)
 Set the Image Convolver Manager Object. More...
 
void SetDataFile (vDataFile **a2p_DataFile)
 Set the list of DataFile. More...
 
void SetGPUflag (bool a_flagGPU)
 Set the GPU flag. More...
 
void SetVerbose (int a_verboseLevel)
 Set Verbosity. More...
 
void SetNbBeds (int a_nbBeds)
 Set number of beds (bed positions) More...
 
void SetPathInitImage (string a_pathToInitialImage)
 Set path to an initial image. More...
 
void SetPathAtnImage (string a_pathToAtnImg)
 Set path to an attenuation image. More...
 
void SetScanner (vScanner *ap_Scanner)
 Set the scanner in use. More...
 

Private Attributes

int m_verbose
 
bool m_flagGPU
 
oImageDimensionsAndQuantificationmp_ID
 
vDataFile ** m2p_DataFile
 
oProjectorManagermp_ProjectorManager
 
oImageConvolverManagermp_ImageConvolverManager
 
oImageSpacemp_ImageSpace
 
oComputeProjectionmp_ComputeProjection
 
int m_nbBeds
 
string m_pathToInitialImg
 
string m_pathToAtnImg
 
vScannermp_Scanner
 

Detailed Description

This class manages the analytic projection of an image and the computation of the associated datafile.
.

It uses the following components :

Definition at line 28 of file oAnalyticProjection.hh.

Constructor & Destructor Documentation

oAnalyticProjection::oAnalyticProjection ( )

oAnalyticProjection constructor. Initialize the member variables to their default values.

Definition at line 29 of file oAnalyticProjection.cc.

oAnalyticProjection::~oAnalyticProjection ( )

oAnalyticProjection destructor.

Definition at line 50 of file oAnalyticProjection.cc.

Member Function Documentation

int oAnalyticProjection::InitNoiseModel ( string  aNoiseModel)
inline

Definition at line 63 of file oAnalyticProjection.hh.

Here is the call graph for this function:

Here is the caller graph for this function:

void oAnalyticProjection::InitOptimizer ( oImageDimensionsAndQuantification ap_ImageDimensionsAndQuantification)
inline

Definition at line 60 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

int oAnalyticProjection::Launch ( )

Just call either the LaunchCPU or the LaunchGPU function as asked for.

Returns
0 if success, positive value otherwise

Definition at line 60 of file oAnalyticProjection.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

int oAnalyticProjection::LaunchCPU ( )

Definition at line 108 of file oAnalyticProjection.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

oAnalyticProjection::SetDataFile ( vDataFile **  a2p_DataFile)
inline

Set the list of DataFile.

Parameters
a2p_DataFile

Definition at line 99 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetGPUflag ( bool  a_flagGPU)
inline

Set the GPU flag.

Parameters
a_flagGPU

Definition at line 106 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetImageConvolverManager ( oImageConvolverManager ap_ImageConvolverManager)
inline

Set the Image Convolver Manager Object.

Parameters
ap_ImageConvolverManager

Definition at line 92 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetImageDimensionsAndQuantification ( oImageDimensionsAndQuantification ap_ImageDimensionsAndQuantification)
inline

Set the Image Dimensions and Quantification Object.

Parameters
ap_ImageDimensionsAndQuantification

Definition at line 71 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetImageSpace ( oImageSpace ap_ImageSpace)
inline

Set the Image Space Object.

Parameters
ap_ImageSpace

Definition at line 78 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetNbBeds ( int  a_nbBeds)
inline

Set number of beds (bed positions)

Parameters
a_nbBeds

Definition at line 120 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetPathAtnImage ( string  a_pathToAtnImg)
inline

Set path to an attenuation image.

Parameters
a_pathToAtnImage

Definition at line 134 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetPathInitImage ( string  a_pathToInitialImage)
inline

Set path to an initial image.

Parameters
a_pathToInitialImage

Definition at line 127 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetProjectorManager ( oProjectorManager ap_ProjectorManager)
inline

Set the Projector Manager Object.

Parameters
ap_ProjectorManager

Definition at line 85 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetScanner ( vScanner ap_Scanner)
inline

Set the scanner in use.

Parameters
ap_Scanner

Definition at line 141 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

oAnalyticProjection::SetVerbose ( int  a_verboseLevel)
inline

Set Verbosity.

Parameters
a_verboseLevel

Definition at line 113 of file oAnalyticProjection.hh.

Here is the caller graph for this function:

Member Data Documentation

vDataFile** oAnalyticProjection::m2p_DataFile
private

Pointer to the array of vDataFile object

Definition at line 153 of file oAnalyticProjection.hh.

bool oAnalyticProjection::m_flagGPU
private

Do we use GPU or not (default=false)

Definition at line 151 of file oAnalyticProjection.hh.

int oAnalyticProjection::m_nbBeds
private

number of bed FOVs (1 datafile by bed)

Definition at line 158 of file oAnalyticProjection.hh.

string oAnalyticProjection::m_pathToAtnImg
private

String containing the path to an attenuation image

Definition at line 160 of file oAnalyticProjection.hh.

string oAnalyticProjection::m_pathToInitialImg
private

String containing the path to an initialization image

Definition at line 159 of file oAnalyticProjection.hh.

int oAnalyticProjection::m_verbose
private

Verbosity

Definition at line 150 of file oAnalyticProjection.hh.

oComputeProjection* oAnalyticProjection::mp_ComputeProjection
private

Pointer to the object which manages the data update step for analytic projection

Definition at line 157 of file oAnalyticProjection.hh.

oImageDimensionsAndQuantification* oAnalyticProjection::mp_ID
private

Pointer to the oImageDimensionsAndQuantification object

Definition at line 152 of file oAnalyticProjection.hh.

oImageConvolverManager* oAnalyticProjection::mp_ImageConvolverManager
private

Pointer to the Image Convolver object

Definition at line 155 of file oAnalyticProjection.hh.

oImageSpace* oAnalyticProjection::mp_ImageSpace
private

Pointer to the Image Space object

Definition at line 156 of file oAnalyticProjection.hh.

oProjectorManager* oAnalyticProjection::mp_ProjectorManager
private

Pointer to the Projector Manager object

Definition at line 154 of file oAnalyticProjection.hh.

vScanner* oAnalyticProjection::mp_Scanner
private

Pointer to the Scanner object

Definition at line 161 of file oAnalyticProjection.hh.


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