CASToR  2.0
Tomographic Reconstruction (PET/SPECT/CT)
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
iEventPET Class Referenceabstract

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

#include <iEventPET.hh>

Inheritance diagram for iEventPET:
Inheritance graph
Collaboration diagram for iEventPET:
Collaboration graph

Public Member Functions

 iEventPET ()
 iEventPET constructor. Initialize the member variables to their default values. More...
 
virtual ~iEventPET ()
 iEventPET 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 GetEventRdmRate ()
 
FLTNB GetNormFactor ()
 
FLTNB GetAtnCorrFactor ()
 
void SetRandomRate (FLTNBDATA a_value)
 Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the random correction term. More...
 
void SetNormalizationFactor (FLTNBDATA a_value)
 Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the normalization term. More...
 
void SetAttenuationCorrectionFactor (FLTNBDATA a_value)
 Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the attenuation correction term. More...
 
FLTNB GetMultiplicativeCorrections ()
 
virtual FLTNB GetEventValue (int a_bin)=0
 Pure virtual function implemented in the child classes. More...
 
virtual FLTNB GetAdditiveCorrections (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 void SetScatterRate (int a_bin, FLTNBDATA a_value)=0
 Set the scatter rate correction term in 1/s, this is a pure virtual function implemented in the child classes. More...
 
virtual INTNB GetNbValueBins ()=0
 Get the number of event value bins. 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...
 
virtual void MultiplyAdditiveCorrections (FLTNB a_factor)=0
 Divide additive corrections by the provided factor. More...
 

Protected Attributes

FLTNB m_eventRdmRate
 
FLTNB m_eventNormFactor
 
FLTNB m_atnCorrFactor
 
- 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 PET 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 decicated to histogram and list mode PET.

Definition at line 42 of file iEventPET.hh.

Constructor & Destructor Documentation

iEventPET::iEventPET ( )

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

Definition at line 41 of file iEventPET.cc.

iEventPET::~iEventPET ( )
virtual

iEventPET destructor

Definition at line 56 of file iEventPET.cc.

Member Function Documentation

int iEventPET::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 iEventListPET, and iEventHistoPET.

void iEventPET::Describe ( )
virtual

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

Implements vEvent.

Reimplemented in iEventListPET, and iEventHistoPET.

Definition at line 63 of file iEventPET.cc.

FLTNB iEventPET::GetAdditiveCorrections ( int  a_bin)
pure virtual

Pure virtual function implemented in the child classes.

Parameters
abin (0 if only one line)
Returns
the sum of the additive corrections terms for this event

Implements vEvent.

Implemented in iEventListPET, and iEventHistoPET.

FLTNB iEventPET::GetAtnCorrFactor ( )
inline
Returns
the correction term for attenuation

Definition at line 91 of file iEventPET.hh.

Here is the caller graph for this function:

FLTNB iEventPET::GetEventRdmRate ( )
inline
Returns
the correction term for randoms given as a rate in 1/s

Definition at line 79 of file iEventPET.hh.

Here is the caller graph for this function:

FLTNB iEventPET::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 iEventListPET, and iEventHistoPET.

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

Implements vEvent.

Definition at line 118 of file iEventPET.hh.

virtual INTNB iEventPET::GetNbValueBins ( )
pure virtual

Get the number of event value bins.

Returns
the number of value bins

Implements vEvent.

Implemented in iEventListPET, and iEventHistoPET.

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

Definition at line 85 of file iEventPET.hh.

Here is the caller graph for this function:

void iEventPET::SetAttenuationCorrectionFactor ( FLTNBDATA  a_value)
inline

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

Parameters
anattenuation correction factor

Definition at line 112 of file iEventPET.hh.

void iEventPET::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 iEventListPET, and iEventHistoPET.

void iEventPET::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 105 of file iEventPET.hh.

void iEventPET::SetRandomRate ( FLTNBDATA  a_value)
inline

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

Parameters
arandom rate value in 1/s

Definition at line 98 of file iEventPET.hh.

void iEventPET::SetScatterRate ( int  a_bin,
FLTNBDATA  a_value 
)
pure virtual

Set the scatter rate correction term in 1/s, this is a pure virtual function implemented in the child classes.

Parameters
abin (0 if only one line)
a_value

Implemented in iEventListPET, and iEventHistoPET.

Member Data Documentation

FLTNB iEventPET::m_atnCorrFactor
protected

Correction term for attenuation. Default value =1.0

Definition at line 164 of file iEventPET.hh.

FLTNB iEventPET::m_eventNormFactor
protected

Normalization term. Default value =1.0

Definition at line 163 of file iEventPET.hh.

FLTNB iEventPET::m_eventRdmRate
protected

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

Definition at line 162 of file iEventPET.hh.


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