ATLAS Offline Software
SimController.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // First the corresponding header.
6 #include "SimController.h"
7 
8 // The headers from other ATLAS packages,
9 // from most to least dependent.
12 
13 // Headers from external packages.
14 
15 
16 // System headers.
17 #include <iostream>
18 #include <vector>
19 
20 namespace LVL1MUCTPIPHASE1 {
21 
22  std::vector<std::string> SimController::configureTopo(const std::string& barrelFileName,
23  const std::string& ecfFileName,
24  const std::string& side0LUTFileName,
25  const std::string& side1LUTFileName)
26  {
27  std::vector<std::string> errors;
28  bool success = m_l1topoLUT.initializeLUT(barrelFileName, ecfFileName, side0LUTFileName, side1LUTFileName);
29  if (!success) errors = m_l1topoLUT.getErrors();
31  {
32  msp.setL1TopoLUT(&m_l1topoLUT);
33  }
34  return errors;
35  }
36 
37  // set Configuration
39 
40  // Zero Suppression Flag
41  m_doZeroSuppression = conf.getDoZeroSuppression();
42 
43  //src/Mirod/MirodExtractor.cxx
44  m_threshold1Candidate = conf.getThreshold1Candidate();
45  m_threshold2Candidate = conf.getThreshold2Candidate();
46  m_suppressionMode = conf.getSuppressionMode();
47 
48 
49  //MirodLvl2Processor
50  m_maxCandPerPtvalue = conf.getMaxCandPerPtvalue();
51  m_maxCandSendToRoib = conf.getMaxCandSendToRoib();
52  m_candBcidOffset = conf.getCandBcidOffset();
53  }
54 
56  {
57  std::string ret = "";
58  std::vector<const LVL1MUONIF::Lvl1MuCTPIInputPhase1*> processedInputs;
60  {
61  msp.runOverlapRemoval(input, bcid);
62  if ((ret = msp.makeL1TopoData(input, bcid, results.l1topoData)) != "") return ret;
63  processedInputs.push_back(input);
64  }
65 
66  //Run the trigger processor algorithms
68  if ((ret = m_triggerProcessor.computeMultiplicities(mergedInputs, bcid, results)) != "") return ret;
69  return "";
70  }
71 }
LVL1MUCTPIPHASE1::TriggerProcessor::mergeInputs
LVL1MUONIF::Lvl1MuCTPIInputPhase1 mergeInputs(const std::vector< const LVL1MUONIF::Lvl1MuCTPIInputPhase1 * > &inputs) const
Definition: TriggerProcessor.cxx:32
LVL1MUONIF::Lvl1MuCTPIInputPhase1
Class representing (part of) the input data to the MuCTPI for Phase 1.
Definition: Lvl1MuCTPIInputPhase1.h:33
LVL1MUCTPIPHASE1::TriggerProcessor::computeMultiplicities
std::string computeMultiplicities(LVL1MUONIF::Lvl1MuCTPIInputPhase1 &mergedInputs, int bcid, MUCTPIResults &results) const
Definition: TriggerProcessor.cxx:40
LVL1MUCTPIPHASE1::SimController::setConfiguration
void setConfiguration(const Configuration &conf)
Definition: SimController.cxx:38
LVL1MUCTPIPHASE1::SimController::processData
std::string processData(LVL1MUONIF::Lvl1MuCTPIInputPhase1 *input, MUCTPIResults &results, int bcid) const
Definition: SimController.cxx:55
LVL1MUCTPIPHASE1::MuonSectorProcessor
Definition: MuonSectorProcessor.h:37
LVL1MUCTPIPHASE1::SimController::m_threshold1Candidate
unsigned int m_threshold1Candidate
Definition: SimController.h:51
LVL1MUCTPIPHASE1::SimController::m_l1topoLUT
L1TopoLUT m_l1topoLUT
Definition: SimController.h:59
Lvl1MuCTPIInputPhase1.h
python.ConfigurableDb.conf
def conf
Definition: ConfigurableDb.py:282
LVL1MUCTPIPHASE1::Configuration
Header files holding configuration items for the MUCTPI.
Definition: Configuration.h:25
LVL1MUCTPIPHASE1
Definition: Configuration.h:11
LVL1MUCTPIPHASE1::MUCTPIResults
Definition: MUCTPIResults.h:32
ret
T ret(T t)
Definition: rootspy.cxx:260
LVL1MUCTPIPHASE1::SimController::m_candBcidOffset
unsigned int m_candBcidOffset
Definition: SimController.h:56
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
LVL1MUCTPIPHASE1::SimController::m_doZeroSuppression
bool m_doZeroSuppression
Definition: SimController.h:50
LVL1MUCTPIPHASE1::SimController::m_triggerProcessor
TriggerProcessor m_triggerProcessor
Definition: SimController.h:61
mergePhysValFiles.errors
list errors
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:43
LVL1MUCTPIPHASE1::SimController::m_muonSectorProcessors
MuonSectorProcessors m_muonSectorProcessors
Definition: SimController.h:62
xAOD::bcid
setEventNumber setTimeStamp bcid
Definition: EventInfo_v1.cxx:133
python.ami.results
def results
Definition: ami.py:386
LVL1MUCTPIPHASE1::SimController::configureTopo
std::vector< std::string > configureTopo(const std::string &barrelFileName, const std::string &ecfFileName, const std::string &side0LUTFileName, const std::string &side1LUTFileName)
Definition: SimController.cxx:22
LVL1MUCTPIPHASE1::L1TopoLUT::getErrors
std::vector< std::string > getErrors() const
Definition: L1TopoLUT.h:55
LVL1MUCTPIPHASE1::SimController::m_maxCandPerPtvalue
unsigned int m_maxCandPerPtvalue
Definition: SimController.h:54
MuCTPIL1Topo.h
LVL1MUCTPIPHASE1::L1TopoLUT::initializeLUT
bool initializeLUT(const std::string &barrelFileName, const std::string &ecfFileName, const std::string &side0LUTFileName, const std::string &side1LUTFileName)
Definition: L1TopoLUT.cxx:101
LVL1MUCTPIPHASE1::SimController::m_threshold2Candidate
unsigned int m_threshold2Candidate
Definition: SimController.h:52
LVL1MUCTPIPHASE1::SimController::m_suppressionMode
int m_suppressionMode
Definition: SimController.h:53
SimController.h
LVL1MUCTPIPHASE1::SimController::m_maxCandSendToRoib
unsigned int m_maxCandSendToRoib
Definition: SimController.h:55