ATLAS Offline Software
Loading...
Searching...
No Matches
LArRawSC.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef LARRAWSC_H
6#define LARRAWSC_H
7#include <vector>
8#include <utility> //for std::move
9
11
18
19class LArRawSC final{
20
21 private:
22
25
27 short m_chan = 0;
28
30 unsigned int m_sourceId = 0U;
31
33 std::vector < int > m_energies;
34
36 std::vector < unsigned short > m_BCId;
37
39 std::vector < bool > m_satur;
40
42 std::vector < bool > m_passTauSelection;
43
45 std::vector< int > m_tauEnergies;
46
49
52
55
56 public:
62 LArRawSC(const HWIdentifier& channel_value, const short chan,
63 const unsigned int sourceId, const std::vector<int>& energies,
64 const std::vector<unsigned short>& bcids, std::vector<bool>& satur)
65 : m_hardwareID(channel_value),
66 m_chan(chan),
67 m_sourceId(sourceId),
71 m_ofcaOverflow(false),
72 m_ofcbOverflow(false),
73 m_pedOverflow(false) {}
74
75 LArRawSC(const HWIdentifier& channel_value, const short chan,
76 const unsigned int sourceId, std::vector<int>&& energies,
77 std::vector<unsigned short>&& bcids, std::vector<bool>&& satur)
78 : m_hardwareID(channel_value),
79 m_chan(chan),
80 m_sourceId(sourceId),
81 m_energies(std::move(energies)),
82 m_BCId(std::move(bcids)),
83 m_satur(std::move(satur)),
84 m_ofcaOverflow(false),
85 m_ofcbOverflow(false),
86 m_pedOverflow(false) {}
87
89 const HWIdentifier& hardwareID() const { return m_hardwareID; }
90
92 short chan() const { return m_chan; }
93
95 unsigned int SourceId() const { return m_sourceId; }
96
98 int nsamples() const { return m_energies.size(); }
99
101 const std::vector<int>& energies() const { return m_energies; }
102
104 const std::vector<unsigned short>& bcids() const { return m_BCId; }
105
107 const std::vector<bool>& satur() const { return m_satur; }
108
110 const std::vector<int>& tauEnergies() const { return m_tauEnergies; }
111
113 const std::vector<bool>& passTauSelection() const {
114 return m_passTauSelection; }
115
117 bool ofcaOverflow() const { return m_ofcaOverflow; }
118
120 bool ofcbOverflow() const { return m_ofcbOverflow; }
121
123 bool pedOverflow() const { return m_pedOverflow; }
124
125
127 void setHardwareId(const HWIdentifier id);
128
130 void setChannel(const unsigned chan);
131
133 void setSourceId(const unsigned sourceId);
134
138 void setEnergies( const std::vector < int >&& energies);
139
143 void setBCIds( const std::vector < unsigned short >&& bcids);
144
148 void setTauEnergies( const std::vector < int >&& tauEnergies);
149
151 void setPassTauSelection( const std::vector < bool >&& pass);
152
153
155 void setSaturation( const std::vector < bool >&& satur);
156
158 void setOFCaOverflow(bool overflow){ m_ofcaOverflow=overflow; }
159
161 void setOFCbOverflow(bool overflow){ m_ofcbOverflow=overflow; }
162
164 void setPedOverflow(bool overflow){ m_pedOverflow=overflow; }
165
167 LArRawSC() = default;
169 LArRawSC(const LArRawSC&) = default;
170 LArRawSC(LArRawSC&&) = default;
171 LArRawSC& operator=(const LArRawSC&) = default;
174 ~LArRawSC() = default;
175
176
177};
178
179#endif //LArRawSC_H
180
void setBCIds(const std::vector< unsigned short > &&bcids)
Set bcids.
Definition LArRawSC.cxx:13
unsigned int SourceId() const
Definition LArRawSC.h:95
void setSaturation(const std::vector< bool > &&satur)
@set saturation flags
Definition LArRawSC.cxx:40
void setEnergies(const std::vector< int > &&energies)
Set energies .
Definition LArRawSC.cxx:8
short chan() const
Definition LArRawSC.h:92
void setHardwareId(const HWIdentifier id)
Set identifier.
Definition LArRawSC.cxx:28
bool m_ofcbOverflow
OFCb Overflow.
Definition LArRawSC.h:51
std::vector< int > m_energies
vector of energies
Definition LArRawSC.h:33
short m_chan
Latome channel.
Definition LArRawSC.h:27
const std::vector< bool > & satur() const
Definition LArRawSC.h:107
LArRawSC()=default
default constructor for persistency
std::vector< unsigned short > m_BCId
vector of bcids
Definition LArRawSC.h:36
void setTauEnergies(const std::vector< int > &&tauEnergies)
Set energies*taus .
Definition LArRawSC.cxx:18
~LArRawSC()=default
Destructor.
void setPassTauSelection(const std::vector< bool > &&pass)
@set true if passes the tau selection
Definition LArRawSC.cxx:23
void setOFCbOverflow(bool overflow)
@set OFCb Overflow
Definition LArRawSC.h:161
const std::vector< bool > & passTauSelection() const
Definition LArRawSC.h:113
const std::vector< unsigned short > & bcids() const
Definition LArRawSC.h:104
void setOFCaOverflow(bool overflow)
@set OFCa Overflow
Definition LArRawSC.h:158
void setSourceId(const unsigned sourceId)
Set source id.
Definition LArRawSC.cxx:36
bool ofcbOverflow() const
Definition LArRawSC.h:120
unsigned int m_sourceId
LATOME source Id.
Definition LArRawSC.h:30
void setChannel(const unsigned chan)
Set channel number.
Definition LArRawSC.cxx:32
bool m_ofcaOverflow
OFCa Overflow.
Definition LArRawSC.h:48
const std::vector< int > & tauEnergies() const
Definition LArRawSC.h:110
LArRawSC & operator=(LArRawSC &&)=default
const std::vector< int > & energies() const
Definition LArRawSC.h:101
LArRawSC & operator=(const LArRawSC &)=default
bool pedOverflow() const
Definition LArRawSC.h:123
const HWIdentifier & hardwareID() const
Definition LArRawSC.h:89
int nsamples() const
Definition LArRawSC.h:98
LArRawSC(const HWIdentifier &channel_value, const short chan, const unsigned int sourceId, const std::vector< int > &energies, const std::vector< unsigned short > &bcids, std::vector< bool > &satur)
constructor
Definition LArRawSC.h:62
bool m_pedOverflow
pedestal Overflow
Definition LArRawSC.h:54
std::vector< bool > m_satur
vector of saturation flags
Definition LArRawSC.h:39
std::vector< bool > m_passTauSelection
did pass tau selection
Definition LArRawSC.h:42
void setPedOverflow(bool overflow)
@set pedestal Overflow
Definition LArRawSC.h:164
bool ofcaOverflow() const
Definition LArRawSC.h:117
std::vector< int > m_tauEnergies
vector of taus*energies
Definition LArRawSC.h:45
HWIdentifier m_hardwareID
Online Identifier.
Definition LArRawSC.h:24
LArRawSC(LArRawSC &&)=default
LArRawSC(const HWIdentifier &channel_value, const short chan, const unsigned int sourceId, std::vector< int > &&energies, std::vector< unsigned short > &&bcids, std::vector< bool > &&satur)
Definition LArRawSC.h:75
LArRawSC(const LArRawSC &)=default
default copy/move assignement
STL namespace.