31 #ifndef IDATAFILECT_HH
32 #define IDATAFILECT_HH 1
This class is designed to be a mother virtual class for DataFile.
This header file is mainly used to declare some macro definitions and all includes needed from the st...
bool GetScatCorrectionFlag()
Simply return m_scatCorrectionFlag.
int GetDetectorRotDirection()
Simply return m_detectorRotDirection.
int InitAngles(FLTNB *ap_angles)
allocate memory for the mp_angles variable using m_nbProjections and initialize the projection angles...
int SetSpecificParametersFrom(vDataFile *ap_DataFile)
Initialize all parameters specific to CT from the provided datafile.
void SetEventKindFlagOn()
set to true the flag indicating the presence of the kind of a list-mode event in the datafile ...
bool m_blankCorrectionFlag
void SetNbProjections(uint16_t a_nbProjections)
initialize the number of projections
Inherit from iEventCT. Class for CT list-mode events.
iDataFileCT()
iDataFileCT constructor. Initialize the member variables to their default values. ...
bool m_ignoreScatCorrectionFlag
uint16_t m_nbOfProjections
int ReadSpecificInfoInHeader(bool a_affectQuantificationFlag)
Read through the header file and recover specific CT information.
bool m_ignoreBlankCorrectionFlag
bool m_scatCorrectionFlag
int WriteHeader()
Generate a header file according to the data output information.
int WriteListEvent(iEventListCT *ap_Event, int a_th)
Write a CT list-mode event.
int ComputeSizeEvent()
Computation of the size of each event according to the mandatory/optional correction fields...
vEvent * GetEventSpecific(char *ap_buffer, int a_th)
Read an event from the position pointed by 'ap_buffer', parse the generic or modality-specific inform...
Declaration of class vScanner.
Declaration of class vDataFile.
Declaration of class iEventHistoCT.
Declaration of class iEventListCT.
int PROJ_GetScannerSpecificParameters()
Get SPECT specific parameters for projections from the scanner object, through the scannerManager...
int CheckSpecificParameters()
Check parameters specific to CT data.
void DescribeSpecific()
Implementation of the pure virtual eponym function that simply prints info about the datafile...
Inherit from iEventCT. Class for CT histogram mode events.
int PROJ_InitFile()
Initialize the fstream objets for output writing as well as some other variables specific to the Proj...
bool GetBlankCorrectionFlag()
Simply return m_blankCorrectionFlag.
bool GetEventKindFlag()
Simply return m_eventKindFlag.
int m_detectorRotDirection
int CheckSpecificConsistencyWithAnotherDataFile(vDataFile *ap_DataFile)
Check consistency between 'this' and the provided datafile, for specific characteristics.
uint16_t GetNbProjections()
int WriteEvent(vEvent *ap_Event, int a_th=0)
Write event according to the chosen type of data.
Mother class for the Event objects.
Inherit from vDataFile. Class that manages the reading of a CT input file (header + data)...
void SetDetectorRotDirection(int a_direction)
initialize the rotation direction of the CT detector
~iDataFileCT()
iDataFileCT destructor.
int WriteHistoEvent(iEventHistoCT *ap_Event, int a_th)
Write a CT histogram event.
int PrepareDataFile()
Store different kind of information inside arrays (data relative to specific correction as well as ba...
int CheckFileSizeConsistency()
This function is implemented in child classes Check if file size is consistent. ...