HerdSoftware  0.1.1
FitChannelInfo.h
Go to the documentation of this file.
1 /*
2  * FitChannelInfo.h
3  *
4  * Created on: 20 Apr 2020
5  * Author: Valerio Formato
6  */
7 
8 #ifndef HERD_FitChannelInfo_H_
9 #define HERD_FitChannelInfo_H_
10 
11 #ifdef HS_USE_ROOT
12 #include "Rtypes.h"
13 #endif
14 
15 #include <bitset>
16 #include <vector>
17 
18 namespace Herd {
20 public:
22  virtual ~FitChannelInfo() = default;
23 
28  void SetNChannels(size_t nChannels) {
29  m_nChannels = nChannels;
30  m_pedestals.resize(m_nChannels);
31  m_noises.resize(m_nChannels);
32  m_flags.resize(m_nChannels);
33  };
34 
39  size_t GetNChannels() { return m_nChannels; }
40 
46  float GetChannelPedestal(size_t channelID) const { return m_pedestals[channelID]; };
47 
53  float GetChannelNoise(size_t channelID) const { return m_noises[channelID]; };
54 
60  std::bitset<16> GetChannelFlags(size_t channelID) const { return m_flags[channelID]; };
61 
67  void SetChannelPedestal(size_t channelID, float value) { m_pedestals[channelID] = value; };
68 
74  void SetChannelNoise(size_t channelID, float value) { m_noises[channelID] = value; };
75 
81  void SetChannelFlags(size_t channelID, std::bitset<16> value) { m_flags[channelID] = value; };
82 
83 private:
84  size_t m_nChannels = 0;
85  std::vector<float> m_pedestals;
86  std::vector<float> m_noises;
87  std::vector<std::bitset<16>> m_flags;
88 
89 #ifdef HS_USE_ROOT
90  ClassDef(FitChannelInfo, 1)
91 #endif
92 };
93 } // namespace Herd
94 
95 #endif
std::vector< float > m_pedestals
Definition: FitChannelInfo.h:85
CssGeoParams.h CssGeoParams class declaration.
Definition: CaloPDCalibrationAlgo.h:24
Definition: FitChannelInfo.h:19
void SetNChannels(size_t nChannels)
Setup the total number of channels.
Definition: FitChannelInfo.h:28
std::vector< float > m_noises
Definition: FitChannelInfo.h:86
void SetChannelPedestal(size_t channelID, float value)
Set the pedestal for a given channel.
Definition: FitChannelInfo.h:67
void SetChannelFlags(size_t channelID, std::bitset< 16 > value)
Set the calibration flags for a given channel.
Definition: FitChannelInfo.h:81
float GetChannelNoise(size_t channelID) const
Get the noise for a given channel.
Definition: FitChannelInfo.h:53
size_t GetNChannels()
Return the total number of channels.
Definition: FitChannelInfo.h:39
void SetChannelNoise(size_t channelID, float value)
Set the noise for a given channel.
Definition: FitChannelInfo.h:74
float GetChannelPedestal(size_t channelID) const
Get the pedestal for a given channel.
Definition: FitChannelInfo.h:46
size_t m_nChannels
Definition: FitChannelInfo.h:84
std::bitset< 16 > GetChannelFlags(size_t channelID) const
Get the calibration flags for a given channel.
Definition: FitChannelInfo.h:60
virtual ~FitChannelInfo()=default
Virtual destructor.
std::vector< std::bitset< 16 > > m_flags
Definition: FitChannelInfo.h:87