9 #define VPROJECTOR_HH 1
138 int Project(
int a_direction,
oProjectionLine* ap_ProjectionLine, uint32_t* ap_index1, uint32_t* ap_index2,
int a_nbIndices);
331 #define FUNCTION_PROJECTOR(CLASS) \
332 static vProjector *make_projector() { return new CLASS(); };
335 #define CLASS_PROJECTOR(NAME,CLASS) \
336 class NAME##ProjectorCreator \
339 NAME##ProjectorCreator() \
340 { sAddonManager::GetInstance()->mp_listOfProjectors[#NAME] = CLASS::make_projector; } \
342 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 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.
int SetTOFAndPOIOptions(int a_dataType, bool a_ignoreTOF, bool a_ignorePOI)
Set the TOF use as well as POI and checks compatibility with current data type.
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.
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.
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.
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. ...
virtual INTNB EstimateMaxNumberOfVoxelsPerLine()
This function is used to compute and provide an estimate of the maximum number of voxels that could c...
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.