CASToR
3.0
Tomographic Reconstruction (PET/SPECT/CT)
|
This class is a child of the vProjector class implementing the multi incremental Siddon ray tracer. More...
#include <iProjectorIncrementalSiddonMulti.hh>
Public Member Functions | |
iProjectorIncrementalSiddonMulti () | |
The constructor of iProjectorIncrementalSiddonMulti. More... | |
~iProjectorIncrementalSiddonMulti () | |
The destructor of iProjectorIncrementalSiddonMulti. More... | |
int | ReadConfigurationFile (const string &a_configurationFile) |
A function used to read options from a configuration file. More... | |
int | ReadOptionsList (const string &a_optionsList) |
A function used to read options from a list of options. More... | |
INTNB | EstimateMaxNumberOfVoxelsPerLine () |
This function is used to compute and provide an estimate of the maximum number of voxels that could contribute to a projected line. More... | |
Public Member Functions inherited from vProjector | |
vProjector () | |
The constructor of vProjector. More... | |
virtual | ~vProjector () |
The destructor of vProjector. More... | |
void | ShowHelp () |
A function used to show help about the projector. More... | |
int | ReadCommonOptionsList (const string &a_optionsList) |
This function is used to read options common to all projectors given as a string. More... | |
int | CheckParameters () |
A public function used to check the parameters settings. More... | |
int | Initialize () |
A public function used to initialize the projector. More... | |
int | Project (int a_direction, oProjectionLine *ap_ProjectionLine, uint32_t *ap_index1, uint32_t *ap_index2, int a_nbIndices) |
A function use to computed the projection elements with respect to the provided parameters. More... | |
void | SetVerbose (int a_verbose) |
Set the verbose level. More... | |
void | SetScanner (vScanner *ap_Scanner) |
Set the pointer to the scanner in use. More... | |
void | SetSensitivityMode (bool a_sensitivityMode) |
Set the sensitivity mode on or off. More... | |
void | SetApplyTOF (int a_applyTOF) |
Set the TOF mode. More... | |
void | SetApplyPOI (bool a_applyPOI) |
Set the POI mode. More... | |
int | SetImageDimensionsAndQuantification (oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification) |
Set the pointer to the image dimensions in use and copy locally some often use variables. More... | |
bool | GetCompatibilityWithSPECTAttenuationCorrection () |
bool | GetCompatibilityWithCompression () |
void | SetMask (bool *ap_mask) |
Set a mask for voxels. More... | |
FLTNB | GetTOFResolutionInMm () |
This function is used to get the TOF resolution in mm. More... | |
void | SetTOFResolutionInMm (FLTNB a_TOFResolutionInMm) |
This function is used to set the TOF resolution in use. More... | |
FLTNB | GetTOFMeasurementRangeInMm () |
This function is used to get the TOF measurement range in mm. More... | |
void | SetTOFMeasurementRangeInMm (FLTNB a_TOFMeasurementRangeInMm) |
This function is used to set the TOF measurement range in mm. More... | |
FLTNB | GetTOFBinSizeInMm () |
This function is used to get the size in mm of a TOF bin. More... | |
void | SetTOFBinSizeInMm (FLTNB a_TOFBinSizeInMm) |
This function is used to set the size of a TOF bin in mm. More... | |
Private Member Functions | |
void | ShowHelpSpecific () |
A function used to show help about the child module. More... | |
int | CheckSpecificParameters () |
A private function used to check the parameters settings specific to the child projector. More... | |
int | InitializeSpecific () |
This function is used to initialize specific stuff to the child projector. More... | |
int | ProjectWithoutTOF (int a_direction, oProjectionLine *ap_ProjectionLine) |
A function to project without TOF. More... | |
int | ProjectTOFListmode (int a_direction, oProjectionLine *ap_ProjectionLine) |
A function to project with TOF continuous information. More... | |
int | ProjectTOFHistogram (int a_direction, oProjectionLine *ap_ProjectionLine) |
A function to project with TOF binned information. More... | |
Private Attributes | |
uint16_t | m_nbSensLines |
uint16_t | m_nbRecoLines |
This class is a child of the vProjector class implementing the multi incremental Siddon ray tracer.
This class implements a multi-ray projector, based on the incremental Siddon algorithm, and a random positionning of LOR end points inside the crystals.
Definition at line 44 of file iProjectorIncrementalSiddonMulti.hh.
iProjectorIncrementalSiddonMulti::iProjectorIncrementalSiddonMulti | ( | ) |
The constructor of iProjectorIncrementalSiddonMulti.
This is the default and unique constructor. It does not take any parameter and its role is only to affect default values to each member of the class.
Definition at line 44 of file iProjectorIncrementalSiddonMulti.cc.
iProjectorIncrementalSiddonMulti::~iProjectorIncrementalSiddonMulti | ( | ) |
The destructor of iProjectorIncrementalSiddonMulti.
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 by this class.
Definition at line 63 of file iProjectorIncrementalSiddonMulti.cc.
|
privatevirtual |
A private function used to check the parameters settings specific to the child projector.
This function is used to check that all parameters specific to the projector 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 vProjector.
Implements vProjector.
Definition at line 144 of file iProjectorIncrementalSiddonMulti.cc.
|
virtual |
This function is used to compute and provide an estimate of the maximum number of voxels that could contribute to a projected line.
This function is an overloaded implementation of the virtual mother function. It is used to compute and provide an estimate of the maximum number of voxels that could contribute to a projected line.
Reimplemented from vProjector.
Definition at line 174 of file iProjectorIncrementalSiddonMulti.cc.
|
privatevirtual |
This function is used to initialize specific stuff to the child projector.
It is called by the public Initialize() function from the mother.
Implements vProjector.
Definition at line 161 of file iProjectorIncrementalSiddonMulti.cc.
|
privatevirtual |
A function to project with TOF binned information.
int | a_direction |
oProjectionLine* | ap_ProjectionLine |
Projects the provided line following the provided direction, with TOF information describe as a histogram bin. It fills the provided oProjectionLine. It is an implementation of the pure virtual function from the mother class.
Implements vProjector.
Definition at line 980 of file iProjectorIncrementalSiddonMulti.cc.
|
privatevirtual |
A function to project with TOF continuous information.
int | a_direction |
oProjectionLine* | ap_ProjectionLine |
Projects the provided line following the provided direction, with TOF described as a continuous measurement. It fills the provided oProjectionLine. It is an implementation of the pure virtual function from the mother class.
Implements vProjector.
Definition at line 482 of file iProjectorIncrementalSiddonMulti.cc.
|
privatevirtual |
A function to project without TOF.
int | a_direction |
oProjectionLine* | ap_ProjectionLine |
Projects the provided line following the provided direction, without TOF. It fills the provided oProjectionLine. It is an implementation of the pure virtual function from the mother class.
Implements vProjector.
Definition at line 194 of file iProjectorIncrementalSiddonMulti.cc.
|
virtual |
A function used to read options from a configuration file.
const | string& a_configurationFile |
This function implements the reading of all options associated to the child projector, from a configuration file. It is the implementation of the pure virtual function inherited from the abstract class vProjector. It checks the reading status but not the options values that will be checked by the CheckSpecificParameters() function.
Implements vProjector.
Definition at line 72 of file iProjectorIncrementalSiddonMulti.cc.
|
virtual |
A function used to read options from a list of options.
const | string& a_configurationFile |
This function implements the reading of all options associated to the child projector, from a list of options. It is the implementation of the pure virtual function inherited from the abstract class vProjector. It checks the reading status but not the options values that will be checked by the CheckSpecificParameters() function.
Implements vProjector.
Definition at line 102 of file iProjectorIncrementalSiddonMulti.cc.
|
privatevirtual |
A function used to show help about the child module.
This function must describe what the projector does and how to use it. It describes in details the different parameters of the projector, 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. It is private because called by the public ShowHelp() function.
Implements vProjector.
Definition at line 124 of file iProjectorIncrementalSiddonMulti.cc.
|
private |
The number of lines that will be used for each event in reconstruction
Definition at line 166 of file iProjectorIncrementalSiddonMulti.hh.
|
private |
The number of lines that will be used for each line for list-mode sensitivity generation
Definition at line 165 of file iProjectorIncrementalSiddonMulti.hh.