ATLAS Offline Software
Loading...
Searching...
No Matches
EMBDetDescr.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef LARREADOUTGEOMETRY_EMBDETDESCR_H
6#define LARREADOUTGEOMETRY_EMBDETDESCR_H
7#include <vector>
8#include "GeoModelKernel/CellBinning.h"
9#include "GeoModelKernel/RCBase.h"
14
25
26class EMBDetDescr : public RCBase
27{
28
29
30
31 public:
32
33
37 EMBDetDescr (const EMBDetectorManager *detManager, unsigned int sampling, unsigned int region, const CellBinning &phiBinning);
38
39
44
45
46
52 double getOffset (unsigned int etaIndex) const;
53
54
58 double getHalfLength (unsigned int etaIndex) const;
59
63 const EMBDetectorManager * getManager () const;
64
65
69 unsigned int getSamplingIndex () const;
70
71
75 unsigned int getRegionIndex () const;
76
77
81 const CellBinning& getPhiBinning () const;
82
83
87 const CellBinning& getEtaBinning () const;
88
89 private:
90
91 EMBDetDescr(const EMBDetDescr &right);
93
95 unsigned int m_samplingIndex;
96 unsigned int m_regionIndex;
97 CellBinning m_phiBinning;
98 CellBinning m_etaBinning;
99
100
101
105
106 std::vector<double> m_halfLength;
107
108
124 std::vector<double> m_offset;
125
126
127
128
129
130};
131
132
133
134
135
136
137
138inline double EMBDetDescr::getOffset (unsigned int etaIndex) const
139{
140
141 if (m_offset.size()==1) return m_offset[0];
142 return m_offset[etaIndex];
143
144}
145
146inline double EMBDetDescr::getHalfLength (unsigned int etaIndex) const
147{
148
149 if (m_halfLength.size()==1) return m_halfLength[0];
150 return m_halfLength[etaIndex];
151
152}
153
154
155
157{
158
159 return m_manager;
160
161}
162
163inline unsigned int EMBDetDescr::getSamplingIndex () const
164{
165
166 return m_samplingIndex;
167
168}
169
170inline unsigned int EMBDetDescr::getRegionIndex () const
171{
172
173 return m_regionIndex;
174
175}
176
177inline const CellBinning& EMBDetDescr::getPhiBinning () const
178{
179
180 return m_phiBinning;
181
182}
183
184inline const CellBinning& EMBDetDescr::getEtaBinning () const
185{
186
187 return m_etaBinning;
188
189}
190
191
192
193
194
195#endif
CellBinning m_phiBinning
Definition EMBDetDescr.h:97
double getOffset(unsigned int etaIndex) const
Gets the offset position (cell centers with respect to the position of the front of the active volume...
EMBDetDescr(const EMBDetectorManager *detManager, unsigned int sampling, unsigned int region, const CellBinning &phiBinning)
Constructor.
CellBinning m_etaBinning
Definition EMBDetDescr.h:98
unsigned int m_samplingIndex
Definition EMBDetDescr.h:95
~EMBDetDescr()
Destructor.
EMBDetDescr & operator=(const EMBDetDescr &right)
unsigned int getSamplingIndex() const
The sampling index.
EMBDetDescr(const EMBDetDescr &right)
const CellBinning & getPhiBinning() const
The Binning in Phi.
std::vector< double > m_halfLength
Vector of half-lengths for the cells, one for each eta index.
std::vector< double > m_offset
Vector of cell center positions for the cells, one for each eta index.
double getHalfLength(unsigned int etaIndex) const
gets the cell half-length in z.
const EMBDetectorManager * getManager() const
The manager.
unsigned int m_regionIndex
Definition EMBDetDescr.h:96
unsigned int getRegionIndex() const
The region index.
const CellBinning & getEtaBinning() const
The Binning in Eta.
const EMBDetectorManager * m_manager
Definition EMBDetDescr.h:94
A manager class providing access to readout geometry information for the electromagnetic barrel calor...