7#ifndef __stir_motion_TimeFrameMotion__H__
8#define __stir_motion_TimeFrameMotion__H__
72 void move_to_reference(
const bool);
73 void set_frame_num_to_process(
const int);
75 int get_frame_num_to_process()
const;
86 return _transformation_to_reference_position;
91 double get_frame_start_time(
unsigned frame_num)
const {
return _frame_defs.get_start_time(frame_num) + _scan_start_time; }
93 double get_frame_end_time(
unsigned frame_num)
const {
return _frame_defs.get_end_time(frame_num) + _scan_start_time; }
95 const RigidObject3DMotion& get_motion()
const {
return *_ro3d_sptr; }
99 void set_defaults()
override;
100 void initialise_keymap()
override;
101 bool post_processing()
override;
104 std::string _frame_definition_filename;
105 bool _do_move_to_reference;
107 TimeFrameDefinitions _frame_defs;
108 shared_ptr<RigidObject3DMotion> _ro3d_sptr;
109 shared_ptr<AbsTimeInterval> _reference_abs_time_sptr;
110 RigidObject3DTransformation _current_rigid_object_transformation;
112 RigidObject3DTransformation _transformation_to_reference_position;
114 int _scan_start_time_secs_since_1970_UTC;
115 double _scan_start_time;
117 int _frame_num_to_process;
Declaration of class stir::AbsTimeInterval.
Declaration of class stir::ParsingObject.
Declaration of class stir::RigidObject3DMotion.
Declaration of class stir::Succeeded.
Declaration of class stir::TimeFrameDefinitions.
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition Succeeded.h:44
Class used for storing time frame durations.
Definition TimeFrameDefinitions.h:39
A class for encoding average motion in the frames.
Definition TimeFrameMotion.h:62
const RigidObject3DTransformation & get_rigid_object_transformation_to_reference() const
Get the transformation to the reference as returned by the RigidObject3DMotion object.
Definition TimeFrameMotion.h:84
const RigidObject3DTransformation & get_current_rigid_object_transformation() const
get transformation from (or to) reference for current frame
Definition TimeFrameMotion.cxx:152
Import of std::shared_ptr, std::dynamic_pointer_cast and std::static_pointer_cast into the stir names...