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

Inherit from iEventPET. Class for PET list-mode events. More...

#include <iEventListPET.hh>

Inheritance diagram for iEventListPET:
Inheritance graph
Collaboration diagram for iEventListPET:
Collaboration graph

Public Member Functions

 iEventListPET ()
 iEventListPET constructor. Initialize the member variables to their default values. More...
 
 ~iEventListPET ()
 iEventListPET destructor. More...
 
int AllocateSpecificData ()
 Function allowing the allocation of specific data. Return 0 by default for iEventListPET. More...
 
void Describe ()
 This function can be used to get a description of the event printed out. More...
 
uint8_t GetKind ()
 
FLTNB GetEventScatRate (int a_bin)
 
FLTNB GetTOFMeasurement ()
 
FLTNBGetPOI1 ()
 
FLTNBGetPOI2 ()
 
FLTNB GetPOI1 (uint8_t axis)
 
FLTNB GetPOI2 (uint8_t axis)
 
FLTNB GetEventValue (int a_bin)
 
void SetKind (uint8_t a_value)
 Set the kind of coincidence. More...
 
void SetScatterRate (int a_bin, FLTNBDATA a_value)
 Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the scatter correction rate in 1/s (a_bin is dedicated to histogram mode, and ignored for list-mode) More...
 
void SetTOFMeasurement (FLTNB a_value)
 Initialize the TOFmeasurement with a value passed in parameters. More...
 
void SetSpatialTOFMeasurementRange (FLTNB a_value)
 Initialize the spatialTOFMeasurementRange with a value passed in parameters. More...
 
void SetPOI1 (int a_axis, FLTNBDATA a_value)
 Initialize the POI of the crystal #1 with a value for the specific axis. More...
 
void SetPOI2 (int a_axis, FLTNBDATA a_value)
 Initialize the POI of the crystal #2 with a value for the specific axis. More...
 
void SetEventValue (int a_bin, FLTNBDATA a_value)
 Throw a warning (depending of verbosity) as the event value of a list-mode Event should be equal to 1 and not modified ? More...
 
FLTNB GetAdditiveCorrections (int a_bin)
 
INTNB GetNbValueBins ()
 Get the number of event value bins. More...
 
void SetHasTOFinfo (bool a_hasTOFinfo)
 Set whether this event contains TOF information or not, awareness of TOF info existence is important for some operations. More...
 
void MultiplyAdditiveCorrections (FLTNB a_factor)
 Divide additive corrections by the provided factor (scatters and randoms) More...
 
- Public Member Functions inherited from iEventPET
 iEventPET ()
 iEventPET constructor. Initialize the member variables to their default values. More...
 
virtual ~iEventPET ()
 iEventPET destructor 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 ()
 
- 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...
 

Private Attributes

uint8_t m_kind
 
FLTNB m_eventScatRate
 
FLTNB m_TOFMeasurement
 
FLTNB mp_POI1 [3]
 
FLTNB mp_POI2 [3]
 
FLTNB m_spatialTOFMeasurementRange
 
bool m_hasTOFinfo
 

Additional Inherited Members

- Protected Attributes inherited from iEventPET
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 iEventPET. Class for PET list-mode events.

It manages data and functions specific to list mode PET.

Definition at line 63 of file iEventListPET.hh.

Constructor & Destructor Documentation

iEventListPET::iEventListPET ( )

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

Definition at line 41 of file iEventListPET.cc.

iEventListPET::~iEventListPET ( )

iEventListPET destructor.

Definition at line 66 of file iEventListPET.cc.

Member Function Documentation

int iEventListPET::AllocateSpecificData ( )
inlinevirtual

Function allowing the allocation of specific data. Return 0 by default for iEventListPET.

Returns
0 is success, positive value otherwise

Implements iEventPET.

Definition at line 86 of file iEventListPET.hh.

void iEventListPET::Describe ( )
virtual

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

Reimplemented from iEventPET.

Definition at line 85 of file iEventListPET.cc.

FLTNB iEventListPET::GetAdditiveCorrections ( int  a_bin)
virtual
Parameters
abin (0 if noTOF)
Returns
The sum of additive correction terms (the TOF bin parameter is ignored for list-mode PET)

Implements iEventPET.

Definition at line 109 of file iEventListPET.cc.

FLTNB iEventListPET::GetEventScatRate ( int  a_bin)
inline
Parameters
a_bin(0 if noTOF)
Returns
the scatter correction rate in 1/s for this list-mode event (a_bin is dedicated to histogram mode, and ignored for list-mode)

Definition at line 107 of file iEventListPET.hh.

Here is the caller graph for this function:

FLTNB iEventListPET::GetEventValue ( int  a_bin)
inlinevirtual
Parameters
abin (0 if noTOF)
Returns
1 as default for a list-mode Event (a_bin is dedicated to histogram mode, and ignored for list-mode)

Implements iEventPET.

Definition at line 146 of file iEventListPET.hh.

uint8_t iEventListPET::GetKind ( )
inline
Returns
the kind of coincidence

Definition at line 100 of file iEventListPET.hh.

Here is the caller graph for this function:

INTNB iEventListPET::GetNbValueBins ( )
inlinevirtual

Get the number of event value bins.

Returns
the number of value bins

Implements iEventPET.

Definition at line 212 of file iEventListPET.hh.

FLTNB iEventListPET::GetPOI1 ( )
inline
Returns
the pointer containing the 3 indices for the Point Of Interaction of the 1st crystal
Parameters
axis
Returns
the Point of interaction of the 1st crystal along the axis specified in parameter

Definition at line 119 of file iEventListPET.hh.

Here is the caller graph for this function:

FLTNB iEventListPET::GetPOI1 ( uint8_t  axis)
inline

Definition at line 132 of file iEventListPET.hh.

FLTNB iEventListPET::GetPOI2 ( )
inline
Returns
the pointer containing the 3 indices for the Point Of Interaction of the 2nd crystal
Parameters
axis
Returns
the Point of interaction of the 2nd crystal along the axis specified in parameter

Definition at line 125 of file iEventListPET.hh.

Here is the caller graph for this function:

FLTNB iEventListPET::GetPOI2 ( uint8_t  axis)
inline

Definition at line 139 of file iEventListPET.hh.

uint32_t iEventListPET::GetTOFMeasurement ( )
inline
Returns
the TOF measurement value

Definition at line 113 of file iEventListPET.hh.

Here is the caller graph for this function:

void iEventListPET::MultiplyAdditiveCorrections ( FLTNB  a_factor)
inlinevirtual

Divide additive corrections by the provided factor (scatters and randoms)

Parameters
FLTNBa_factor

Implements vEvent.

Definition at line 227 of file iEventListPET.hh.

void iEventListPET::SetEventValue ( int  a_bin,
FLTNBDATA  a_value 
)
virtual

Throw a warning (depending of verbosity) as the event value of a list-mode Event should be equal to 1 and not modified ?

Parameters
a_bin(0 if noTOF)
a_value

Implements iEventPET.

Definition at line 73 of file iEventListPET.cc.

Here is the call graph for this function:

void iEventListPET::SetHasTOFinfo ( bool  a_hasTOFinfo)
inline

Set whether this event contains TOF information or not, awareness of TOF info existence is important for some operations.

Returns
None

Definition at line 220 of file iEventListPET.hh.

void iEventListPET::SetKind ( uint8_t  a_value)
inline

Set the kind of coincidence.

Parameters
a_value

Definition at line 153 of file iEventListPET.hh.

void iEventListPET::SetPOI1 ( int  a_axis,
FLTNBDATA  a_value 
)
inline

Initialize the POI of the crystal #1 with a value for the specific axis.

Parameters
a_axis
a_value

Definition at line 184 of file iEventListPET.hh.

void iEventListPET::SetPOI2 ( int  a_axis,
FLTNBDATA  a_value 
)
inline

Initialize the POI of the crystal #2 with a value for the specific axis.

Parameters
a_axis
a_value

Definition at line 192 of file iEventListPET.hh.

void iEventListPET::SetScatterRate ( int  a_bin,
FLTNBDATA  a_value 
)
inlinevirtual

Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the scatter correction rate in 1/s (a_bin is dedicated to histogram mode, and ignored for list-mode)

Parameters
abin (no use for list-mode)
a_value

Implements iEventPET.

Definition at line 162 of file iEventListPET.hh.

void iEventListPET::SetSpatialTOFMeasurementRange ( FLTNB  a_value)
inline

Initialize the spatialTOFMeasurementRange with a value passed in parameters.

Parameters
a_value

Definition at line 176 of file iEventListPET.hh.

void iEventListPET::SetTOFMeasurement ( FLTNB  a_value)
inline

Initialize the TOFmeasurement with a value passed in parameters.

Parameters
a_value

Definition at line 169 of file iEventListPET.hh.

Member Data Documentation

FLTNB iEventListPET::m_eventScatRate
private

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

Definition at line 238 of file iEventListPET.hh.

bool iEventListPET::m_hasTOFinfo
private

Flag indicating whether TOF information exists or not

Definition at line 243 of file iEventListPET.hh.

uint8_t iEventListPET::m_kind
private

Coincidence type : unknown (=0), true(=1), single scat(=2), multiple scat(=3), random(=4)) Default value =KIND_UNKNOWN

Definition at line 237 of file iEventListPET.hh.

FLTNB iEventListPET::m_spatialTOFMeasurementRange
private

Spatial equivalent of the maximum range of values for TOF delta time measurements, in mm

Definition at line 242 of file iEventListPET.hh.

FLTNB iEventListPET::m_TOFMeasurement
private

TOF time in ps, corresponding to the difference in arrival time between the two photons. Default value =0.0

Definition at line 239 of file iEventListPET.hh.

FLTNB iEventListPET::mp_POI1[3]
private

Position of interaction in the crystal #1 along each axis (mm). Default value =0.0;0.0;-1.0

Definition at line 240 of file iEventListPET.hh.

FLTNB iEventListPET::mp_POI2[3]
private

Position of interaction in the crystal #2 along each axis (mm). Default value =0.0;0.0;-1.0

Definition at line 241 of file iEventListPET.hh.


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