32 #define VPROJECTOR_HH 1
160 int Project(
int a_direction,
oProjectionLine* ap_ProjectionLine, uint32_t* ap_index1, uint32_t* ap_index2,
int a_nbIndices);
374 #define FUNCTION_PROJECTOR(CLASS) \
375 static vProjector *make_projector() { return new CLASS(); };
378 #define CLASS_PROJECTOR(NAME,CLASS) \
379 class NAME##ProjectorCreator \
382 NAME##ProjectorCreator() \
383 { sAddonManager::GetInstance()->mp_listOfProjectors[#NAME] = CLASS::make_projector; } \
385 static NAME##ProjectorCreator ProjectorCreator##NAME;
This header file is mainly used to declare some macro definitions and all includes needed from the st...
bool m_compatibleWithSPECTAttenuationCorrection
Declaration of class oImageDimensionsAndQuantification.
static void ShowCommonHelp()
This function is used to print out some help about the use of options common to all projectors...
void SetMask(bool *ap_mask)
Set a mask for voxels.
void SetScanner(vScanner *ap_Scanner)
Set the pointer to the scanner in use.
oImageDimensionsAndQuantification * mp_ImageDimensionsAndQuantification
This class is designed to generically described any on-the-fly projector.
vProjector()
The constructor of vProjector.
int Initialize()
A public function used to initialize the projector.
virtual int ProjectWithoutTOF(int a_direction, oProjectionLine *ap_ProjectionLine)=0
A function to project without TOF.
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.
virtual int ProjectWithTOFBin(int a_direction, oProjectionLine *ap_ProjectionLine)=0
A function to project with TOF binned information.
bool GetCompatibilityWithSPECTAttenuationCorrection()
virtual int CheckSpecificParameters()=0
A private function used to check the parameters settings specific to the child projector.
void SetApplyTOF(int a_applyTOF)
Set the TOF mode.
int ReadCommonOptionsList(const string &a_optionsList)
This function is used to read options common to all projectors given as a string. ...
void SetVerbose(int a_verbose)
Set the verbose level.
Declaration of class oProjectionLine.
virtual void ShowHelpSpecific()=0
A function used to show help about the child module.
virtual ~vProjector()
The destructor of vProjector.
void SetSensitivityMode(bool a_sensitivityMode)
Set the sensitivity mode on or off.
Declaration of class vScanner.
int CheckParameters()
A public function used to check the parameters settings.
virtual int ReadOptionsList(const string &a_optionsList)=0
A function used to read options from a list of options.
virtual int ReadConfigurationFile(const string &a_configurationFile)=0
A function used to read options from a configuration file.
Declaration of class vEvent.
bool GetCompatibilityWithCompression()
This class is designed to manage and store system matrix elements associated to a vEvent...
virtual int ProjectWithTOFPos(int a_direction, oProjectionLine *ap_ProjectionLine)=0
A function to project with TOF continuous information.
virtual int InitializeSpecific()=0
A private function used to initialize everything specific to the child projector. ...
This class is designed to manage all dimensions and quantification related stuff. ...
void SetApplyPOI(bool a_applyPOI)
Set the POI mode.
virtual INTNB EstimateMaxNumberOfVoxelsPerLine()
This function is used to compute and provide an estimate of the maximum number of voxels that could c...
bool m_compatibleWithCompression
void ShowHelp()
A function used to show help about the projector.
int SetImageDimensionsAndQuantification(oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
Set the pointer to the image dimensions in use and copy locally some often use variables.
Generic class for scanner objects.