CASToR  3.0
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)
 Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the normalization term. More...
 
void SetScatterRate (FLTNBDATA a_value)
 Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the scatter correction rate. More...
 
FLTNB GetAdditiveCorrections (int a_bin)
 
FLTNB GetMultiplicativeCorrections ()
 
virtual FLTNB GetEventValue (int a_bin)=0
 Pure virtual function implemented in the child classes. More...
 
virtual void SetEventValue (int a_bin, FLTNBDATA a_value)=0
 Set the event value, this is a pure virtual function implemented in the child classes. More...
 
virtual INTNB GetNbValueBins ()=0
 Get the number of event value bins. More...
 
void MultiplyAdditiveCorrections (FLTNB a_factor)
 Divide additive corrections by the provided factor (scatters) More...
 
- 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)
 Set the timestamp of the Event. More...
 
void SetNbLines (uint16_t a_value)
 Set the number of lines of the Event. More...
 
void SetID1 (int a_line, uint32_t a_value)
 Set the indice associated with the line index for the 1st ID of the Event. More...
 
void SetID2 (int a_line, uint32_t a_value)
 Set the indice associated with the line index for the 2nd ID of the Event. More...
 
void SetVerbose (int a_verbose)
 Set verbosity. More...
 
virtual FLTNB GetBlankValue ()
 This is a pure virtual function implemented in the child classes. More...
 

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
 

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 41 of file iEventSPECT.hh.

Constructor & Destructor Documentation

◆ iEventSPECT()

iEventSPECT::iEventSPECT ( )

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

Definition at line 40 of file iEventSPECT.cc.

◆ ~iEventSPECT()

iEventSPECT::~iEventSPECT ( )
virtual

iEventSPECT destructor.

Definition at line 54 of file iEventSPECT.cc.

Member Function Documentation

◆ AllocateSpecificData()

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, and iEventListSPECT.

◆ Describe()

void iEventSPECT::Describe ( )
virtual

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

Implements vEvent.

Reimplemented in iEventHistoSPECT, and iEventListSPECT.

Definition at line 61 of file iEventSPECT.cc.

◆ GetAdditiveCorrections()

FLTNB iEventSPECT::GetAdditiveCorrections ( int  a_bin)
inlinevirtual
Parameters
abin (0 if only one line)
Returns
Just return the scatter rate (the TOF bin parameter is ignored for SPECT)

Implements vEvent.

Definition at line 105 of file iEventSPECT.hh.

◆ GetEventScatRate()

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

Definition at line 84 of file iEventSPECT.hh.

Here is the caller graph for this function:

◆ GetEventValue()

FLTNB iEventSPECT::GetEventValue ( int  a_bin)
pure virtual

Pure virtual function implemented in the child classes.

Parameters
abin (0 if only one line)
Returns
the value of the event

Implements vEvent.

Implemented in iEventListSPECT, and iEventHistoSPECT.

Here is the caller graph for this function:

◆ GetMultiplicativeCorrections()

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

Implements vEvent.

Definition at line 114 of file iEventSPECT.hh.

Here is the call graph for this function:

◆ GetNbValueBins()

virtual INTNB iEventSPECT::GetNbValueBins ( )
pure virtual

Get the number of event value bins.

Returns
the number of value bins

Implements vEvent.

Implemented in iEventListSPECT, and iEventHistoSPECT.

Here is the caller graph for this function:

◆ GetNormFactor()

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

Definition at line 78 of file iEventSPECT.hh.

Here is the caller graph for this function:

◆ MultiplyAdditiveCorrections()

void iEventSPECT::MultiplyAdditiveCorrections ( FLTNB  a_factor)
inlinevirtual

Divide additive corrections by the provided factor (scatters)

Parameters
FLTNBa_factor

Implements vEvent.

Definition at line 141 of file iEventSPECT.hh.

◆ SetEventValue()

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

Set the event value, this is a pure virtual function implemented in the child classes.

Parameters
abin (0 if only one line)
a_value

Implements vEvent.

Implemented in iEventListSPECT, and iEventHistoSPECT.

Here is the caller graph for this function:

◆ SetNormalizationFactor()

void iEventSPECT::SetNormalizationFactor ( FLTNBDATA  a_value)
inline

Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the normalization term.

Parameters
anormalization term

Definition at line 91 of file iEventSPECT.hh.

◆ SetScatterRate()

void iEventSPECT::SetScatterRate ( FLTNBDATA  a_value)
inline

Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the scatter correction rate.

Parameters
a_value

Definition at line 98 of file iEventSPECT.hh.

Member Data Documentation

◆ m_eventNormFactor

FLTNB iEventSPECT::m_eventNormFactor
protected

Normalization term. Default value =1.0

Definition at line 152 of file iEventSPECT.hh.

◆ m_eventScatRate

FLTNB iEventSPECT::m_eventScatRate
protected

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

Definition at line 151 of file iEventSPECT.hh.


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