11 #include "gVariables.hh" 19 #include "sOutputManager.hh" 20 #include "sScannerManager.hh" 21 #include "oImageDimensionsAndQuantification.hh" 32 #define MODE_UNKNOWN -1 36 #define MODE_HISTOGRAM 1 38 #define MODE_NORMALIZATION 2 49 #define TYPE_UNKNOWN -1 66 #define SPEC_UNKNOWN -1 68 #define SPEC_EMISSION 0 70 #define SPEC_TRANSMISSION 1 431 {
mp_ID = ap_ImageDimensionsAndQuantification;}
502 virtual int Shuffle( int64_t );
void SetDataMode(int a_dataMode)
void SetIgnorePOIFlag(bool a_ignorePOIFlag)
This class is designed to be a mother virtual class for DataFile.
void GetEventIndexStartAndStop(int64_t *ap_indexStart, int64_t *ap_indexStop, int a_subsetNum=0, int a_NbSubsets=1)
Implementation of file to memory mapping.
Declaration of class iEventPET.
Declaration of class vEvent.
Declaration of class iEventHistoPET.
int CheckParameters()
Check the initialization of member variables Call the CheckSpecificParameters() function implemente...
virtual int WriteHeader()=0
This function is implemented in child classes. Generate a header file according to the data output ...
oMemoryMapped * mp_MappedFile
FLTNB GetCalibrationFactor()
virtual int CheckFileSizeConsistency()=0
int SetParametersFrom(vDataFile *ap_DataFile)
virtual int WriteEvent(vEvent *ap_Event, int a_th=0)=0
int ReadInfoInHeader(bool a_affectQuantificationFlag=true)
void SetVerbose(int a_verboseLevel)
virtual int ReadSpecificInfoInHeader(bool a_affectQuantificationFlag=true)=0
void SetDuration(FLTNB a_value)
Declaration of class iEventNorm.
virtual int ComputeSizeEvent()=0
This function is implemented in child classes Computation of the size of each event according to th...
int CheckConsistencyWithAnotherBedDataFile(vDataFile *ap_DataFile)
string GetDataSpecToString()
virtual ~vDataFile()
vDataFile destructor.
virtual int GetMaxRingDiff()
Return an error by default. This function is surcharged by the PET (and CT) scanner daughter class...
FLTNB mp_POIResolution[3]
int InitializeMappedFile()
Check the datafile existency, map it to memory and get the raw char* pointer. .
virtual int CheckSpecificConsistencyWithAnotherDataFile(vDataFile *ap_DataFile)=0
void SetPOIResolution(FLTNB ap_value[3])
int PROJ_WriteData()
Write/Merge chunk of data in a general data file.
vEvent * GetEvent(int64_t a_eventIndex, int a_th=0)
string GetHeaderDataFileName()
int CloseFile()
Close as many binary file stream for writing.
void SetBinaryDataFileName(const string &a_dataFileName)
virtual int CheckSpecificParameters()=0
This function is implemented in child classes Check specific parameters of child classes...
void SetStartTime(FLTNB a_value)
bool * GetPOIDirectionFlag()
vDataFile()
vDataFile constructor.
void SetDataType(int a_dataType)
void SetCalibrationFactor(FLTNB a_value)
bool GetBedPositionFlag()
vEvent ** m2p_BufferEvent
virtual int PrepareDataFile()=0
This function is implemented in child classes Store different kind of information inside arrays (da...
FLTNB m_relativeBedPosition
FLTNB * GetPOIResolution()
void SetHeaderDataFileName(const string &a_headerFileName)
int OpenFileForWriting(string a_suffix="")
vEvent * PROJ_GenerateEvent(int idx_elt1, int idx_elt2, int a_th)
Declaration of class iEventListPET.
virtual void DescribeSpecific()=0
A pure virtual function used to describe the specific parts of the datafile.
Declaration of class iEventSPECT.
void SetNbEvents(int64_t a_value)
void SetBedIndex(int a_bedIndex)
bool mp_POIDirectionFlag[3]
Mother class for the Event objects.
FLTNB GetRelativeBedPosition()
void Describe()
A function used to describe the generic parts of the datafile.
This class is designed to manage all dimensions and quantification related stuff. ...
string GetDataTypeToString()
virtual vEvent * GetEventSpecific(char *ap_buffer, int a_th)=0
Portable read-only memory mapping (Windows and Linux)
FLTNB m_calibrationFactor
int PROJ_DeleteTmpDataFile()
Delete temporary datafile used for multithreaded output writing if needed.
virtual int PROJ_GetScannerSpecificParameters()=0
This function is implemented in child classes It is used to set several variables of the datafile w...
int GetVerbose()
Get the verbose level.
virtual int Shuffle(int64_t)
!!!\ This function has been modified to be used specifically with a
void SetImageDimensionsAndQuantification(oImageDimensionsAndQuantification *ap_ImageDimensionsAndQuantification)
Declaration of class iEventCT.
virtual int SetSpecificParametersFrom(vDataFile *ap_DataFile)=0
virtual int PROJ_InitFile()=0
This function is implemented in child classes Initialize the fstream objets for output writing as w...
string GetDataModeToString()
oImageDimensionsAndQuantification * mp_ID