STIR
6.2.0
|
Class for storing and using a coincidence event from a list mode file for a cylindrical single layer scanner. More...
#include "stir/listmode/CListEventScannerWithDiscreteDetectors.h"
Public Member Functions | |
CListEventScannerWithDiscreteDetectors (const shared_ptr< const ProjDataInfo > &proj_data_info) | |
const Scanner * | get_scanner_ptr () const |
virtual void | get_detection_position (DetectionPositionPair<> &) const =0 |
This routine returns the corresponding detector pair. | |
virtual void | set_detection_position (const DetectionPositionPair<> &)=0 |
This routine sets in a coincidence event from detector "indices". | |
LORAs2Points< float > | get_LOR () const override |
find LOR between detector pairs More... | |
void | get_bin (Bin &bin, const ProjDataInfo &proj_data_info) const override |
find bin for this event More... | |
bool | is_valid_template (const ProjDataInfo &) const override |
This method checks if the template is valid for LmToProjData. More... | |
Public Member Functions inherited from stir::CListEvent | |
virtual Succeeded | set_prompt (const bool prompt=true) |
Changes the event from prompt to delayed or vice versa. More... | |
Public Member Functions inherited from stir::ListEvent | |
virtual bool | is_prompt () const =0 |
Protected Member Functions | |
shared_ptr< const ProjDataInfoT > | get_uncompressed_proj_data_info_sptr () const |
Class for storing and using a coincidence event from a list mode file for a cylindrical single layer scanner.
For scanners with discrete detectors, the list mode events usually store detector indices in some way. This class provides access mechanisms to those detection positions, and also provides more efficient implementations of some virtual members of CListEvent.
|
inlineoverridevirtual |
find LOR between detector pairs
Overrides the default implementation to use get_detection_position() which should be faster.
Implements stir::ListEvent.
|
inlineoverridevirtual |
find bin for this event
Overrides the default implementation to use get_detection_position() which should be faster.
proj_data_info
of type ProjDataInfoT. However, because of efficiency reasons this is only checked in debug mode (NDEBUG not defined). Reimplemented from stir::ListEvent.
|
inlineoverridevirtual |
This method checks if the template is valid for LmToProjData.
Used before the actual processing of the data (see issue #61), before calling get_bin() Most scanners have listmode data that correspond to non arc-corrected data and this check avoids a crash when an unsupported template is used as input.
Implements stir::ListEvent.