ATLAS Offline Software
TileMuonReceiverObj.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //****************************************************************************
6 // Filename : TileMuonReceiverObj.h
7 // Author : Joao Gentil Mendes Saraiva (jmendes@cern.ch)
8 // Created : February 2014
9 //
10 // DESCRIPTION
11 //
12 // Tile Muon Receiver object
13 //
14 // Properties (JobOption Parameters):
15 //
16 // BUGS:
17 //
18 // History:
19 //
20 //****************************************************************************
21 
22 #ifndef TILEEVENT_TILEMUONRECEIVEROBJ_H
23 #define TILEEVENT_TILEMUONRECEIVEROBJ_H
24 
25 #include <vector>
26 #include <string>
27 
29 
30  public:
31 
32  // constructor(s)
33  //
34  // thresholds: [dim 4] d6L d6H d56L d56H
35  // decision : [dim 4] 4-bit word
36  // ene : [dim 2] d6 d5+d6
37  // time : [dim 2] (t1+t2)/2 (t1+t2+t3+t4)/4 : 1..4 are the PMTs 1,2 > D6 and 3,4 > D5
38  //
39 
41 
42  TileMuonReceiverObj( int id ) { m_id=id; }
43 
44  TileMuonReceiverObj( int id, const std::vector<bool> &decision)
45  : m_id(id),
46  m_TileMuRcvDecision(decision)
47  {
48  }
49 
50  TileMuonReceiverObj( int id, const std::vector<float> &thresholds)
51  : m_id(id),
52  m_TileMuRcvThresholds(thresholds)
53  {
54  }
55 
56  TileMuonReceiverObj( int id, const std::vector<float> &ene, const std::vector<float> &time)
57  : m_id(id),
58  m_TileMuRcvEne(ene),
60  {
61  }
62 
63  TileMuonReceiverObj( int id, const std::vector<float> &ene, const std::vector<float> &time, const std::vector<bool> &decision)
64  : m_id(id),
65  m_TileMuRcvDecision(decision),
66  m_TileMuRcvEne(ene),
68 
69  {
70  }
71 
73  std::vector<float>&& ene,
74  std::vector<float>&& time,
75  std::vector<bool>&& decision,
76  std::vector<float>&& thresholds)
77  : m_id(id),
78  m_TileMuRcvDecision(std::move(decision)),
79  m_TileMuRcvThresholds(std::move(thresholds)),
80  m_TileMuRcvEne(std::move(ene)),
81  m_TileMuRcvTime(std::move(time))
82  {
83  }
84 
89 
90  // destructor
91  //
93 
94  // set methods
95  //
96  void Set(int id, const std::vector<bool> &decision)
97  { m_id=id; m_TileMuRcvDecision=decision; }
98 
99  void Set(int id, const std::vector<float> &thresholds)
100  { m_id=id; m_TileMuRcvThresholds=thresholds; }
101 
102  void Set(int id, const std::vector<float> &ene, const std::vector<float> &time)
104 
105  void Set(int id, const std::vector<float> &ene, const std::vector<float> &time, const std::vector<bool> &decision)
107 
108  // access methods
109  //
110  int GetID() const { return m_id; }
111 
112  inline int identify(void) const { return m_id; }
113 
114  const std::vector<bool>& GetDecision() const { return m_TileMuRcvDecision; } // [dim 4]
115  const std::vector<float>& GetThresholds() const { return m_TileMuRcvThresholds; } // [dim 4] ... it is the same for every event
116  const std::vector<float>& GetEne() const { return m_TileMuRcvEne; } // [dim 2] d6 and d5+d6
117  const std::vector<float>& GetTime() const { return m_TileMuRcvTime; } // [dim 2] (t1+t2)/2. and (t1+t2+t3+t4)/4. : 1..4 are the PMTs with 1,2 > D6 and 3,4 > D5
118 
119  // print methods
120  //
121  std::string whoami (void) const { return "TileMuonReceiverObj"; }
122 
123  void print(void) const;
124 
125  void clear(void);
126 
127  operator std::string() const;
128 
129  private:
130 
131  int m_id;
132  std::vector<bool> m_TileMuRcvDecision;
133  std::vector<float> m_TileMuRcvThresholds;
134  std::vector<float> m_TileMuRcvEne;
135  std::vector<float> m_TileMuRcvTime;
136 
137 };
138 
139 #endif
140 
TileMuonReceiverObj::m_id
int m_id
Definition: TileMuonReceiverObj.h:131
TileMuonReceiverObj::Set
void Set(int id, const std::vector< float > &thresholds)
Definition: TileMuonReceiverObj.h:99
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(const TileMuonReceiverObj &)=default
TileMuonReceiverObj::operator=
TileMuonReceiverObj & operator=(TileMuonReceiverObj &&)=default
TileMuonReceiverObj::m_TileMuRcvDecision
std::vector< bool > m_TileMuRcvDecision
Definition: TileMuonReceiverObj.h:132
TileMuonReceiverObj::m_TileMuRcvEne
std::vector< float > m_TileMuRcvEne
Definition: TileMuonReceiverObj.h:134
TileMuonReceiverObj::Set
void Set(int id, const std::vector< bool > &decision)
Definition: TileMuonReceiverObj.h:96
TileMuonReceiverObj::operator=
TileMuonReceiverObj & operator=(const TileMuonReceiverObj &)=default
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(int id, const std::vector< float > &ene, const std::vector< float > &time, const std::vector< bool > &decision)
Definition: TileMuonReceiverObj.h:63
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(int id, std::vector< float > &&ene, std::vector< float > &&time, std::vector< bool > &&decision, std::vector< float > &&thresholds)
Definition: TileMuonReceiverObj.h:72
TileMuonReceiverObj::print
void print(void) const
Definition: TileMuonReceiverObj.cxx:30
TileMuonReceiverObj::clear
void clear(void)
Definition: TileMuonReceiverObj.cxx:52
TileMuonReceiverObj::whoami
std::string whoami(void) const
Definition: TileMuonReceiverObj.h:121
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(TileMuonReceiverObj &&)=default
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj()
Definition: TileMuonReceiverObj.h:40
TileMuonReceiverObj::m_TileMuRcvThresholds
std::vector< float > m_TileMuRcvThresholds
Definition: TileMuonReceiverObj.h:133
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(int id, const std::vector< float > &ene, const std::vector< float > &time)
Definition: TileMuonReceiverObj.h:56
TileMuonReceiverObj::GetTime
const std::vector< float > & GetTime() const
Definition: TileMuonReceiverObj.h:117
TileMuonReceiverObj::m_TileMuRcvTime
std::vector< float > m_TileMuRcvTime
Definition: TileMuonReceiverObj.h:135
TileMuonReceiverObj::GetDecision
const std::vector< bool > & GetDecision() const
Definition: TileMuonReceiverObj.h:114
TileMuonReceiverObj::GetThresholds
const std::vector< float > & GetThresholds() const
Definition: TileMuonReceiverObj.h:115
TileMuonReceiverObj::Set
void Set(int id, const std::vector< float > &ene, const std::vector< float > &time)
Definition: TileMuonReceiverObj.h:102
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(int id, const std::vector< float > &thresholds)
Definition: TileMuonReceiverObj.h:50
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:239
TileMuonReceiverObj::~TileMuonReceiverObj
virtual ~TileMuonReceiverObj()
Definition: TileMuonReceiverObj.h:92
TileMuonReceiverObj::identify
int identify(void) const
Definition: TileMuonReceiverObj.h:112
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(int id, const std::vector< bool > &decision)
Definition: TileMuonReceiverObj.h:44
TileMuonReceiverObj::GetID
int GetID() const
Definition: TileMuonReceiverObj.h:110
TileMuonReceiverObj::TileMuonReceiverObj
TileMuonReceiverObj(int id)
Definition: TileMuonReceiverObj.h:42
TileMuonReceiverObj
Definition: TileMuonReceiverObj.h:28
CaloSwCorrections.time
def time(flags, cells_name, *args, **kw)
Definition: CaloSwCorrections.py:242
TileMuonReceiverObj::GetEne
const std::vector< float > & GetEne() const
Definition: TileMuonReceiverObj.h:116
TileMuonReceiverObj::Set
void Set(int id, const std::vector< float > &ene, const std::vector< float > &time, const std::vector< bool > &decision)
Definition: TileMuonReceiverObj.h:105