|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    5 #ifndef L1Topo_L1TopoSimulation 
    6 #define L1Topo_L1TopoSimulation 
   25 #include "GaudiKernel/ServiceHandle.h" 
   26 #include "GaudiKernel/ToolHandle.h" 
   27 #include "GaudiKernel/ITHistSvc.h" 
   66       std::unique_ptr<LVL1::PeriodicScaler> 
m_scaler {
nullptr}; 
 
   71       ToolHandle<IInputTOBConverter> 
m_emtauInputProvider  { 
this, 
"EMTAUInputProvider",  
"LVL1::EMTauInputProvider/EMTauInputProvider",   
"Tool to fill the EMTAU TOBs of the topo input event"         };
 
   72       ToolHandle<IInputTOBConverter> 
m_jetInputProvider    { 
this, 
"JetInputProvider",    
"LVL1::JetInputProvider/JetInputProvider",       
"Tool to fill the Jet TOBs of the topo input event"           };
 
   73       ToolHandle<IInputTOBConverter> 
m_energyInputProvider { 
this, 
"EnergyInputProvider", 
"LVL1::EnergyInputProvider/EnergyInputProvider", 
"Tool to fill the energy and MET TOBs of the topo input event"};
 
   74       ToolHandle<IInputTOBConverter> 
m_muonInputProvider   { 
this, 
"MuonInputProvider",   
"LVL1::MuonInputProvider/MuonInputProvider",     
"Tool to fill the muon TOBs of the topo input event"          };
 
   76       ToolHandle<IControlHistSvc> 
m_ControlHistSvc   { 
this, 
"ControlHistSvc",   
"LVL1::ControlHistSvc/ControlHistSvc",     
"Tool to change the histogramming service when needed."          };
 
   93       Gaudi::Property<bool> 
m_doMonitoring { 
this, 
"doMonitoring", 
false, 
"Do Monitoring of L1Topo Algorithms" };
 
   94       Gaudi::Property<bool> 
m_isLegacyTopo { 
this, 
"IsLegacyTopo", 
false, 
"Simulation of Legacy L1Topo boards" };
 
   95       Gaudi::Property<bool> 
m_enableInputDump { 
this, 
"EnableInputDump", 
false, 
"Enable writing of input data for standalone running" };
 
   96       Gaudi::Property<bool> 
m_enableBitwise { 
this, 
"UseBitwise", 
true, 
"Boolean to enable the bitwise version of software algorithms"}; 
 
   97       Gaudi::Property<std::string> 
m_inputDumpFile { 
this, 
"InputDumpFile", 
"inputdump.txt", 
"File name for dumping input data" };
 
  103       Gaudi::Property<unsigned int> 
m_prescaleForDAQROBAccess { 
this, 
"PrescaleDAQROBAccess", 4, 
"Prescale factor for requests for DAQ ROBs: can be used to avoid overloading ROS. Zero means disabled, 1 means always, N means sample only 1 in N events"}; 
 
  104       Gaudi::Property<unsigned int> 
m_prescale { 
this, 
"Prescale", 1, 
"Internal prescale factor for this algorithm, implemented with a periodic scaler: so 1 means run every time, N means run every 1 in N times it is called; the other times it will exit without doing anything"};
 
  105       Gaudi::Property<std::string> 
m_histBaseDir { 
this, 
"MonHistBaseDir", 
"L1/L1TopoAlgorithms", 
"Base directory for monitoring histograms will be /EXPERT/<MonHistBaseDir>"}; 
 
  
Property holding a SG store/key/clid from which a ReadHandle is made.
Gaudi::Property< int > m_topoOutputLevel
SG::WriteHandleKey< LVL1::FrontPanelCTP > m_topoCTPLocation
SG key of decision bits for CTP.
Gaudi::Property< bool > m_fillHistogramsBasedOnHardwareDecision
MsgStream for TrigConf classes.
std::unique_ptr< LVL1::PeriodicScaler > m_scaler
Gaudi::Property< bool > m_isLegacyTopo
ToolHandle< IInputTOBConverter > m_emtauInputProvider
Property holding a SG store/key/clid from which a ReadHandle is made.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Gaudi::Property< bool > m_enableInputDump
Gaudi::Property< int > m_topoSteeringOutputLevel
Gaudi::Property< bool > m_doMonitoring
virtual StatusCode start() override
std::unique_ptr< TCS::TopoSteering > m_topoSteering
the topo steering
SG::WriteHandleKey< xAOD::L1TopoSimResultsContainer > m_l1topoKey
Gaudi::Property< unsigned int > m_prescale
ToolHandle< IInputTOBConverter > m_energyInputProvider
void WriteEDM_Overflow(SG::WriteHandle< xAOD::L1TopoSimResultsContainer > &handle, const std::string &name, unsigned int clock, uint32_t word)
ToolHandle< IInputTOBConverter > m_muonInputProvider
SG::ReadHandleKey< xAOD::L1TopoRawDataContainer > m_l1topoRawDataKey
ToolHandle< IInputTOBConverter > m_jetInputProvider
::StatusCode StatusCode
StatusCode definition for legacy code.
StatusCode hardwareDecisionPhase1(const EventContext &ctx)
virtual bool isClonable() const override
virtual StatusCode execute() override
SG::WriteHandleKey< LVL1::FrontPanelCTP > m_topoOverflowCTPLocation
SG key of overflow bits for CTP.
Gaudi::Property< bool > m_enableBitwise
void WriteEDM(SG::WriteHandle< xAOD::L1TopoSimResultsContainer > &handle, const std::string &name, unsigned int clock, uint32_t word)
SG::WriteHandleKey< xAOD::L1TopoSimResultsContainer > m_legacyL1topoKey
virtual StatusCode initialize ATLAS_NOT_THREAD_SAFE() override
SG::WriteHandleKey< LVL1::FrontPanelCTP > m_legacyTopoOverflowCTPLocation
SG key of overflow bits for CTP.
Gaudi::Property< std::string > m_inputDumpFile
L1TopoSimulation(const std::string &name, ISvcLocator *pSvcLocator)
StatusCode hardwareDecisionLegacy()
Gaudi::Property< unsigned int > m_prescaleForDAQROBAccess
ToolHandle< IControlHistSvc > m_ControlHistSvc
SG::WriteHandleKey< LVL1::FrontPanelCTP > m_legacyTopoCTPLocation
SG key of decision bits for CTP.
Gaudi::Property< std::string > m_histBaseDir
ServiceHandle< ITHistSvc > m_histSvc
prescale decision tool
virtual StatusCode finalize() override
Define macros for attributes used to control the static checker.
StatusCode retrieveHardwareDecision(bool isLegacy, const EventContext &ctx)
Retrieve the L1Topo hardware bits from the DAQ RODs.