STIR  6.2.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
stir::LmToProjDataWithMC Class Reference

Class for binning list mode files with motion correction. More...

#include "stir_experimental/listmode/LmToProjDataWithMC.h"

Inheritance diagram for stir::LmToProjDataWithMC:
Inheritance graph
[legend]

Public Member Functions

 LmToProjDataWithMC (const char *const par_filename)
 
virtual void get_bin_from_event (Bin &bin, const CListEvent &) const
 
void process_new_time_event (const ListTime &time_event) override
 will be called after a new timing event is found in the file
 
Succeeded set_up () override
 Perform various checks. More...
 
- Public Member Functions inherited from stir::LmToProjData
 LmToProjData (const char *const par_filename)
 Constructor taking a filename for a parameter file. More...
 
 LmToProjData ()
 Default constructor. More...
 
void process_data () override
 This function does the actual work N.E: In order to keep the ToF functions separate from the non-TOF STIR this function just call the appropriate actual_process_data_with(out)_tof().
 
void set_template_proj_data_info_sptr (shared_ptr< const ProjDataInfo >)
 
shared_ptr< ProjDataInfoget_template_proj_data_info_sptr ()
 
virtual void set_input_data (const shared_ptr< ExamData > &)
 set input data More...
 
virtual void set_input_data (const std::string &filename)
 set input data More...
 
void set_output_filename_prefix (const std::string &)
 
std::string get_output_filename_prefix () const
 
void set_output_projdata_sptr (shared_ptr< ProjData > &)
 set projdata to be filled with output More...
 
void set_store_prompts (bool)
 
bool get_store_prompts () const
 
void set_store_delayeds (bool)
 
bool get_store_delayeds () const
 
void set_num_segments_in_memory (int)
 
int get_num_segments_in_memory () const
 
void set_num_events_to_store (long int)
 
long int get_num_events_to_store () const
 
void set_time_frame_definitions (const TimeFrameDefinitions &)
 
const TimeFrameDefinitionsget_time_frame_definitions () const
 
- Public Member Functions inherited from stir::LmToProjDataAbstract
 ~LmToProjDataAbstract () override
 Destructor.
 
- Public Member Functions inherited from stir::ParsingObject
 ParsingObject (const ParsingObject &)
 
ParsingObjectoperator= (const ParsingObject &)
 
void ask_parameters ()
 
virtual std::string parameter_info ()
 
bool parse (std::istream &f)
 
bool parse (const char *const filename)
 

Protected Member Functions

void start_new_time_frame (const unsigned int new_frame_num) override
 will be called when a new time frame starts More...
 
void set_defaults () override
 Set defaults before parsing.
 
void initialise_keymap () override
 Initialise all keywords.
 
bool post_processing () override
 This will be called at the end of the parsing. More...
 
- Protected Member Functions inherited from stir::LmToProjData
virtual void get_bin_from_event (Bin &bin, const ListEvent &) const
 will be called to get the bin for a coincidence event More...
 
int get_compression_count (const Bin &bin) const
 A function that should return the number of uncompressed bins in the current bin. More...
 
void do_post_normalisation (Bin &bin) const
 Computes a post-normalisation factor (if any) for this bin. More...
 
- Protected Member Functions inherited from stir::ParsingObject
virtual void set_key_values ()
 This will be called before parsing or parameter_info is called. More...
 

Protected Attributes

shared_ptr< RigidObject3DMotionro3d_ptr
 motion information
 
bool reference_position_is_average_position_in_frame
 switch between constant reference position, or one for each frame
 
shared_ptr< AbsTimeInterval_reference_abs_time_sptr
 constant reference position (if used)
 
- Protected Attributes inherited from stir::LmToProjData
shared_ptr< ListModeDatalm_data_ptr
 Pointer to the actual data.
 
TimeFrameDefinitions frame_defs
 Time frames.
 
double current_time
 stores the time (in secs) recorded in the previous timing event
 
unsigned int current_frame_num
 stores the current frame number More...
 
shared_ptr< const ProjDataInfoproj_data_info_cyl_uncompressed_ptr
 Internal variable that will be used for pre-normalisation. More...
 
bool do_time_frame
 variable that will be set according to if we are using time frames or num_events_to_store
 
int delayed_increment
 A variable that will be set to 1,0 or -1, according to store_prompts and store_delayeds.
 
bool _already_setup
 an internal bool variable to check if the object has been set-up or not
 
std::string input_filename
 
std::string output_filename_prefix
 
std::string template_proj_data_name
 
std::string frame_definition_filename
 frame definitions More...
 
bool do_pre_normalisation
 
bool store_prompts
 
bool store_delayeds
 
int num_segments_in_memory
 
int num_timing_poss_in_memory
 
long int num_events_to_store
 
int max_segment_num_to_process
 
bool interactive
 Toggle readable output on stdout or actual projdata. More...
 
shared_ptr< ProjDataInfotemplate_proj_data_info_ptr
 
shared_ptr< BinNormalisationnormalisation_ptr
 This will be used for pre-normalisation.
 
shared_ptr< BinNormalisationpost_normalisation_ptr
 This will be used for post-normalisation.
 
shared_ptr< ProjDataoutput_proj_data_sptr
 This will be used to return the output directly, if set.
 
- Protected Attributes inherited from stir::ParsingObject
KeyParser parser
 

Detailed Description

Class for binning list mode files with motion correction.

Implements LOR repositioning during bining of list mode data into sinograms.

Member Function Documentation

◆ set_up()

Succeeded stir::LmToProjDataWithMC::set_up ( )
overridevirtual

Perform various checks.

Note: this is currently called by post_processing(). This will change in version 5.0

Reimplemented from stir::LmToProjData.

◆ start_new_time_frame()

void stir::LmToProjDataWithMC::start_new_time_frame ( const unsigned int  new_frame_num)
overrideprotectedvirtual

will be called when a new time frame starts

The frame numbers start from 1.

Reimplemented from stir::LmToProjData.

References stir::RigidObject3DTransformation::get_quaternion(), stir::RigidObject3DTransformation::get_translation(), and stir::RigidObject3DTransformation::inverse().

◆ post_processing()

bool stir::LmToProjDataWithMC::post_processing ( )
overrideprotectedvirtual

This will be called at the end of the parsing.

Returns
false if everything OK, true if not

Reimplemented from stir::LmToProjData.


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