|
STIR
6.3.0
|
Base class for 3D rigid motion. More...
#include "stir_experimental/motion/RigidObject3DMotion.h"

Public Member Functions | |
| virtual RigidObject3DTransformation | get_motion_in_tracker_coords_rel_time (const double time) const =0 |
| get motion in tracker coordinates | |
| virtual RigidObject3DTransformation | get_motion_in_scanner_coords_rel_time (const double time) const |
| get motion in scanner coordinates | |
| virtual std::vector< double > | get_rel_time_of_samples (const double start_time, const double end_time) const =0 |
| Info on when the motion was determined. More... | |
| virtual Succeeded | synchronise ()=0 |
| Has to be called and will be used to synchronise the target-system time and motion tracking time. More... | |
| virtual double | secs_since_1970_to_rel_time (std::time_t) const =0 |
| virtual const RigidObject3DTransformation & | get_transformation_to_scanner_coords () const =0 |
| virtual const RigidObject3DTransformation & | get_transformation_from_scanner_coords () const =0 |
| virtual void | set_transformation_from_scanner_coords (const RigidObject3DTransformation &)=0 |
Average motion for a time interval | |
| virtual RigidObject3DTransformation | compute_average_motion_in_tracker_coords (const AbsTimeInterval &) const |
| virtual RigidObject3DTransformation | compute_average_motion_in_scanner_coords (const AbsTimeInterval &) const |
| virtual RigidObject3DTransformation | compute_average_motion_in_tracker_coords_rel_time (const double start_time, const double end_time) const =0 |
| virtual RigidObject3DTransformation | compute_average_motion_in_scanner_coords_rel_time (const double start_time, const double end_time) const |
Public Member Functions inherited from stir::RegisteredObjectBase | |
| virtual std::string | get_registered_name () const =0 |
| Returns the name of the type of the object. More... | |
Public Member Functions inherited from stir::ParsingObject | |
| ParsingObject (const ParsingObject &) | |
| ParsingObject & | operator= (const ParsingObject &) |
| void | ask_parameters () |
| virtual std::string | parameter_info () |
| bool | parse (std::istream &f) |
| bool | parse (const char *const filename) |
Protected Member Functions | |
| virtual bool | is_synchronised () const =0 |
| Temporary (?) function to allow base class to see if synchronised was called or not. | |
| 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::ParsingObject | |
| virtual void | set_key_values () |
| This will be called before parsing or parameter_info is called. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from stir::RegisteredObject< RigidObject3DMotion > | |
| static RigidObject3DMotion * | read_registered_object (std::istream *in, const std::string ®istered_name) |
| Construct a new object (of a type derived from Root, its actual type determined by the registered_name parameter) by parsing the istream. More... | |
| static RigidObject3DMotion * | ask_type_and_parameters () |
| ask the user for the type, and then calls read_registered_object(0, type) More... | |
| static void | list_registered_names (std::ostream &stream) |
| List all possible registered names to the stream. More... | |
Protected Types inherited from stir::RegisteredObject< RigidObject3DMotion > | |
| typedef RigidObject3DMotion *(* | 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_less > | RegistryType |
| The type of the registry. | |
Static Protected Member Functions inherited from stir::RegisteredObject< RigidObject3DMotion > | |
| static RegistryType & | registry () |
| Static function returning the registry. More... | |
Protected Attributes inherited from stir::ParsingObject | |
| KeyParser | parser |
Base class for 3D rigid motion.
This is really a class for encoding motion of an object in a scanner. So, there is some stuff in here to go from tracker coordinates to scanner coordinates etc.
Preliminary. Things that need to be worked out:
|
pure virtual |
Info on when the motion was determined.
Will return a vector of doubles filled with the sampling times between start_time and end_time.
SampledRigidObject3DMotion or so. Implemented in stir::RigidObject3DMotionFromPolaris.
|
pure virtual |
Has to be called and will be used to synchronise the target-system time and motion tracking time.
In practice, this should make sure that a 'rel_time' of 0 corresponds to the start of the scan
Implemented in stir::RigidObject3DMotionFromPolaris.
|
overrideprotectedvirtual |
This will be called at the end of the parsing.
Reimplemented from stir::ParsingObject.
Reimplemented in stir::RigidObject3DMotionFromPolaris.
References stir::compose(), stir::RigidObject3DTransformation::get_quaternion(), stir::RigidObject3DTransformation::get_translation(), stir::RigidObject3DTransformation::inverse(), and stir::warning().
1.8.13