27 #ifndef __Sinogram_h__ 28 #define __Sinogram_h__ 45 template <
typename elemT>
46 class Sinogram :
public Array<2, elemT>
49 typedef Array<2, elemT> base_type;
50 #ifdef STIR_COMPILING_SWIG_WRAPPER 54 typedef Sinogram<elemT> self_type;
58 inline Sinogram(
const shared_ptr<const ProjDataInfo>& proj_data_info_sptr,
const SinogramIndices&);
61 inline Sinogram(
const Array<2, elemT>& p,
const shared_ptr<const ProjDataInfo>& proj_data_info_sptr,
const SinogramIndices&);
67 inline Sinogram(
const shared_ptr<const ProjDataInfo>& proj_data_info_ptr,
69 const int segment_num,
70 const int timing_pos_num = 0);
76 inline Sinogram(
const Array<2, elemT>& p,
77 const shared_ptr<const ProjDataInfo>& proj_data_info_ptr,
79 const int segment_num,
80 const int timing_pos_num = 0);
83 inline SinogramIndices get_sinogram_indices()
const;
85 inline int get_segment_num()
const;
87 inline int get_axial_pos_num()
const;
89 inline int get_timing_pos_num()
const;
91 inline int get_min_view_num()
const;
93 inline int get_max_view_num()
const;
95 inline int get_num_views()
const;
97 inline int get_min_tangential_pos_num()
const;
99 inline int get_max_tangential_pos_num()
const;
101 inline int get_num_tangential_poss()
const;
104 inline Sinogram get_empty_copy(
void)
const;
107 void grow(
const IndexRange<2>& range)
override;
109 void resize(
const IndexRange<2>& range)
override;
112 inline shared_ptr<const ProjDataInfo> get_proj_data_info_sptr()
const;
122 bool has_same_characteristics(self_type
const&, std::string& explanation)
const;
127 bool has_same_characteristics(self_type
const&)
const;
134 bool operator==(
const self_type&)
const;
137 bool operator!=(
const self_type&)
const;
141 shared_ptr<const ProjDataInfo> proj_data_info_ptr;
142 SinogramIndices _indices;
Declaration of class stir::ProjDataInfo.
Definition of class stir::SinogramIndices.
Import of std::shared_ptr, std::dynamic_pointer_cast and std::static_pointer_cast into the stir names...
defines the stir::Array class for multi-dimensional (numeric) arrays
Implementations of inline functions of class stir::Sinogram.