|
ATLAS Offline Software
|
Go to the documentation of this file.
4 #ifndef TRIGSTEERMONITOR_TRIGSIGNATUREMONI_H
5 #define TRIGSTEERMONITOR_TRIGSIGNATUREMONI_H 1
14 #include "GaudiKernel/IIncidentListener.h"
15 #include "GaudiKernel/ITHistSvc.h"
16 #include "GaudiKernel/LockedHandle.h"
46 virtual void handle(
const Incident& incident )
override;
56 StatusCode init(
const std::string& histoName,
const std::string& histoTitle,
66 std::unique_ptr<Athena::AlgorithmTimer>&
getTimer();
75 void fill(
const double x,
const double y)
const;
87 std::unique_ptr<Athena::AlgorithmTimer>
m_timer;
99 Gaudi::Property<std::string>
m_bookingPath{
this,
"HistPath",
"/EXPERT/HLTFramework",
"Booking path for the histogram"};
102 Gaudi::Property<unsigned int>
m_duration {
this,
"RateIntegrationDuration", 10,
"Integration time for the rate histogram in seconds"};
103 Gaudi::Property<unsigned int>
m_intervals {
this,
"RateIntegrationIntervals", 6,
"Number of the rate histogram publications"};
105 ToolHandleArray<DecisionCollectorTool>
m_decisionCollectorTools{
this,
"DecisionCollectorTools", {},
"Tools that collect decisions (yes/no) for steps" };
106 ToolHandleArray<DecisionCollectorTool>
m_featureCollectorTools{
this,
"FeatureCollectorTools", {},
"Tools that collect decision counts for specific features for steps" };
158 #endif //> !TRIGSTEERMONITOR_TRIGSIGNATUREMONI_H
std::unique_ptr< Athena::AlgorithmTimer > m_timer
TrigSignatureMoni(const std::string &name, ISvcLocator *pSvcLocator)
std::map< std::string, TrigCompositeUtils::DecisionIDContainer > m_groupToChainMap
Group name to chain objects map.
std::unique_ptr< Athena::AlgorithmTimer > & getTimer()
LockedHandle< TH2 > &getBuffer ATLAS_NOT_CONST_THREAD_SAFE() const
LockedHandle< TH2 > m_histogram ATLAS_THREAD_SAFE
std::map< std::string, TrigCompositeUtils::DecisionIDContainer > m_streamToChainMap
Stream name to chain objects map, excluding express.
LockedHandle< TH2 > &getHistogram ATLAS_NOT_CONST_THREAD_SAFE() const
SG::ReadHandleKey< TrigConf::HLTMenu > m_HLTMenuKey
SG::ReadHandleKey< TrigConf::L1Menu > m_L1MenuKey
virtual StatusCode start() override
StatusCode fillRate(const TrigCompositeUtils::DecisionIDContainer &, int) const
ServiceHandle< ITHistSvc > m_histSvc
Property holding a SG store/key/clid from which a ReadHandle is made.
virtual StatusCode initialize() override
StatusCode initSeqHist(LockedHandle< TH2 > &, std::set< std::string > &)
StatusCode fillSequences(const std::set< std::string > &) const
std::map< std::string, int > m_sequenceToBinMap
Sequence to bin map for sequence histogram.
StatusCode initHist(LockedHandle< TH2 > &, SG::ReadHandle< TrigConf::HLTMenu > &, bool=true)
std::map< std::string, TrigCompositeUtils::DecisionIDContainer > m_expressChainMap
Stream name to chain objects map, including only express.
StatusCode fillStreamsAndGroups(const std::map< std::string, TrigCompositeUtils::DecisionIDContainer > &, const TrigCompositeUtils::DecisionIDContainer &) const
int nChains(SG::ReadHandle< TrigConf::HLTMenu > &) const
void startTimer(unsigned int duration, unsigned int intervals)
int nSequenceBins() const
Efficient realtime timers.
StatusCode fillHistogram(const TrigCompositeUtils::DecisionIDContainer &, int, LockedHandle< TH2 > &) const
LockedHandle< TH2 > m_bufferHistogram ATLAS_THREAD_SAFE
::StatusCode StatusCode
StatusCode definition for legacy code.
ServiceHandle< IIncidentSvc > m_incidentSvc
LockedHandle< TH2 > m_passHistogram ATLAS_THREAD_SAFE
std::map< unsigned int, std::set< std::string > > m_chainIDToBunchMap
Chain ID to bunchgroup name map.
StatusCode fillDecisionCount(const std::vector< TrigCompositeUtils::DecisionID > &, int) const
StatusCode init(const std::string &histoName, const std::string &histoTitle, const int x, const int y, const std::string ®isterPath, const ServiceHandle< ITHistSvc > &histSvc)
RateHistogram m_sequenceHistogram
ToolHandleArray< DecisionCollectorTool > m_decisionCollectorTools
std::unique_ptr< TimeDivider > m_timeDivider
std::map< unsigned int, int > m_chainIDToBinMap
Chain id to histogram bin map.
ToolHandleArray< DecisionCollectorTool > m_featureCollectorTools
Gaudi::Property< unsigned int > m_intervals
virtual void handle(const Incident &incident) override
std::map< std::string, int > m_nameToBinMap
Sequence/group/bunchgroup name to bin map.
std::set< DecisionID > DecisionIDContainer
virtual StatusCode stop() override
SG::ReadHandleKey< TrigCompositeUtils::DecisionContainer > m_finalDecisionKey
LockedHandle< TH2 > m_countHistogram ATLAS_THREAD_SAFE
void fill(const double x, const double y) const
virtual StatusCode execute(const EventContext &context) const override
void updatePublished(unsigned int duration) const
StatusCode fillPassEvents(const TrigCompositeUtils::DecisionIDContainer &, int) const
Gaudi::Property< unsigned int > m_duration
Define macros for attributes used to control the static checker.
Gaudi::Property< std::string > m_bookingPath
SG::ReadHandleKey< TrigCompositeUtils::DecisionContainer > m_l1DecisionsKey
RateHistogram m_rateHistogram