STIR  6.2.0
TrivialDataSymmetriesForBins.h
Go to the documentation of this file.
1 //
2 //
3 /*
4  Copyright (C) 2003- 2007, Hammersmith Imanet Ltd
5  This file is part of STIR.
6 
7  SPDX-License-Identifier: Apache-2.0
8 
9  See STIR/LICENSE.txt for details
10 */
21 #ifndef __stir_recon_buildblock_TrivialDataSymmetriesForBins_H__
22 #define __stir_recon_buildblock_TrivialDataSymmetriesForBins_H__
23 
25 
26 START_NAMESPACE_STIR
27 
35 {
36 public:
37  TrivialDataSymmetriesForBins(const shared_ptr<const ProjDataInfo>& proj_data_info_ptr);
38 
39  TrivialDataSymmetriesForBins* clone() const override;
40 
41  void get_related_bins(std::vector<Bin>&,
42  const Bin& b,
43  const int min_axial_pos_num,
44  const int max_axial_pos_num,
45  const int min_tangential_pos_num,
46  const int max_tangential_pos_num,
47  const int min_timing_pos_num,
48  const int max_timing_pos_num0) const override;
49 
50  void get_related_bins_factorised(std::vector<AxTangPosNumbers>&,
51  const Bin& b,
52  const int min_axial_pos_num,
53  const int max_axial_pos_num,
54  const int min_tangential_pos_num,
55  const int max_tangential_pos_num) const override;
56 
57  int num_related_bins(const Bin& b) const override;
58 
59  unique_ptr<SymmetryOperation> find_symmetry_operation_from_basic_bin(Bin&) const override;
60 
61  bool find_basic_bin(Bin& b) const override;
62 
63  bool is_basic(const Bin& v_s) const override;
64 
65  unique_ptr<SymmetryOperation> find_symmetry_operation_from_basic_view_segment_numbers(ViewSegmentNumbers&) const override;
66 
67  void get_related_view_segment_numbers(std::vector<ViewSegmentNumbers>&, const ViewSegmentNumbers&) const override;
68 
69  int num_related_view_segment_numbers(const ViewSegmentNumbers&) const override;
70  bool find_basic_view_segment_numbers(ViewSegmentNumbers&) const override;
71 
72 private:
73  bool blindly_equals(const root_type* const) const override;
74 };
75 
76 END_NAMESPACE_STIR
77 
78 #endif
Declaration of class stir::DataSymmetriesForBins.
A class for encoding/finding symmetries common to the geometry of the projection data and the discret...
Definition: DataSymmetriesForBins.h:67
A class for encoding/finding symmetries. Works only on ViewSegmentNumbers (instead of Bin)...
Definition: DataSymmetriesForViewSegmentNumbers.h:49
alias for ViewgramIndices
Definition: ViewSegmentNumbers.h:33
A class for storing coordinates and value of a single projection bin.
Definition: Bin.h:48
A class derived from DataSymmetriesForBins that says that there are no symmetries at all...
Definition: TrivialDataSymmetriesForBins.h:34