CASToR  3.0
Tomographic Reconstruction (PET/SPECT/CT)
iEventNorm.hh
Go to the documentation of this file.
1 /*
2 This file is part of CASToR.
3 
4  CASToR is free software: you can redistribute it and/or modify it under the
5  terms of the GNU General Public License as published by the Free Software
6  Foundation, either version 3 of the License, or (at your option) any later
7  version.
8 
9  CASToR is distributed in the hope that it will be useful, but WITHOUT ANY
10  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
12  details.
13 
14  You should have received a copy of the GNU General Public License along with
15  CASToR (in file GNU_GPL.TXT). If not, see <http://www.gnu.org/licenses/>.
16 
17 Copyright 2017-2019 all CASToR contributors listed below:
18 
19  --> Didier BENOIT, Claude COMTAT, Marina FILIPOVIC, Thibaut MERLIN, Mael MILLARDET, Simon STUTE, Valentin VIELZEUF
20 
21 This is CASToR version 3.0.
22 */
23 
30 #ifndef IEVENTNORM_HH
31 #define IEVENTNORM_HH 1
32 
33 #include "vEvent.hh"
34 
42 class iEventNorm : public vEvent
43 {
44  // -------------------------------------------------------------------
45  // Constructor & Destructor
46  public:
51  iEventNorm();
55  ~iEventNorm();
56 
57  // -------------------------------------------------------------------
58  // Public member functions
59  public:
66  inline int AllocateSpecificData() {return 0;}
71  void Describe();
72 
73  // -------------------------------------------------------------------
74  // Public Get & Set functions
75  public:
81  inline void SetNormalizationFactor(FLTNBDATA a_value)
82  {m_normalizationFactor = (FLTNB)a_value;}
101  {return m_normalizationFactor;}
108 
109  // -------------------------------------------------------------------
110  // Public functions that should not be used, so they throw an error and crash
111  public:
118  FLTNB GetEventValue(int a_bin);
125  FLTNB GetAdditiveCorrections(int a_bin);
132  void SetEventValue(int a_bin, FLTNBDATA a_value);
144  void MultiplyAdditiveCorrections(FLTNB a_factor);
145 
146  // -------------------------------------------------------------------
147  // Private member functions
148  private:
149 
150  // -------------------------------------------------------------------
151  // Data members
152  protected:
155 };
156 
157 #endif
INTNB GetNbValueBins()
Not used, so throw an error and Exit.
Definition: iEventNorm.cc:119
FLTNB GetMultiplicativeCorrections()
Definition: iEventNorm.hh:94
#define FLTNB
Definition: gVariables.hh:81
FLTNB GetAttenuationCorrectionFactor()
Definition: iEventNorm.hh:106
FLTNB GetEventValue(int a_bin)
Not used, so throw an error and Exit.
Definition: iEventNorm.cc:75
iEventNorm()
iEventNorm constructor. Initialize the member variables to their default values.
Definition: iEventNorm.cc:40
void Describe()
This function can be used to get a description of the event printed out.
Definition: iEventNorm.cc:59
void SetEventValue(int a_bin, FLTNBDATA a_value)
Not used, so throw an error and Exit.
Definition: iEventNorm.cc:105
FLTNB m_attenuationCorrectionFactor
Definition: iEventNorm.hh:154
#define FLTNBDATA
Definition: gVariables.hh:87
void SetAttenuationCorrectionFactor(FLTNBDATA a_value)
Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the attenuation correction facto...
Definition: iEventNorm.hh:88
FLTNB GetAdditiveCorrections(int a_bin)
Not used, so throw an error and Exit.
Definition: iEventNorm.cc:90
FLTNB m_normalizationFactor
Definition: iEventNorm.hh:153
void SetNormalizationFactor(FLTNBDATA a_value)
Cast the FLTNBDATA value passed as parameter in FLTNB, and set it to the normalization term...
Definition: iEventNorm.hh:81
Declaration of class vEvent.
Inherit from vEvent. Used for normalization events for sensitivity computation.
Definition: iEventNorm.hh:42
#define INTNB
Definition: gVariables.hh:92
Mother class for the Event objects.
Definition: vEvent.hh:42
void MultiplyAdditiveCorrections(FLTNB a_factor)
Not used, so throw an error and Exit.
Definition: iEventNorm.cc:134
~iEventNorm()
iEventNorm destructor
Definition: iEventNorm.cc:52
int AllocateSpecificData()
Inherited and pure virtual from vEvent.
Definition: iEventNorm.hh:66
FLTNB GetNormalizationFactor()
Definition: iEventNorm.hh:100