STIR  6.2.0
fwd_and_bck_manipulation_for_SAF.h
1 /*
2  \author Sanida Mustafovic
3  Copyright (C) 2000- 2002, IRSL
4  SPDX-License-Identifier: Apache-2.0
5  See STIR/LICENSE.txt for details
6 */
7 
8 #include "stir/ProjData.h"
10 #include "stir/VectorWithOffset.h"
11 #include "stir/SegmentByView.h"
13 
14 START_NAMESPACE_STIR
15 void fwd_project(ProjData& proj_data,
16  VoxelsOnCartesianGrid<float>* vox_image_ptr,
17  const int start_segment_num,
18  const int end_segment_num,
19  const int start_axial_pos_num,
20  const int end_axial_pos_num,
21  const int start_view,
22  const int end_view,
23  const int start_tang_pos_num,
24  const int end_tang_pos_num);
25 
26 void do_segments_densels_fwd(const VoxelsOnCartesianGrid<float>& image,
27  ProjData& proj_data,
28  VectorWithOffset<SegmentByView<float>*>& all_segments,
29  const int min_z,
30  const int max_z,
31  const int min_y,
32  const int max_y,
33  const int min_x,
34  const int max_x,
35  ProjMatrixByDensel& proj_matrix);
36 
37 void fwd_densels_all(VectorWithOffset<SegmentByView<float>*>& all_segments,
38  shared_ptr<ProjMatrixByDensel> proj_matrix_ptr,
39  shared_ptr<ProjData> proj_data_ptr,
40  const int min_z,
41  const int max_z,
42  const int min_y,
43  const int max_y,
44  const int min_x,
45  const int max_x,
46  const DiscretisedDensity<3, float>& in_density);
47 
48 void find_inverse_and_bck_densels(DiscretisedDensity<3, float>& image,
49  VectorWithOffset<SegmentByView<float>*>& all_segments,
50  VectorWithOffset<SegmentByView<float>*>& attenuation_segmnets,
51  const int min_z,
52  const int max_z,
53  const int min_y,
54  const int max_y,
55  const int min_x,
56  const int max_x,
57  ProjMatrixByDensel& proj_matrix,
58  bool do_attenuation,
59  const float threshold,
60  bool normalize_result);
61 
62 END_NAMESPACE_STIR
Declaration of class stir::ProjData.
defines the stir::VectorWithOffset class
Declaration of class stir::SegmentByView.
defines the stir::VoxelsOnCartesianGrid class
declaration of ProjMatrixByDensel and its helpers classes