ATLAS Offline Software
Loading...
Searching...
No Matches
ConfigurationAccess.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGGER_DECISION_TOOL_CONFIGURATION_ACCESS_H
6#define TRIGGER_DECISION_TOOL_CONFIGURATION_ACCESS_H
7/**********************************************************************************
8 * @Project: TrigDecisionTool
9 * @Package: TrigDecisionTool
10 * @class : DecisionAnalysis
11 *
12 * @brief access to information about the trigger configuration
13 *
14 * @author Michael Begel <michael.begel@cern.ch> - Brookhaven National Laboratory
15 *
16 ***********************************************************************************/
17#include <string>
18#include <vector>
19
24
25namespace Trig {
26
27 class ConfigurationAccess : public virtual Logger {
28 public:
30 virtual ~ConfigurationAccess();
31
32 std::vector< std::string > getListOfTriggers(const Trig::ChainGroup* chaingroup) const;
33 std::vector< std::string > getListOfTriggers(const std::string& triggerNames=".*") const;
34
35 std::vector< std::string > getListOfStreams(const Trig::ChainGroup* chaingroup) const;
36 std::vector< std::string > getListOfStreams(const std::string& triggerNames=".*") const;
37
38 std::vector< std::string > getListOfGroups(const Trig::ChainGroup* chaingroup) const;
39 std::vector< std::string > getListOfGroups(const std::string& triggerNames=".*") const;
40
41 std::vector< std::vector< std::string > > getListOfTriggerElements(const Trig::ChainGroup* chaingroup) const;
42 std::vector< std::vector< std::string > > getListOfTriggerElements(const std::string& triggerNames=".*") const;
43
44 float getPrescale(const Trig::ChainGroup* chaingroup, unsigned int condition=TrigDefs::Physics) const;
45 float getPrescale(const std::string& triggerNames="EF._*", unsigned int condition=TrigDefs::Physics) const;
46
47 protected:
48
49 // update methods for IOV awareness etc
50 void configurationUpdate(const TrigConf::HLTChainList* confChains,
51 const TrigConf::CTPConfig* confItems);
52
53
54 private:
55
57 virtual const Trig::CacheGlobalMemory* cgm() const = 0;
58
59
60
61 };
62} // End of namespace
63
64#endif
list of all HLT chains in a trigger menu
virtual const Trig::CacheGlobalMemory * cgm() const =0
void configurationUpdate(const TrigConf::HLTChainList *confChains, const TrigConf::CTPConfig *confItems)
virtual Trig::CacheGlobalMemory * cgm()=0
std::vector< std::vector< std::string > > getListOfTriggerElements(const Trig::ChainGroup *chaingroup) const
std::vector< std::string > getListOfStreams(const Trig::ChainGroup *chaingroup) const
float getPrescale(const Trig::ChainGroup *chaingroup, unsigned int condition=TrigDefs::Physics) const
std::vector< std::string > getListOfGroups(const Trig::ChainGroup *chaingroup) const
std::vector< std::string > getListOfTriggers(const Trig::ChainGroup *chaingroup) const
Logger()=default
The common trigger namespace for trigger analysis tools.