Skip to content
Snippets Groups Projects
Commit a8ecea45 authored by Johannes Junggeburth's avatar Johannes Junggeburth :dog2: Committed by Frank Winklmeier
Browse files

MuonChamberAssembleTool -- Split BOL7 chambers from the generic BOL sector

MuonChamberAssembleTool -- Split BOL7 chambers from the generic BOL sector
parent 00f162c5
No related branches found
No related tags found
No related merge requests found
...@@ -54,7 +54,12 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) { ...@@ -54,7 +54,12 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) {
tgcStationIndex("T1E"), tgcStationIndex("T1F"), tgcStationIndex("T1E"), tgcStationIndex("T1F"),
tgcStationIndex("T2E"), tgcStationIndex("T2F"), tgcStationIndex("T2E"), tgcStationIndex("T2F"),
tgcStationIndex("T3E"), tgcStationIndex("T3F")}; tgcStationIndex("T3E"), tgcStationIndex("T3F")};
const std::set<Identifier> BOE_ids{m_idHelperSvc->mdtIdHelper().elementID("BOL", 7,7),
m_idHelperSvc->mdtIdHelper().elementID("BOL", -7,7),
m_idHelperSvc->rpcIdHelper().elementID( "BOL", -8, 7, 1),
m_idHelperSvc->rpcIdHelper().elementID( "BOL", 8, 7, 1)};
std::vector<MuonReadoutElement*> allReadOutEles = mgr.getAllReadoutElements(); std::vector<MuonReadoutElement*> allReadOutEles = mgr.getAllReadoutElements();
std::vector<defineArgs> muonChamberCandidates{}; std::vector<defineArgs> muonChamberCandidates{};
...@@ -65,7 +70,7 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) { ...@@ -65,7 +70,7 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) {
for (const MuonReadoutElement* readOutEle : allReadOutEles) { for (const MuonReadoutElement* readOutEle : allReadOutEles) {
std::vector<defineArgs>::iterator exist = std::vector<defineArgs>::iterator exist =
std::find_if(muonChamberCandidates.begin(), muonChamberCandidates.end(), std::find_if(muonChamberCandidates.begin(), muonChamberCandidates.end(),
[this, readOutEle, &stIndicesEIL, &stIndicesEM](const defineArgs& args){ [this, readOutEle, &stIndicesEIL, &stIndicesEM, &BOE_ids](const defineArgs& args){
const MuonReadoutElement* refEle = args.readoutEles[0]; const MuonReadoutElement* refEle = args.readoutEles[0];
const Identifier refId = refEle->identify(); const Identifier refId = refEle->identify();
const Identifier testId = readOutEle->identify(); const Identifier testId = readOutEle->identify();
...@@ -77,6 +82,11 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) { ...@@ -77,6 +82,11 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) {
if (m_idHelperSvc->sector(testId) != m_idHelperSvc->sector(refId)) { if (m_idHelperSvc->sector(testId) != m_idHelperSvc->sector(refId)) {
return false; return false;
} }
/// Separate out the BOE chambers
if (BOE_ids.count(m_idHelperSvc->chamberId(refId)) !=
BOE_ids.count(m_idHelperSvc->chamberId(testId))){
return false;
}
/// Summarize all readout element in the same sector & layer /// Summarize all readout element in the same sector & layer
/// into a single chamber /// into a single chamber
if (readOutEle->stationName() == refEle->stationName()) { if (readOutEle->stationName() == refEle->stationName()) {
...@@ -193,4 +203,4 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) { ...@@ -193,4 +203,4 @@ StatusCode ChamberAssembleTool::buildReadOutElements(MuonDetectorManager &mgr) {
} }
} }
#endif #endif
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment