CASToR  3.2
Tomographic Reconstruction (PET/SPECT/CT)
Public Member Functions | Protected Attributes | List of all members
iEventSPECT Class Referenceabstract

Inherit from vEvent. Main SPECT class for the Event objects. More...

#include <iEventSPECT.hh>

Inheritance diagram for iEventSPECT:
Inheritance graph
Collaboration diagram for iEventSPECT:
Collaboration graph

Public Member Functions

 iEventSPECT ()
 iEventSPECT constructor. Initialize the member variables to their default values. More...
 
virtual ~iEventSPECT ()
 iEventSPECT destructor. More...
 
virtual int AllocateSpecificData ()=0
 Pure virtual function implemented in the child classes, dedicated to the allocation of specific data in the child classes. More...
 
virtual void Describe ()
 This function can be used to get a description of the event printed out. More...
 
FLTNB GetNormFactor ()
 
FLTNB GetEventScatRate ()
 
void SetNormalizationFactor (FLTNBDATA a_value)
 
void SetScatterRate (FLTNBDATA a_value)
 
FLTNB GetAdditiveCorrections (int a_bin)
 
FLTNB GetMultiplicativeCorrections ()
 
virtual FLTNB GetEventValue (int a_bin)=0
 
virtual void SetEventValue (int a_bin, FLTNBDATA a_value)=0
 
virtual INTNB GetNbValueBins ()=0
 Get the number of event value bins. More...
 
void MultiplyAdditiveCorrections (FLTNB a_factor)
 
 iEventSPECT ()
 iEventSPECT constructor. Initialize the member variables to their default values. More...
 
virtual ~iEventSPECT ()
 iEventSPECT destructor. More...
 
virtual int AllocateSpecificData ()=0
 Pure virtual function implemented in the child classes, dedicated to the allocation of specific data in the child classes. More...
 
virtual void Describe ()
 This function can be used to get a description of the event printed out. More...
 
FLTNB GetNormFactor ()
 
FLTNB GetEventScatRate ()
 
void SetNormalizationFactor (FLTNBDATA a_value)
 
void SetScatterRate (FLTNBDATA a_value)
 
FLTNB GetAdditiveCorrections (int a_bin)
 
FLTNB GetMultiplicativeCorrections ()
 This is a pure virtual function implemented in the child classes. More...
 
virtual FLTNB GetEventValue (int a_bin)=0
 
virtual void SetEventValue (int a_bin, FLTNBDATA a_value)=0
 
virtual INTNB GetNbValueBins ()=0
 Get the number of event value bins. More...
 
void MultiplyAdditiveCorrections (FLTNB a_factor)
 
- Public Member Functions inherited from vEvent
 vEvent ()
 vEvent constructor. Initialize the member variables to their default values. More...
 
virtual ~vEvent ()
 vEvent destructor More...
 
int AllocateID ()
 Instantiate the mp_ID1 and mp_ID2 indices arrays. More...
 
uint32_t GetTimeInMs ()
 
uint16_t GetNbLines ()
 
uint32_t GetID1 (int a_line)
 
uint32_t GetID2 (int a_line)
 
uint32_t * GetEventID1 ()
 
uint32_t * GetEventID2 ()
 
int GetDataType ()
 
int GetDataMode ()
 
void SetTimeInMs (uint32_t a_value)
 
void SetNbLines (uint16_t a_value)
 
void SetID1 (int a_line, uint32_t a_value)
 
void SetID2 (int a_line, uint32_t a_value)
 
void SetVerbose (int a_verbose)
 
virtual FLTNB GetBlankValue ()
 This is a pure virtual function implemented in the child classes. More...
 
 vEvent ()
 vEvent constructor. Initialize the member variables to their default values. More...
 
virtual ~vEvent ()
 vEvent destructor More...
 
int AllocateID ()
 
int AllocateCustomINTData ()
 Instantiate the m_nbCustomINTData array. More...
 
int AllocateCustomFLTData ()
 Instantiate the m_nbCustomFLTData array. More...
 
uint32_t GetTimeInMs ()
 
uint16_t GetNbLines ()
 
uint32_t GetID1 (int a_line)
 
uint32_t GetID2 (int a_line)
 
uint32_t * GetEventID1 ()
 
uint32_t * GetEventID2 ()
 
int GetDataType ()
 
int GetDataMode ()
 
void SetTimeInMs (uint32_t a_value)
 
void SetNbLines (uint16_t a_value)
 
void SetID1 (int a_line, uint32_t a_value)
 
void SetID2 (int a_line, uint32_t a_value)
 
void SetVerbose (int a_verbose)
 
virtual FLTNB GetBlankValue ()
 
void SetEventIndex (int a_eventIndex)
 Set current index associated to the event. More...
 
int64_t GetEventIndex ()
 Get current index associated to the event. More...
 
virtual int GetNbCustomFLTData ()
 
virtual int GetNbCustomINTData ()
 
virtual void SetNbCustomFLTData (int a_value)
 initialize the number of custom INT data with a_value More...
 
virtual void SetNbCustomINTData (int a_value)
 initialize the number of custom INT data with a_value More...
 
virtual EVTFLTDATAGetCustomFLTData ()
 
virtual EVTINTDATAGetCustomINTData ()
 
virtual EVTFLTDATA GetCustomFLTData (int a_idx)
 
virtual EVTINTDATA GetCustomINTData (int a_idx)
 
virtual int SetCustomFLTData (int a_idx, EVTFLTDATA a_value)
 
virtual int SetCustomINTData (int a_idx, EVTINTDATA a_value)
 

Protected Attributes

FLTNB m_eventScatRate
 
FLTNB m_eventNormFactor
 
- Protected Attributes inherited from vEvent
uint32_t m_timeInMs
 
uint16_t m_nbLines
 
uint32_t * mp_ID1
 
uint32_t * mp_ID2
 
FLTNB m_eventValue
 
int m_dataType
 
int m_dataMode
 
int m_dataSpec
 
int m_verbose
 
int64_t m_eventIndex
 
EVTFLTDATAmp_customFLTData
 
EVTINTDATAmp_customINTData
 
int m_nbCustomFLTData
 
int m_nbCustomINTData
 

Detailed Description

Inherit from vEvent. Main SPECT class for the Event objects.

This class is designed to be an abstract class that should not be used on its own; only its children are used.
It manages data and functions common to both class dedicated to histogram and list mode SPECT.

Definition at line 19 of file code/include/datafile/iEventSPECT.hh.

Constructor & Destructor Documentation

◆ iEventSPECT() [1/2]

iEventSPECT::iEventSPECT ( )

iEventSPECT constructor. Initialize the member variables to their default values.

Definition at line 18 of file code/src/datafile/iEventSPECT.cc.

◆ ~iEventSPECT() [1/2]

iEventSPECT::~iEventSPECT ( )
virtual

iEventSPECT destructor.

Definition at line 32 of file code/src/datafile/iEventSPECT.cc.

◆ iEventSPECT() [2/2]

iEventSPECT::iEventSPECT ( )

iEventSPECT constructor. Initialize the member variables to their default values.

◆ ~iEventSPECT() [2/2]

virtual iEventSPECT::~iEventSPECT ( )
virtual

iEventSPECT destructor.

Member Function Documentation

◆ AllocateSpecificData() [1/2]

int iEventSPECT::AllocateSpecificData ( )
pure virtual

Pure virtual function implemented in the child classes, dedicated to the allocation of specific data in the child classes.

Returns
0 is success, positive value otherwise

Implements vEvent.

Implemented in iEventHistoSPECT, iEventListSPECT, iEventHistoSPECT, and iEventListSPECT.

◆ AllocateSpecificData() [2/2]

virtual int iEventSPECT::AllocateSpecificData ( )
pure virtual

Pure virtual function implemented in the child classes, dedicated to the allocation of specific data in the child classes.

Returns
0 is success, positive value otherwise

Implements vEvent.

Implemented in iEventHistoSPECT, iEventListSPECT, iEventHistoSPECT, and iEventListSPECT.

◆ Describe() [1/2]

void iEventSPECT::Describe ( )
virtual

This function can be used to get a description of the event printed out.

Implements vEvent.

Reimplemented in iEventHistoSPECT, iEventListSPECT, iEventHistoSPECT, and iEventListSPECT.

Definition at line 39 of file code/src/datafile/iEventSPECT.cc.

◆ Describe() [2/2]

virtual void iEventSPECT::Describe ( )
virtual

This function can be used to get a description of the event printed out.

Implements vEvent.

Reimplemented in iEventHistoSPECT, iEventListSPECT, iEventHistoSPECT, and iEventListSPECT.

◆ GetAdditiveCorrections() [1/2]

FLTNB iEventSPECT::GetAdditiveCorrections ( int  a_bin)
inlinevirtual

Implements vEvent.

Definition at line 83 of file include/datafile/iEventSPECT.hh.

◆ GetAdditiveCorrections() [2/2]

FLTNB iEventSPECT::GetAdditiveCorrections ( int  a_bin)
inlinevirtual

Implements vEvent.

Definition at line 83 of file code/include/datafile/iEventSPECT.hh.

◆ GetEventScatRate() [1/2]

FLTNB iEventSPECT::GetEventScatRate ( )
inline

Definition at line 62 of file include/datafile/iEventSPECT.hh.

◆ GetEventScatRate() [2/2]

FLTNB iEventSPECT::GetEventScatRate ( )
inline
Returns
the correction term for scatters as a rate in 1/s

Definition at line 62 of file code/include/datafile/iEventSPECT.hh.

Here is the caller graph for this function:

◆ GetEventValue() [1/2]

virtual FLTNB iEventSPECT::GetEventValue ( int  a_bin)
pure virtual

Implements vEvent.

Implemented in iEventListSPECT, iEventListSPECT, iEventHistoSPECT, and iEventHistoSPECT.

Here is the caller graph for this function:

◆ GetEventValue() [2/2]

virtual FLTNB iEventSPECT::GetEventValue ( int  a_bin)
pure virtual

◆ GetMultiplicativeCorrections() [1/2]

FLTNB iEventSPECT::GetMultiplicativeCorrections ( )
inlinevirtual
Returns
the product of the multiplicative corrections terms for this event

Implements vEvent.

Definition at line 92 of file code/include/datafile/iEventSPECT.hh.

Here is the call graph for this function:

◆ GetMultiplicativeCorrections() [2/2]

FLTNB iEventSPECT::GetMultiplicativeCorrections ( )
inlinevirtual

This is a pure virtual function implemented in the child classes.

Returns
the product of the multiplicative corrections terms for this event

Implements vEvent.

Definition at line 92 of file include/datafile/iEventSPECT.hh.

Here is the call graph for this function:

◆ GetNbValueBins() [1/2]

virtual INTNB iEventSPECT::GetNbValueBins ( )
pure virtual

Get the number of event value bins.

Returns
the number of value bins

Implements vEvent.

Implemented in iEventListSPECT, iEventListSPECT, iEventHistoSPECT, and iEventHistoSPECT.

Here is the caller graph for this function:

◆ GetNbValueBins() [2/2]

virtual INTNB iEventSPECT::GetNbValueBins ( )
pure virtual

Get the number of event value bins.

Returns
the number of value bins

Implements vEvent.

Implemented in iEventListSPECT, iEventListSPECT, iEventHistoSPECT, and iEventHistoSPECT.

◆ GetNormFactor() [1/2]

FLTNB iEventSPECT::GetNormFactor ( )
inline
Returns
the normalization term

Definition at line 56 of file code/include/datafile/iEventSPECT.hh.

Here is the caller graph for this function:

◆ GetNormFactor() [2/2]

FLTNB iEventSPECT::GetNormFactor ( )
inline

Definition at line 56 of file include/datafile/iEventSPECT.hh.

◆ MultiplyAdditiveCorrections() [1/2]

void iEventSPECT::MultiplyAdditiveCorrections ( FLTNB  a_factor)
inlinevirtual

Implements vEvent.

Definition at line 119 of file code/include/datafile/iEventSPECT.hh.

◆ MultiplyAdditiveCorrections() [2/2]

void iEventSPECT::MultiplyAdditiveCorrections ( FLTNB  a_factor)
inlinevirtual

Implements vEvent.

Definition at line 119 of file include/datafile/iEventSPECT.hh.

◆ SetEventValue() [1/2]

virtual void iEventSPECT::SetEventValue ( int  a_bin,
FLTNBDATA  a_value 
)
pure virtual

Implements vEvent.

Implemented in iEventListSPECT, iEventListSPECT, iEventHistoSPECT, and iEventHistoSPECT.

Here is the caller graph for this function:

◆ SetEventValue() [2/2]

virtual void iEventSPECT::SetEventValue ( int  a_bin,
FLTNBDATA  a_value 
)
pure virtual

◆ SetNormalizationFactor() [1/2]

void iEventSPECT::SetNormalizationFactor ( FLTNBDATA  a_value)
inline

Definition at line 69 of file code/include/datafile/iEventSPECT.hh.

◆ SetNormalizationFactor() [2/2]

void iEventSPECT::SetNormalizationFactor ( FLTNBDATA  a_value)
inline

Definition at line 69 of file include/datafile/iEventSPECT.hh.

◆ SetScatterRate() [1/2]

void iEventSPECT::SetScatterRate ( FLTNBDATA  a_value)
inline

Definition at line 76 of file include/datafile/iEventSPECT.hh.

◆ SetScatterRate() [2/2]

void iEventSPECT::SetScatterRate ( FLTNBDATA  a_value)
inline

Definition at line 76 of file code/include/datafile/iEventSPECT.hh.

Here is the caller graph for this function:

Member Data Documentation

◆ m_eventNormFactor

FLTNB iEventSPECT::m_eventNormFactor
protected

Normalization term. Default value =1.0

Definition at line 130 of file code/include/datafile/iEventSPECT.hh.

◆ m_eventScatRate

FLTNB iEventSPECT::m_eventScatRate
protected

Correction term for scatter rate (unit: s-1). Default value =0.0

Definition at line 129 of file code/include/datafile/iEventSPECT.hh.


The documentation for this class was generated from the following files: