5#ifndef TRIGT1_CTMONITORING_BSMONITORING_H
6#define TRIGT1_CTMONITORING_BSMONITORING_H
16#include "GaudiKernel/ServiceHandle.h"
18#include "CoolKernel/IObject.h"
64 virtual StatusCode
fillHistograms(
const EventContext& ctx )
const override;
67 StringProperty
m_packageName{
this,
"PackageName",
"CTPMonitor",
"group name for histograming"};
71 const EventContext& ctx )
const;
75 const EventContext& ctx )
const;
80 const EventContext& ctx )
const;
83 const std::vector<uint>& bcidFirstInTrain,
86 const EventContext& ctx )
const;
90 const EventContext& ctx )
const;
95 const EventContext& ctx )
const;
98 const EventContext& ctx )
const;
115 Gaudi::Property<bool>
m_isRun3{
this,
"isRun3",
true,
"isRun3" };
116 Gaudi::Property<bool>
m_isSim{
this,
"isSimulation",
false,
"isSimulation" };
117 Gaudi::Property<bool>
m_inclusiveTriggerThresholds{
this,
"InclusiveTriggerThresholds",
true,
"Flag to activate the inclusive counting of PT thresholds in trigger patterns" };
118 Gaudi::Property<bool>
m_processMuctpi{
this,
"ProcessMuctpiData",
true,
"Flag to activate the processing of Muctpi data" };
119 Gaudi::Property<bool>
m_processMuctpiRIO{
this,
"ProcessMuctpiDataRIO",
true,
"Flag to activate the processing of the Muctpi RIO" };
120 Gaudi::Property<bool>
m_compareRerun{
this,
"CompareRerun",
false,
"Flag to activate the processing of RoIBResult data" };
121 Gaudi::Property<bool>
m_runOnESD{
this,
"RunOnESD",
false,
"Flag to run only on the ESD" };
123 Gaudi::Property<bool>
m_processCTP{
this,
"ProcessCTPData",
true,
"Flag to activate the processing of CTP data" };
124 Gaudi::Property<bool>
m_processRoIB{
this,
"ProcessRoIBResult",
true,
"Flag to activate the processing of RoIBResult data" };
126 Gaudi::Property<double>
m_defaultBcIntervalInNs{
this,
"DefaultBcIntervalInNs", 24.9507401,
"Default bunch-crossing duration to use if not accessible in COOL" };
127 Gaudi::Property<int64_t>
m_bcsPerTurn{
this,
"BCsPerTurn", 3564,
"Number of bunch crossings per turn" };
128 Gaudi::Property<std::string >
m_lbTimeCoolFolderName{
this,
"LumiBlockTimeCoolFolderName",
"/TRIGGER/LUMI/LBLB",
"COOL folder in COOLONL_TRIGGER holding info about start and stop times for luminosity blocks" };
131 Gaudi::Property<std::string>
m_dataTakingModeCoolFolderName{
this,
"DataTakingModeCoolFolderName",
"/TDAQ/RunCtrl/DataTakingMode",
"COOL folder in COOLONL_TDAQ holding the ATLAS data taking mode info" };
132 Gaudi::Property<std::vector<std::string>>
m_ignorePatterns{
this,
"IgnorePatterns", {
"L1_TRT",
"L1_ZB",
"_AFP",
"L1_BPTX",
"L1_BCM",
"L1_LUCID"},
"patters that are excluded from check (no regex)"};
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
A CondAttrListVec is an Athena DataObject holding a vector of CORAL AttributeLists,...
Hold mappings of ranges to condition objects.
Header file to be included by clients of the Monitored infrastructure.
Property holding a SG store/key/clid from which a ReadHandle is made.
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
BCM input class to the CTP simulation.
BPTX input class to the CTP simulation.
Em/Tau input class to the CTP simulation.
"Energy" input class to the CTP simulation
This class defines the em/tau hadron ROI which are generated by the LVL1 Calo Trigger.
MBTS input class to the CTP simulation.
MuCTPI input class to the CTP simulation.
This class defines the NIM items.
Class representing the readout data of the MuCTPI hardware and simulation.
Class representing the readout data of the MuCTPI hardware and simulation.
Class holding the LVL1 RoIB result build by the RoIBuilder.
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::ReadHandleKey< CTP_RIO > m_CTP_RIOKey
virtual ~BSMonitoringAlgorithm()=default
Gaudi::Property< bool > m_compareRerun
Gaudi::Property< bool > m_isSim
Gaudi::Property< double > m_defaultBcIntervalInNs
SG::ReadHandleKey< CTP_RDO > m_CTP_RDOKey
void doMuctpi(const MuCTPI_RDO *theMuCTPI_RDO, const RpcSectorLogicContainer *theRPCContainer, const Muon::TgcCoinDataContainer *theTGCContainer, const EventContext &ctx) const
StatusCode compareRerun(const CTP_BC &bunchCrossing, const EventContext &ctx) const
Gaudi::Property< int64_t > m_bcsPerTurn
SG::ReadHandleKey< RpcSectorLogicContainer > m_RPCContainerKey
Gaudi::Property< bool > m_processMuctpiRIO
Gaudi::Property< bool > m_runOnESD
Gaudi::Property< std::vector< std::string > > m_ignorePatterns
SG::ReadCondHandleKey< AthenaAttributeList > m_LBLBFolderInputKey
SG::ReadHandleKey< Muon::TgcCoinDataContainer > m_TGCContainerKey
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
StringProperty m_packageName
SG::ReadHandleKey< ROIB::RoIBResult > m_RoIBResultKey
SG::ReadCondHandleKey< AthenaAttributeList > m_DataTakingModeFolderInputKey
Gaudi::Property< std::string > m_dataTakingModeCoolFolderName
SG::ReadHandleKey< MuCTPI_RDO > m_MuCTPI_RDOKey
Gaudi::Property< bool > m_processMuctpi
Gaudi::Property< std::string > m_lbTimeCoolFolderName
Gaudi::Property< bool > m_isRun3
void doCtp(const CTP_RDO *theCTP_RDO, const CTP_RIO *theCTP_RIO, const EventContext &ctx) const
Gaudi::Property< bool > m_processCTP
virtual StatusCode initialize() override
initialize
Gaudi::Property< bool > m_inclusiveTriggerThresholds
SG::ReadHandleKey< MuCTPI_Phase1_RDO > m_MuCTPI_Phase1_RDOKey
SG::ReadCondHandleKey< TrigConf::L1BunchGroupSet > m_bgKey
Gaudi::Property< bool > m_processRoIB
void doCtpMuctpi(const CTP_RDO *theCTP_RDO, const MuCTPI_RDO *theMuCTPI_RDO, const EventContext &ctx) const
SG::ReadCondHandleKey< CondAttrListCollection > m_FILLSTATEFolderInputKey
SG::ReadHandleKey< CTP_RDO > m_CTP_RDO_RerunKey
void dumpData(const CTP_RDO *theCTP_RDO, const MuCTPI_RDO *theMuCTPI_RDO, const ROIB::RoIBResult *roib, const EventContext &ctx) const
void doMuonRoI(const MuCTPI_RDO *theMuCTPI_RDO, const ROIB::RoIBResult *roib, const EventContext &ctx) const
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
MuonCoinDataContainer< TgcCoinDataCollection > TgcCoinDataContainer
Namespace of the LVL1 RoIB simulation.