CASToR  1.1
Tomographic Reconstruction (PET/SPECT)
 All Classes Files Functions Variables Typedefs Macros Groups Pages
oImageDimensionsAndQuantification.hh
Go to the documentation of this file.
1 
9 #ifndef OIMAGEDIMENSIONSANDQUANTIFICATION_HH
10 #define OIMAGEDIMENSIONSANDQUANTIFICATION_HH 1
11 
12 #include "gVariables.hh"
13 #include "sOutputManager.hh"
14 #include "gOptions.hh"
15 #include "oDynamicDataManager.hh"
16 
17 
26 {
27  // -----------------------------------------------------------------------------------------
28  // Constructor & Destructor
29  public:
44 
45 
46  // -----------------------------------------------------------------------------------------
47  // Public member functions
48  public:
56  int CheckParameters();
66  int Initialize();
73 
74  // -----------------------------------------------------------------------------------------
75  // Private member functions
76  private:
121 
122 
123  // -----------------------------------------------------------------------------------------
124  // Public dynamic data management functions
125  public:
145  int InitDynamicData( string a_pathTo4DDataSplittingFile,
146  int a_respMotionCorrectionFlag, int a_cardMotionCorrectionFlag, int a_doubleMotionCorrectionFlag, int a_invMotionCorrectionFlag,
147  int a_nbRespGates, int a_nbCardGates );
154  int CheckDynamicParameters(int64_t a_nbEvents);
164  inline int DynamicSwitch( int64_t a_currentEventIndex, uint32_t a_currentTime, int a_bed, int a_th )
165  {return mp_DynamicDataManager->DynamicSwitch(a_currentEventIndex, a_currentTime, a_bed, a_th);}
166 
167 
168  // -----------------------------------------------------------------------------------------
169  // Public Get & Set functions related to the dynamic data management
170  public:
175  inline void SetRespMotionFlagOn()
181  inline void SetCardMotionFlagOn()
187  inline void SetPMotionFlagOn()
195  inline int GetCurrentRespGate(int a_th)
203  inline int GetCurrentCardGate(int a_th)
210  inline int GetSensNbRespGates()
217  inline int GetSensNbCardGates()
225  inline int GetCurrentRespImage(int a_th)
233  inline int GetCurrentCardImage(int a_th)
241  inline int GetCurrentTimeFrame(int a_th)
249  inline int GetCurrentPMotionIndex(int a_th)
251 
259 
260 
261  // -----------------------------------------------------------------------------------------
262  // Get & Set functions
263  public:
269  inline void SetVerbose(int a_verbose)
270  {m_verbose = a_verbose;}
277  {return m_nbThreadsForProjection;}
290  inline int GetNbThreadsMax()
292  else return m_nbThreadsForImageComputation; }
301  int SetNbThreads(const string& a_nbThreads);
308  inline void SetMPIRankAndSize(int a_mpiRank, int a_mpiSize)
309  {m_mpiRank = a_mpiRank; m_mpiSize = a_mpiSize;}
315  inline int GetMPISize()
316  {return m_mpiSize;}
322  inline int GetMPIRank()
323  {return m_mpiRank;}
329  inline int GetNbBeds()
330  {return m_nbBeds;}
336  inline void SetNbBeds(int a_nbBeds)
337  {m_nbBeds = a_nbBeds;}
343  inline int GetNbTimeFrames()
344  {return m_nbTimeFrames;}
351  {return m_nbTimeBasisFunctions;}
359  inline FLTNB GetTimeBasisCoefficient(int a_timeBasisFunction, int a_timeFrame)
360  {return m2p_timeBasisFunctions[a_timeBasisFunction][a_timeFrame];}
368  inline FLTNB GetFrameDurationInSec(int a_bed, int a_frame)
369  {return ((FLTNB)(m2p_frameDurationsInMs[a_bed][a_frame]))/1000.;}
377  inline FLTNB GetFrameTimeStartInSec(int a_bed, int a_frame)
378  {return ((FLTNB)(m2p_frameTimeStartInMs[a_bed][a_frame]))/1000.;}
386  inline FLTNB GetFrameTimeStopInSec(int a_bed, int a_frame)
387  {return ((FLTNB)(m2p_frameTimeStopInMs[a_bed][a_frame]))/1000.;}
394  inline FLTNB GetFinalTimeStopInSec(int a_bed)
395  {return ((FLTNB)(m2p_frameTimeStopInMs[a_bed][m_nbTimeFrames-1]))/1000.;}
403  inline uint32_t GetFrameDurationInMs(int a_bed, int a_frame)
404  {return m2p_frameDurationsInMs[a_bed][a_frame];}
412  inline uint32_t GetFrameTimeStartInMs(int a_bed, int a_frame)
413  {return m2p_frameTimeStartInMs[a_bed][a_frame];}
421  inline uint32_t GetFrameTimeStopInMs(int a_bed, int a_frame)
422  {return m2p_frameTimeStopInMs[a_bed][a_frame];}
429  inline uint32_t GetFinalTimeStopInMs(int a_bed)
430  {return m2p_frameTimeStopInMs[a_bed][m_nbTimeFrames-1];}
436  inline void SetFrames(const string& a_frameList)
437  {m_frameList = a_frameList;}
443  inline void SetNbTimeBasisFunctions(int a_nbTimeBasisFunctions)
444  {m_nbTimeBasisFunctions = a_nbTimeBasisFunctions;}
450  inline void SetTimeBasisFunctionsFile(const string& a_timeBasisFunctionsFile)
451  {m_timeBasisFunctionsFile = a_timeBasisFunctionsFile;}
461  int SetAcquisitionTime(int a_bed, FLTNB a_timeStartInSec, FLTNB a_durationInSec);
467  inline bool GetTimeStaticFlag()
468  {return m_timeStaticFlag;}
474  inline int GetNbRespGates()
475  {return m_nbRespGates;}
482  {return m_nbRespBasisFunctions;}
490  inline FLTNB GetRespBasisCoefficient(int a_respBasisFunction, int a_respGate)
491  {return m2p_respBasisFunctions[a_respBasisFunction][a_respGate];}
497  inline void SetNbRespGates(int a_nbRespGates)
498  {m_nbRespGates = a_nbRespGates;}
504  inline void SetNbRespBasisFunctions(int a_nbRespBasisFunctions)
505  {m_nbRespBasisFunctions = a_nbRespBasisFunctions;}
511  inline void SetRespBasisFunctionsFile(const string& a_respBasisFunctionsFile)
512  {m_respBasisFunctionsFile = a_respBasisFunctionsFile;}
518  inline bool GetRespStaticFlag()
519  {return m_respStaticFlag;}
525  inline int GetNbCardGates()
526  {return m_nbCardGates;}
533  {return m_nbCardBasisFunctions;}
541  inline FLTNB GetCardBasisCoefficient(int a_cardBasisFunction, int a_cardGate)
542  {return m2p_cardBasisFunctions[a_cardBasisFunction][a_cardGate];}
548  inline void SetNbCardGates(int a_nbCardGates)
549  {m_nbCardGates = a_nbCardGates;}
555  inline void SetNbCardBasisFunctions(int a_nbCardBasisFunctions)
556  {m_nbCardBasisFunctions = a_nbCardBasisFunctions;}
562  inline void SetCardBasisFunctionsFile(const string& a_cardBasisFunctionsFile)
563  {m_cardBasisFunctionsFile = a_cardBasisFunctionsFile;}
569  inline bool GetCardStaticFlag()
570  {return m_cardStaticFlag;}
576  inline INTNB GetNbVoxX()
577  {return m_nbVoxX;}
583  inline INTNB GetNbVoxY()
584  {return m_nbVoxY;}
590  inline INTNB GetNbVoxZ()
591  {return m_nbVoxZ;}
597  inline INTNB GetNbVoxXY()
598  {return m_nbVoxXY;}
605  {return m_nbVoxXYZ;}
612  { return ((INTNB)(sqrt( ((FLTNB)m_nbVoxX) * ((FLTNB)m_nbVoxX) +
613  ((FLTNB)m_nbVoxY) * ((FLTNB)m_nbVoxY) +
614  ((FLTNB)m_nbVoxZ) * ((FLTNB)m_nbVoxZ) ))); }
620  inline void SetNbVoxX(INTNB a_nbVoxX)
621  {m_nbVoxX = a_nbVoxX;}
627  inline void SetNbVoxY(INTNB a_nbVoxY)
628  {m_nbVoxY = a_nbVoxY;}
634  inline void SetNbVoxZ(INTNB a_nbVoxZ)
635  {m_nbVoxZ = a_nbVoxZ;}
642  {return m_voxSizeX;}
649  {return m_voxSizeY;}
656  {return m_voxSizeZ;}
663  {return m_fovSizeX;}
670  {return m_fovSizeY;}
677  {return m_fovSizeZ;}
683  inline void SetVoxSizeX(FLTNB a_voxSizeX)
684  {m_voxSizeX = a_voxSizeX;}
690  inline void SetVoxSizeY(FLTNB a_voxSizeY)
691  {m_voxSizeY = a_voxSizeY;}
697  inline void SetVoxSizeZ(FLTNB a_voxSizeZ)
698  {m_voxSizeZ = a_voxSizeZ;}
704  inline void SetFOVSizeX(FLTNB a_fovSizeX)
705  {m_fovSizeX = a_fovSizeX;}
711  inline void SetFOVSizeY(FLTNB a_fovSizeY)
712  {m_fovSizeY = a_fovSizeY;}
718  inline void SetFOVSizeZ(FLTNB a_fovSizeZ)
719  {m_fovSizeZ = a_fovSizeZ;}
726  inline void SetFOVOutMasking(FLTNB a_fovOutPercent, INTNB a_nbSliceOutMask)
727  {m_fovOutPercent = a_fovOutPercent; m_nbSliceOutMask = a_nbSliceOutMask;}
734  {return m_fovOutPercent;}
741  {return m_nbSliceOutMask;}
748  int SetFlipOut(const string& a_flipOut);
754  inline bool GetFlipOutX()
755  {return m_flipOutX;}
761  inline bool GetFlipOutY()
762  {return m_flipOutY;}
768  inline bool GetFlipOutZ()
769  {return m_flipOutZ;}
775  inline FLTNB GetOffsetX()
776  {return m_offsetX;}
782  inline FLTNB GetOffsetY()
783  {return m_offsetY;}
789  inline FLTNB GetOffsetZ()
790  {return m_offsetZ;}
796  inline void SetOffsetX(FLTNB a_offsetX)
797  {m_offsetX = a_offsetX;}
803  inline void SetOffsetY(FLTNB a_offsetY)
804  {m_offsetY = a_offsetY;}
810  inline void SetOffsetZ(FLTNB a_offsetZ)
811  {m_offsetZ = a_offsetZ;}
820  FLTNB GetQuantificationFactor(int a_bed, int a_frame, int a_respGate, int a_cardGate);
829  int SetCalibrationFactor(int a_bed, FLTNB a_calibrationFactor);
838  int SetPETIsotope(int a_bed, const string& a_isotope);
847  int SetSPECTIsotope(int a_bed, const string& a_isotope);
855  int SetDynamicSpecificQuantificationFactors(const string& a_quantificationFile);
861  inline void SetIgnoredCorrections(const string& a_ignoredCorrectionsList)
862  {m_ignoredCorrectionsList = a_ignoredCorrectionsList;}
919 
920 
921  // -----------------------------------------------------------------------------------------
922  // Data members
923  private:
925  // Number of threads
928  // MPI size and rank
929  int m_mpiRank;
930  int m_mpiSize;
931  // Number of beds
932  int m_nbBeds;
933  // Framing of the acquisition
934  string m_frameList;
943  // Quantification
954  // Respiratory gating
960  // Cardiac gating
966  // Image discretization
981  // Percentage of transaxial FOV unmasked before saving
984  // Output flip
985  bool m_flipOutX;
986  bool m_flipOutY;
987  bool m_flipOutZ;
988  // Parameters checked
989  bool m_checked;
990  // Object initialized
992  // Verbose
993  int m_verbose;
994 };
995 
996 #endif
void SetCardMotionFlagOn()
Call the eponym function from the oDynamicDataManager class using the member object.
int InitializeFramingAndQuantification()
A function used to initialize the framing and quantification tables.
void SetRespBasisFunctionsFile(const string &a_respBasisFunctionsFile)
Set the file name containing the respiratory basis functions coefficients.
int GetCurrentRespGate(int a_th)
Return the index indicating the current respiratory gate for this thread.
This class is designed to be a mother virtual class for Datafile.
Definition: vDataFile.hh:67
This header file is mainly used to declare some macro definitions and all includes needed from the st...
int SetSPECTIsotope(int a_bed, const string &a_isotope)
Set the SPECT isotope for the provided bed.
int SetPETIsotope(int a_bed, const string &a_isotope)
Set the PET isotope for the provided bed.
int GetCurrentCardImage(int a_th)
call the eponym function from the oDynamicDataManager object
int GetCurrentCardGate(int a_th)
call the eponym function from the oDynamicDataManager object
int InitDynamicData(string a_pathTo4DDataSplittingFile, int a_respMotionCorrectionFlag, int a_cardMotionCorrectionFlag, int a_doubleMotionCorrectionFlag, int a_invMotionCorrectionFlag, int a_nbRespGates, int a_nbCardGates)
Call the eponym function from the oDynamicDataManager object in order to initialize its data...
oImageDimensionsAndQuantification()
The constructor of oImageDimensionsAndQuantification.
FLTNB GetFrameTimeStartInSec(int a_bed, int a_frame)
Get the frame time start for the given bed, in seconds as a FLTNB.
void SetFOVSizeZ(FLTNB a_fovSizeZ)
Set the FOV's size along the Z axis, in mm.
void SetRespMotionFlagOn()
set the respiratory motion flag to 'true'
int GetNbCardBasisFunctions()
Get the number of cardiac basis functions.
void SetIgnoredCorrections(const string &a_ignoredCorrectionsList)
Set the string specifying the corrections that will be ignored.
#define FLTNB
Definition: gVariables.hh:55
void SetCardMotionFlagOn()
set the cardiac motion flag to 'true'
bool GetIgnoreBratCorrectionFlag()
Get the boolean that says if the branching ratio correction is ignored or not.
int GetCurrentPMotionIndex(int a_th)
call the eponym function from the oDynamicDataManager object
FLTNB GetVoxSizeX()
Get the voxel's size along the X axis, in mm.
int GetCurrentCardImage(int a_th)
return the number of the current cardiac gated image, to be used in the ImageSpace matrices for the r...
This class gathers the information about the dynamic splitting of the data.
void SetFOVSizeY(FLTNB a_fovSizeY)
Set the FOV's size along the Y axis, in mm.
void SetNbVoxZ(INTNB a_nbVoxZ)
Set the number of voxels along the Z axis.
void SetNbTimeBasisFunctions(int a_nbTimeBasisFunctions)
Set the number of time basis functions.
FLTNB GetFOVOutPercent()
Get the percentage of transaxial unmasked FOV.
void ResetCurrentDynamicIndices()
Reset to 0 the multithreaded dynamic arrays gathering the indices of current frame, gates and involuntary motion.
FLTNB GetVoxSizeZ()
Get the voxel's size along the Z axis, in mm.
FLTNB GetRespBasisCoefficient(int a_respBasisFunction, int a_respGate)
Get the respiratory basis coefficients for the provided respiratory gate and basis function...
void SetNbRespGates(int a_nbRespGates)
Set the number of respiratory gates.
int DynamicSwitch(int64_t a_currentEventIndex, uint32_t a_currentTime, int a_bed, int a_th)
Call the eponym function from the oDynamicDataManager class using the member object.
int GetCurrentCardGate(int a_th)
Return the index indicating the current cardiac gate for this thread.
int SetCalibrationFactor(int a_bed, FLTNB a_calibrationFactor)
Set the calibration factor for the provided bed.
uint32_t GetFrameTimeStartInMs(int a_bed, int a_frame)
Get the frame time start for the given bed, in milliseconds as a uint32_t.
void SetOffsetY(FLTNB a_offsetY)
Set the image offset along the Y axis, in mm.
FLTNB GetFOVSizeZ()
Get the size of the field-of-view along the Z axis, in mm.
void SetFOVOutMasking(FLTNB a_fovOutPercent, INTNB a_nbSliceOutMask)
Set the output FOV masking settings: transaxial unmasked FOV percent and number of extrem slices to r...
bool GetIgnoreAttnCorrectionFlag()
Get the boolean that says if the attenuation correction is ignored or not.
int GetNbIPatMotionSubsets()
return the number of involuntary patient motion transformations
int GetNbTimeBasisFunctions()
Get the number of time basis functions.
FLTNB GetFOVSizeY()
Get the size of the field-of-view along the Y axis, in mm.
int GetCurrentRespGate(int a_th)
call the eponym function from the oDynamicDataManager object
int GetCurrentRespImage(int a_th)
return the number of the current respiratory gated image, to be used in the ImageSpace matrices for t...
void SetOffsetZ(FLTNB a_offsetZ)
Set the image offset along the Z axis, in mm.
FLTNB GetFOVSizeX()
Get the size of the field-of-view along the X axis, in mm.
void SetNbVoxX(INTNB a_nbVoxX)
Set the number of voxels along the X axis.
int SetNbThreads(const string &a_nbThreads)
Set the number of threads.
~oImageDimensionsAndQuantification()
The destructor of oImageDimensionsAndQuantification.
bool GetRespStaticFlag()
Get the respiratory static flag that says if the reconstruction has only one respiratory gate or not...
bool GetIgnoreNormCorrectionFlag()
Get the boolean that says if the normalization correction is ignored or not.
void SetPMotionFlagOn()
Call the eponym function from the oDynamicDataManager class using the member object.
bool GetIgnoreRandCorrectionFlag()
Get the boolean that says if the random correction is ignored or not.
int DynamicSwitch(int64_t a_index, uint32_t a_time, int a_bed, int a_th)
This function is called in the reconstruction event loop. It is used to check if the current event be...
void SetNbVoxY(INTNB a_nbVoxY)
Set the number of voxels along the Y axis.
void SetNbRespBasisFunctions(int a_nbRespBasisFunctions)
Set the number of respiratory basis functions.
bool GetIgnoreCaliCorrectionFlag()
Get the boolean that says if the calibration correction is ignored or not.
bool GetIgnoreFdurCorrectionFlag()
Get the boolean that says if the frame duration correction is ignored or not.
int CheckParameters()
A function used to check the parameters settings.
void SetNbCardGates(int a_nbCardGates)
Set the number of cardiac gates.
FLTNB GetVoxSizeY()
Get the voxel's size along the Y axis, in mm.
void SetRespMotionFlagOn()
Call the eponym function from the oDynamicDataManager class using the member object.
bool GetCardStaticFlag()
Get the cardiac static flag that says if the reconstruction has only one cardiac gate or not...
int GetNbIPatMotionSubsets()
call the eponym function from the oDynamicDataManager object
int Initialize()
A function used to initialize all that is needed.
bool GetIgnoreDecaCorrectionFlag()
Get the boolean that says if the decay correction is ignored or not.
void SetMPIRankAndSize(int a_mpiRank, int a_mpiSize)
Set the MPI rank of the MPI instance, and the MPI size (the number of instances)
void SetFrames(const string &a_frameList)
Set the frame list (a string that will be parsed by the InitializeFramingAndQuantification function) ...
void SetFOVSizeX(FLTNB a_fovSizeX)
Set the FOV's size along the X axis, in mm.
int GetNbBeds()
Get the number of bed positions.
Declaration of class oDynamicDataManager.
int GetNbThreadsMax()
Get the maximum between the number of threads used for projections and image operations.
int InitializeTimeBasisFunctions()
A function used to initialize the time basis functions.
int GetMPISize()
Get the MPI size (the number of MPI instances)
int GetCurrentTimeFrame(int a_th)
Return the index indicating the current time frame for this thread.
FLTNB GetFinalTimeStopInSec(int a_bed)
Get the last frame time stop for the given bed, in seconds as a FLTNB.
void ResetCurrentDynamicIndices()
Call the eponym function from the oDynamicDataManager class using the member object.
int GetSensNbRespGates()
call the eponym function from the oDynamicDataManager object
void SetVoxSizeY(FLTNB a_voxSizeY)
Set the voxel's size along the Y axis, in mm.
FLTNB GetQuantificationFactor(int a_bed, int a_frame, int a_respGate, int a_cardGate)
Get the quantification factor corresponding to the provided bed, frame, respiratory and cardiac gates...
INTNB GetNbVoxXY()
Get the number of voxels in a slice.
void SetOffsetX(FLTNB a_offsetX)
Set the image offset along the X axis, in mm.
void SetVoxSizeX(FLTNB a_voxSizeX)
Set the voxel's size along the X axis, in mm.
FLTNB GetTimeBasisCoefficient(int a_timeBasisFunction, int a_timeFrame)
Get the time basis coefficients for the provided frame and basis function.
void SetTimeBasisFunctionsFile(const string &a_timeBasisFunctionsFile)
Set the file name containing the time basis functions coefficients.
bool GetTimeStaticFlag()
Get the time static flag that says if the reconstruction has only one frame or not.
int GetSensNbCardGates()
return the number of cardiac images to be used in the ImageSpace matrices for the list-mode sensitivi...
FLTNB GetOffsetY()
Get the image offset along the Y axis, in mm.
bool GetFlipOutX()
Get the boolean saying if the output image must be flipped along the X axis.
void SetVerbose(int a_verbose)
Set the member m_verboseLevel to the provided value.
#define INTNB
Definition: gVariables.hh:64
bool GetFlipOutY()
Get the boolean saying if the output image must be flipped along the Y axis.
INTNB GetNbVoxDiagonal()
Get an estimation of the number of voxels along the image diagonal.
void SetVoxSizeZ(FLTNB a_voxSizeZ)
Set the voxel's size along the Z axis, in mm.
int CheckDynamicParameters(int64_t a_nbEvents)
Call the eponym function from the oDynamicDataManager object in order to check its parameters...
int GetNbCardGates()
Get the number of cardiac gates.
int InitializeRespBasisFunctions()
A function used to initialize the respiratory basis functions.
FLTNB GetOffsetZ()
Get the image offset along the Z axis, in mm.
Declaration of class sOutputManager.
FLTNB GetFrameTimeStopInSec(int a_bed, int a_frame)
Get the frame time stop for the given bed, in seconds as a FLTNB.
int GetNbThreadsForImageComputation()
Get the number of threads used for image operations.
int GetNbTimeFrames()
Get the number of time frames.
int GetCurrentPMotionIndex(int a_th)
return the number of the current involuntary patient motion image to be used in the ImageSpace matric...
INTNB GetNbVoxXYZ()
Get the total number of voxels.
int SetAcquisitionTime(int a_bed, FLTNB a_timeStartInSec, FLTNB a_durationInSec)
Set the acquisition time if not already set by the SetTimeFrames()
This class is designed to manage all dimensions and quantification related stuff. ...
int GetNbThreadsForProjection()
Get the number of threads used for projections.
void SetNbBeds(int a_nbBeds)
Set the number of bed positions.
uint32_t GetFrameDurationInMs(int a_bed, int a_frame)
Get the frame duration for the given bed, in milliseconds as a uint32_t.
bool GetIgnoreScatCorrectionFlag()
Get the boolean that says if the scatter correction is ignored or not.
void SetNbCardBasisFunctions(int a_nbCardBasisFunctions)
Set the number of cardiac basis functions.
This file is used for all kind of different functions designed for options parsing and ASCII file rea...
uint32_t GetFinalTimeStopInMs(int a_bed)
Get the last frame time stop for the given bed, in milliseconds as a uint32_t.
FLTNB GetOffsetX()
Get the image offset along the X axis, in mm.
INTNB GetNbVoxX()
Get the number of voxels along the X axis.
INTNB GetNbVoxZ()
Get the number of voxels along the Z axis.
int GetNbRespGates()
Get the number of respiratory gates.
void SetCardBasisFunctionsFile(const string &a_cardBasisFunctionsFile)
Set the file name containing the cardiac basis functions coefficients.
int InitializeCardBasisFunctions()
A function used to initialize the cardiac basis functions.
FLTNB GetFrameDurationInSec(int a_bed, int a_frame)
Get the frame duration for the given bed, in seconds as a FLTNB.
bool GetFlipOutZ()
Get the boolean saying if the output image must be flipped along the Z axis.
int GetCurrentRespImage(int a_th)
call the eponym function from the oDynamicDataManager object
int InitializeIgnoredCorrections()
A function used to initialize the ignored corrections.
int GetNbRespBasisFunctions()
Get the number of respiratory basis functions.
int GetMPIRank()
Get the MPI instance number (the rank)
void CheckNumberOfProjectionThreadsConsistencyWithDatafileSize(vDataFile **a2p_Datafile)
INTNB GetNbSliceOutMask()
Get the number of extrem slices that will be masked at each side.
int GetCurrentTimeFrame(int a_th)
call the eponym function from the oDynamicDataManager object
INTNB GetNbVoxY()
Get the number of voxels along the Y axis.
int SetFlipOut(const string &a_flipOut)
Set the output flip options, the parameter being a string potentially containing the letters x...
void SetPMotionFlagOn()
set the involuntary patient motion flag to 'true'
int SetDynamicSpecificQuantificationFactors(const string &a_quantificationFile)
Apply specific quantification factors manually provided as an option.
FLTNB GetCardBasisCoefficient(int a_cardBasisFunction, int a_cardGate)
Get the cardiac basis coefficients for the provided cardiac gate and basis function.
uint32_t GetFrameTimeStopInMs(int a_bed, int a_frame)
Get the frame time stop for the given bed, in milliseconds as a uint32_t.