23#ifndef __stir_ProjDataInfoCylindricalNoArcCorr_H__
24#define __stir_ProjDataInfoCylindricalNoArcCorr_H__
86#ifdef STIR_COMPILING_SWIG_WRAPPER
98 const float ring_radius,
99 const float angular_increment,
104 const int num_tangential_poss,
105 const int tof_mash_factor = 0);
115 const int num_tangential_poss,
116 const int tof_mash_factor = 0);
118 self_type*
clone()
const override;
120 bool operator==(
const self_type&)
const;
127 inline float get_s(
const Bin&)
const override;
220 bool ignore_non_spatial_dimensions =
true)
const;
236 const int mashed_timing_pos_num = 0)
const;
247 inline void get_det_pair_for_bin(
int& det_num1,
int& ring_num1,
int& det_num2,
int& ring_num2,
const Bin& bin)
const;
269 const Bin& bin)
const;
277 const int timing_pos_num)
const;
279 void find_bin_given_cartesian_coordinates_of_detection(
Bin& bin,
286 float angular_increment;
289 float get_psi_offset()
const;
298 mutable bool uncompressed_view_tangpos_to_det1det2_initialised;
300 void initialise_uncompressed_view_tangpos_to_det1det2()
const;
304 struct ViewTangPosSwap
311 mutable bool det1det2_to_uncompressed_view_tangpos_initialised;
313 void initialise_det1det2_to_uncompressed_view_tangpos()
const;
316 inline void initialise_uncompressed_view_tangpos_to_det1det2_if_not_done_yet()
const;
318 inline void initialise_det1det2_to_uncompressed_view_tangpos_if_not_done_yet()
const;
defines the stir::CartesianCoordinate3D<coordT> class
Declaration of class stir::DetectionPositionPair.
Implementation of inline functions of class ProjDataInfoCylindricalNoArcCorr.
Declaration of class stir::ProjDataInfoCylindrical.
defines the stir::VectorWithOffset class
A class for storing coordinates and value of a single projection bin.
Definition Bin.h:49
a templated class for 3-dimensional coordinates.
Definition CartesianCoordinate3D.h:53
A class for storing 2 coordinates-sets of a detection, together with a timing-position index (for TOF...
Definition DetectionPositionPair.h:41
A base class for specifying an LOR with geometric coordinates.
Definition LORCoordinates.h:59
void get_det_num_pair_for_view_tangential_pos_num(int &det1_num, int &det2_num, const int view_num, const int tang_pos_num) const
This routine gets det_num1 and det_num2.
Definition ProjDataInfoCylindricalNoArcCorr.inl:90
std::string parameter_info() const override
Return a string describing the object.
Definition ProjDataInfoCylindricalNoArcCorr.cxx:118
Bin get_bin(const LOR< float > &, const double delta_time=0.0) const override
Find the bin in the projection data that 'contains' an LOR.
Definition ProjDataInfoCylindricalNoArcCorr.cxx:536
unsigned int get_num_det_pos_pairs_for_bin(const Bin &, bool ignore_non_spatial_dimensions=true) const
This routine returns the number of detector pairs that correspond to a bin.
Definition ProjDataInfoCylindricalNoArcCorr.cxx:304
void get_all_det_pos_pairs_for_bin(std::vector< DetectionPositionPair<> > &, const Bin &, bool ignore_non_spatial_dimensions=true) const
This routine fills a vector with all the detector pairs that correspond to a bin.
Definition ProjDataInfoCylindricalNoArcCorr.cxx:311
void get_det_pair_for_bin(int &det_num1, int &ring_num1, int &det_num2, int &ring_num2, const Bin &bin) const
This routine gets the detector pair corresponding to a bin.
Definition ProjDataInfoCylindricalNoArcCorr.inl:145
virtual Succeeded find_scanner_coordinates_given_cartesian_coordinates(int &det1, int &det2, int &ring1, int &ring2, const CartesianCoordinate3D< float > &c1, const CartesianCoordinate3D< float > &c2) const
Definition ProjDataInfoCylindricalNoArcCorr.cxx:361
bool get_view_tangential_pos_num_for_det_num_pair(int &view_num, int &tang_pos_num, const int det1_num, const int det2_num) const
This gets view_num and tang_pos_num for a particular detector pair.
Definition ProjDataInfoCylindricalNoArcCorr.inl:103
void get_det_pos_pair_for_bin(DetectionPositionPair<> &, const Bin &) const
This routine gets the detector pair corresponding to a bin.
Definition ProjDataInfoCylindricalNoArcCorr.inl:161
Succeeded get_bin_for_det_pos_pair(Bin &, const DetectionPositionPair<> &) const
This gets Bin coordinates for a particular detector pair.
Definition ProjDataInfoCylindricalNoArcCorr.inl:133
ProjDataInfoCylindricalNoArcCorr()
Default constructor (leaves object in ill-defined state)
Definition ProjDataInfoCylindricalNoArcCorr.cxx:44
self_type * clone() const override
Standard trick for a 'virtual copy-constructor'.
Definition ProjDataInfoCylindricalNoArcCorr.cxx:97
float get_angular_increment() const
Gets angular increment (in radians)
Definition ProjDataInfoCylindricalNoArcCorr.inl:84
float get_s(const Bin &) const override
Gets s coordinate in mm.
Definition ProjDataInfoCylindricalNoArcCorr.inl:78
bool blindly_equals(const root_type *const) const override
Definition ProjDataInfoCylindricalNoArcCorr.cxx:111
ProjDataInfoCylindrical()
Constructors.
Definition ProjDataInfoCylindrical.cxx:53
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition Succeeded.h:44
A templated class for vectors, but with indices starting not from 0.
Definition VectorWithOffset.h:65