STIR 6.4.0
stir::SinglesRatesForTimeFrames Class Reference

A class for singles rates that are recorded in time frames. More...

#include "stir/data/SinglesRatesForTimeFrames.h"

Inheritance diagram for stir::SinglesRatesForTimeFrames:

Public Member Functions

 SinglesRatesForTimeFrames ()
 Default constructor.
 
float get_singles (int singles_bin_index, unsigned int frame_number) const
 get the singles for a particular singles unit and frame number.
 
float get_singles (const int singles_bin_index, const double start_time, const double end_time) const override
 get the singles for a particular singles unit and a frame with the specified start and end times.
 
FrameSinglesRates STIR_DEPRECATED get_rates_for_frame (double start_time, double end_time) const
 Generate a FramesSinglesRate - containing the average rates.
 
void set_singles (const int singles_bin_index, const unsigned time_frame_num, const float new_singles)
 Set a singles rate by singles bin index and time frame number.
 
unsigned int get_num_frames () const
 Get the number of frames for which singles rates are recorded.
 
const TimeFrameDefinitionsget_time_frame_definitions () const
 Get the time frame definitions.
 
virtual float get_singles (const DetectionPosition<> &det_pos, const double start_time, const double end_time) const
 Virtual function that returns the number of singles given the detection positions and time-interval of detection.
 
- Public Member Functions inherited from stir::SinglesRates
virtual float get_singles_rate (const int singles_bin_index, const double start_time, const double end_time) const
 Get the (average) singles rate for a particular singles unit and a frame with the specified start and end times.
 
virtual float get_singles_rate (const DetectionPosition<> &det_pos, const double start_time, const double end_time) const
 Virtual function that returns the average singles rate given the detection positions and time-interval of detection.
 
const Scannerget_scanner_ptr () const
 Get the scanner pointer.
 
- Public Member Functions inherited from stir::RegisteredObjectBase
virtual std::string get_registered_name () const =0
 Returns the name of the type of the object.
 
- Public Member Functions inherited from stir::ParsingObject
 ParsingObject (const ParsingObject &)
 
ParsingObjectoperator= (const ParsingObject &)
 
bool parse (std::istream &f)
 
bool parse (const char *const filename)
 
void ask_parameters ()
 
virtual std::string parameter_info ()
 

Protected Attributes

Array< 2, float > _singles
 
TimeFrameDefinitions _time_frame_defs
 
- Protected Attributes inherited from stir::SinglesRates
shared_ptr< Scannerscanner_sptr
 Generate a FramesSinglesRate - containing the average rates.
 
KeyParser parser
 

Additional Inherited Members

- Static Public Member Functions inherited from stir::RegisteredObject< SinglesRates >
static SinglesRatesread_registered_object (std::istream *in, const std::string &registered_name)
 Construct a new object (of a type derived from Root, its actual type determined by the registered_name parameter) by parsing the istream.
 
static SinglesRatesask_type_and_parameters ()
 ask the user for the type, and then calls read_registered_object(0, type)
 
static void list_registered_names (std::ostream &stream)
 List all possible registered names to the stream.
 
- Protected Types inherited from stir::RegisteredObject< SinglesRates >
typedef SinglesRates *(* RootFactory) (std::istream *)
 The type of a root factory is a function, taking an istream* as argument, and returning a Root*.
 
typedef FactoryRegistry< std::string, RootFactory, interfile_lessRegistryType
 The type of the registry.
 
virtual void set_defaults ()
 Set defaults before parsing.
 
virtual void initialise_keymap ()
 Initialise all keywords.
 
virtual bool post_processing ()
 This will be called at the end of the parsing.
 
virtual void set_key_values ()
 This will be called before parsing or parameter_info is called.
 
- Static Protected Member Functions inherited from stir::RegisteredObject< SinglesRates >
static RegistryTyperegistry ()
 Static function returning the registry.
 

Detailed Description

A class for singles rates that are recorded in time frames.

Member Function Documentation

◆ get_singles() [1/3]

float stir::SinglesRatesForTimeFrames::get_singles ( int singles_bin_index,
unsigned int frame_number ) const

get the singles for a particular singles unit and frame number.

The singles returned is the rate for a whole singles unit.

References get_singles().

Referenced by get_singles(), and get_singles().

◆ get_singles() [2/3]

float stir::SinglesRatesForTimeFrames::get_singles ( const int singles_bin_index,
const double start_time,
const double end_time ) const
overridevirtual

get the singles for a particular singles unit and a frame with the specified start and end times.

The singles returned is the rate for a whole singles unit.

Warning
Currently returns -1 if the start_time, end_time does not correspond to a time frame.

Implements stir::SinglesRates.

References get_singles().

◆ set_singles()

void stir::SinglesRatesForTimeFrames::set_singles ( const int singles_bin_index,
const unsigned time_frame_num,
const float new_singles )

Set a singles rate by singles bin index and time frame number.

Warning
No error checking is doing on validity of the indices.

References set_singles().

Referenced by get_rates_for_frame(), and set_singles().

◆ get_singles() [3/3]

float stir::SinglesRates::get_singles ( const DetectionPosition<> & det_pos,
const double start_time,
const double end_time ) const
virtual

Virtual function that returns the number of singles given the detection positions and time-interval of detection.

The behaviour of this function is specified by the derived classes.

Warning
Currently might return -1 if the start_time, end_time are invalid (e.g. out of the measured range).

Default implementation uses Scanner::get_singles_bin_index() and get_singles(int,double,double).

Reimplemented from stir::SinglesRates.


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