#include <MuonME0DetLayerGeometryBuilder.h>
Build the ME0 DetLayers.
- Author
- D. Nash
Definition at line 21 of file MuonME0DetLayerGeometryBuilder.h.
◆ MuonME0DetLayerGeometryBuilder()
MuonME0DetLayerGeometryBuilder::MuonME0DetLayerGeometryBuilder |
( |
| ) |
|
|
inline |
◆ ~MuonME0DetLayerGeometryBuilder()
MuonME0DetLayerGeometryBuilder::~MuonME0DetLayerGeometryBuilder |
( |
| ) |
|
|
virtual |
◆ buildEndcapLayers()
Builds the forward (+Z, return.first) and backward (-Z, return.second) layers. Both vectors are sorted inside-out
Definition at line 25 of file MuonME0DetLayerGeometryBuilder.cc.
26 vector<DetLayer*>
result[2];
27 const std::string metname =
"Muon|RecoMuon|RecoMuonDetLayers|MuonME0DetLayerGeometryBuilder";
30 int iendcap = (
endcap == 1) ? 0 : 1;
41 result[iendcap].push_back(ringLayer);
43 pair<vector<DetLayer*>, vector<DetLayer*> > res_pair(
result[0],
result[1]);
References relativeConstraints::chamber, chambers, makeMuonMisalignmentScenario::endcap, LogTrace, ME0DetId::maxChamberId, metname, ME0DetId::minChamberId, mps_fire::result, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by MuonDetLayerGeometryESProducer::produce().
◆ buildLayer()
MuRingForwardLayer * MuonME0DetLayerGeometryBuilder::buildLayer |
( |
int |
endcap, |
|
|
int |
layer, |
|
|
std::vector< int > & |
chambers, |
|
|
std::vector< int > & |
rolls, |
|
|
const ME0Geometry & |
geo |
|
) |
| |
|
staticprivate |
Definition at line 48 of file MuonME0DetLayerGeometryBuilder.cc.
50 const std::string metname =
"Muon|RecoMuon|RecoMuonDetLayers|MuonME0DetLayerGeometryBuilder";
52 vector<const ForwardDetRing*> frontRings, backRings;
56 for (vector<int>::iterator roll = rolls.begin(); roll != rolls.end(); roll++) {
59 vector<const GeomDet*> frontDets, backDets;
65 if (geomDet !=
nullptr) {
66 bool isInFront =
isFront(me0Id);
68 frontDets.push_back(geomDet);
70 backDets.push_back(geomDet);
75 if (!frontDets.empty()) {
77 frontRings.push_back(
new MuDetRing(frontDets));
79 <<
" chambers at z=" << frontRings.back()->position().z();
81 if (!backDets.empty()) {
83 backRings.push_back(
new MuDetRing(backDets));
85 <<
" chambers at z=" << backRings.back()->position().z();
90 if (!frontRings.empty())
95 LogTrace(
metname) <<
"New MuRingForwardLayer with " << frontRings.size() <<
" and " << backRings.size()
96 <<
" rings, at Z " <<
result->position().z() <<
" R1: " <<
result->specificSurface().innerRadius()
97 <<
" R2: " <<
result->specificSurface().outerRadius();
References relativeConstraints::chamber, chambers, makeMuonMisalignmentScenario::endcap, ME0Geometry::idToDet(), LogTrace, metname, precomputed_value_sort(), mps_fire::result, and AlCaHLTBitMon_QueryRunRegistry::string.
◆ isFront()
bool MuonME0DetLayerGeometryBuilder::isFront |
( |
const ME0DetId & |
me0Id | ) |
|
|
staticprivate |
◆ makeDetRing()
MuDetRing * MuonME0DetLayerGeometryBuilder::makeDetRing |
( |
std::vector< const GeomDet * > & |
geomDets | ) |
|
|
staticprivate |