STIR  6.2.0
ProjMatrixElemsForOneBinValue.h
Go to the documentation of this file.
1 //
2 //
14 /*
15  Copyright (C) 2000 PARAPET partners
16  Copyright (C) 2000- 2009, Hammersmith Imanet Ltd
17  This file is part of STIR.
18 
19  SPDX-License-Identifier: Apache-2.0 AND License-ref-PARAPET-license
20 
21  See STIR/LICENSE.txt for details
22 */
23 
24 #ifndef __ProjMatrixElemsForOneBinValue_H__
25 #define __ProjMatrixElemsForOneBinValue_H__
26 
27 #include "stir/common.h"
28 
29 START_NAMESPACE_STIR
30 
31 template <int num_dimensions, typename coordT>
32 class BasicCoordinate;
33 
47 {
48 public:
49  explicit inline ProjMatrixElemsForOneBinValue(const BasicCoordinate<3, int>& coords, const float ivalue = 0);
50 
52 
54  inline BasicCoordinate<3, int> get_coords() const;
55 
57  inline int coord1() const;
59  inline int coord2() const;
61  inline int coord3() const;
62 
64  inline float get_value() const;
65 
67  inline ProjMatrixElemsForOneBinValue& operator+=(const ProjMatrixElemsForOneBinValue& el2);
69  inline ProjMatrixElemsForOneBinValue& operator*=(const float d);
71  inline ProjMatrixElemsForOneBinValue& operator+=(const float d);
73  inline ProjMatrixElemsForOneBinValue& operator/=(const float d);
74 
76 
78 
81  static inline bool coordinates_equal(const ProjMatrixElemsForOneBinValue& el1, const ProjMatrixElemsForOneBinValue& el2);
82 
84  static inline bool coordinates_less(const ProjMatrixElemsForOneBinValue& el1, const ProjMatrixElemsForOneBinValue& el2);
85 
87  friend inline bool operator==(const ProjMatrixElemsForOneBinValue& el1, const ProjMatrixElemsForOneBinValue& el2);
88 
90  friend inline bool operator<(const ProjMatrixElemsForOneBinValue& el1, const ProjMatrixElemsForOneBinValue& el2);
91 
92 private:
93  short c3, c2, c1;
94  float value;
95 };
96 
97 END_NAMESPACE_STIR
98 
100 
101 #endif // __ProjMatrixElemsForOneBinValue_H__
Stores voxel coordinates and the value of the matrix element.
Definition: ProjMatrixElemsForOneBinValue.h:46
Inline implementations for class stir::ProjMatrixElemsForOneBinValue.
basic configuration include file