ATLAS Offline Software
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 //***************************************************************************
5 
6  #ifndef CMXCPTob_H
7  #define CMXCPTob_H
8 
9  #include "AthenaKernel/CLASS_DEF.h"
10 
11 
12  #include <iostream>
13  #ifndef TRIGGERSPACE
15  #else
16  #include "Coordinate.h"
17  #endif
18  namespace LVL1 {
19 
24  class CMXCPTob {
25  public:
26 
28  CMXCPTob();
29  CMXCPTob(int crate, int cmx, int cpm, int chip, int loc);
30  CMXCPTob(int crate, int cmx, int cpm, int chip, int loc,
31  const std::vector<int>& energy,
32  const std::vector<int>& isolation,
33  const std::vector<int>& error,
34  const std::vector<unsigned int>& presenceMap,
35  int peak);
36 
37  virtual ~CMXCPTob();
38 
40  void setPeak(int peak);
42  void addTob(const std::vector<int>& energy,
43  const std::vector<int>& isolation,
44  const std::vector<int>& error,
45  const std::vector<unsigned int>& presenceMap);
46 
48  int crate() const;
49  int cmx() const;
50  int cpm() const;
51  int chip() const;
52  int location() const;
54  int energy() const;
55  int isolation() const;
56  int error() const;
57  unsigned int presenceMap() const; // filled for neutral format data only
59  const std::vector<int>& energyVec() const;
60  const std::vector<int>& isolationVec() const;
61  const std::vector<int>& errorVec() const;
62  const std::vector<unsigned int>& presenceMapVec() const;
63  int peak() const;
64 
66  private:
67  int m_crate;
68  int m_cmx;
69  int m_cpm;
70  int m_chip;
72  int m_peak;
73  std::vector<int> m_energy;
74  std::vector<int> m_isolation;
75  std::vector<int> m_error;
76  std::vector<unsigned int> m_presenceMap;
77 
78  };
79 
81  inline int CMXCPTob::crate() const{
82  return m_crate;
83  }
84  // <<== CHECK
86  inline int CMXCPTob::cmx() const{
87  return m_cmx;
88  }
89 
91  inline int CMXCPTob::cpm() const{
92  return m_cpm;
93  }
94 
96  inline int CMXCPTob::chip() const{
97  return m_chip;
98  }
99 
101  inline int CMXCPTob::location() const{
102  return m_location;
103  }
104 
106  inline int CMXCPTob::energy() const{
107  return m_energy[m_peak];
108  }
109 
111  inline int CMXCPTob::isolation() const{
112  return m_isolation[m_peak];
113  }
114 
116  inline int CMXCPTob::error() const{
117  return m_error[m_peak];
118  }
119 
121  inline unsigned int CMXCPTob::presenceMap() const{
122  return m_presenceMap[m_peak];
123  }
124 
126  inline const std::vector<int>& CMXCPTob::energyVec() const{
127  return m_energy;
128  }
129 
131  inline const std::vector<int>& CMXCPTob::isolationVec() const{
132  return m_isolation;
133  }
134 
136  inline const std::vector<int>& CMXCPTob::errorVec() const{
137  return m_error;
138  }
139 
141  inline const std::vector<unsigned int>& CMXCPTob::presenceMapVec() const{
142  return m_presenceMap;
143  }
144 
146  inline void CMXCPTob::addTob(const std::vector<int>& energy,
147  const std::vector<int>& isolation,
148  const std::vector<int>& error,
149  const std::vector<unsigned int>& presenceMap) {
150  m_energy = energy;
152  m_error = error;
154  }
155 
157  inline void CMXCPTob::setPeak(int peak) {
158  m_peak = peak;
159  }
160 
162  inline int CMXCPTob::peak() const{
163  return m_peak;
164  }
165 
166 } // end of namespace
167 
168 #ifndef CMXCPTob_ClassDEF_H
170 #endif
171 
172 #endif
LVL1::CMXCPTob::cmx
int cmx() const
returns CMX number (0/1)==(Left/Right)==(Tau/Em)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:86
LVL1::CMXCPTob::m_error
std::vector< int > m_error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:75
LVL1::CMXCPTob::errorVec
const std::vector< int > & errorVec() const
returns error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:136
LVL1::CMXCPTob::m_presenceMap
std::vector< unsigned int > m_presenceMap
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:76
LVL1::CMXCPTob::m_cmx
int m_cmx
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:68
LVL1::CMXCPTob::isolation
int isolation() const
returns isolation for peak sample
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:111
LVL1::CMXCPTob::m_isolation
std::vector< int > m_isolation
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:74
LVL1::CMXCPTob::~CMXCPTob
virtual ~CMXCPTob()
Definition: CMXCPTob.cxx:30
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::CMXCPTob::CMXCPTob
CMXCPTob()
Constructors.
Definition: CMXCPTob.cxx:16
LVL1::CMXCPTob::energy
int energy() const
For triggered time slice.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:106
LVL1::CMXCPTob::m_location
int m_location
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:71
LVL1::CMXCPTob::isolationVec
const std::vector< int > & isolationVec() const
returns isolation
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:131
LVL1::CMXCPTob::m_crate
int m_crate
Internal data.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:67
LVL1::CMXCPTob::error
int error() const
returns error for peak sample
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:116
ParticleGun_FastCalo_ChargeFlip_Config.energy
energy
Definition: ParticleGun_FastCalo_ChargeFlip_Config.py:78
LVL1::CMXCPTob::m_energy
std::vector< int > m_energy
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:73
LVL1::CMXCPTob::energyVec
const std::vector< int > & energyVec() const
For multi-slice readout.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:126
LVL1::CMXCPTob::m_cpm
int m_cpm
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:69
Coordinate.h
Coordinate policies.
Coordinate.h
LVL1::CMXCPTob::chip
int chip() const
returns chip number (3 or 4 bits?)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:96
LVL1::CMXCPTob::crate
int crate() const
Data accessors.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:81
LVL1::CMXCPTob::m_peak
int m_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:72
LVL1::CMXCPTob::peak
int peak() const
returns peak slice number
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:162
LVL1::CMXCPTob::presenceMapVec
const std::vector< unsigned int > & presenceMapVec() const
returns presence maps
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:141
LVL1::CMXCPTob::cpm
int cpm() const
returns CPM number
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:91
LVL1::CMXCPTob::presenceMap
unsigned int presenceMap() const
returns presence map for peak sample
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:121
CMXCPTob_ClassDEF.h
LVL1::CMXCPTob::m_chip
int m_chip
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:70
LVL1::CMXCPTob::location
int location() const
returns location (3 or 2 bits?)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:101
LVL1::CMXCPTob::addTob
void addTob(const std::vector< int > &energy, const std::vector< int > &isolation, const std::vector< int > &error, const std::vector< unsigned int > &presenceMap)
Add data to existing object.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:146
LVL1::CMXCPTob
TOB data received by the merger modules.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:24
LVL1::CMXCPTob::setPeak
void setPeak(int peak)
For multi-slice readout, need to indicate position of triggered BC.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.h:157
error
Definition: IImpactPoint3dEstimator.h:70
CLASS_DEF.h
macros to associate a CLID to a type