ATLAS Offline Software
IILVL1ConfigSvc.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id: IILVL1ConfigSvc.h 612008 2014-08-15 13:35:58Z krasznaa $
8 #ifndef TRIGCONFINTERFACES_IILVL1CONFIGSVC_H
9 #define TRIGCONFINTERFACES_IILVL1CONFIGSVC_H
10 
11 // System include(s):
12 extern "C" {
13 # include <stdint.h>
14 }
15 
16 class EventContext;
17 
19 namespace TrigConf {
20 
21  // Forward declaration(s):
22  class CTPConfig;
23  class ThresholdConfig;
24  class BunchGroupSet;
25  class L1Menu;
26  class L1PrescalesSet;
27  class L1BunchGroupSet;
28 
37 
38  public:
40  virtual ~IILVL1ConfigSvc() = default;
41 
43  virtual const CTPConfig* ctpConfig() const = 0;
44 
46  virtual const ThresholdConfig* thresholdConfig() const = 0;
47 
49  virtual const BunchGroupSet* bunchGroupSet() const = 0;
50 
52  virtual uint32_t lvl1PrescaleKey() const = 0;
53 
55  virtual uint32_t bunchGroupSetKey() const = 0;
56 
58  virtual const ::TrigConf::L1Menu& l1Menu(const ::EventContext& ctx) const = 0;
59 
61  virtual const ::TrigConf::L1PrescalesSet& l1PrescalesSet(const ::EventContext& ctx) const = 0;
62 
64  virtual const ::TrigConf::L1BunchGroupSet& l1BunchGroupSet(const ::EventContext& ctx) const = 0;
65 
66  }; // class IILVL1ConfigSvc
67 
68 } // namespace TrigConf
69 
70 #endif // TRIGCONFINTERFACES_IILVL1CONFIGSVC_H
TrigConf::BunchGroupSet
Definition: BunchGroupSet.h:19
TrigConf::ThresholdConfig
Definition: ThresholdConfig.h:17
TrigConf::IILVL1ConfigSvc::l1BunchGroupSet
virtual const ::TrigConf::L1BunchGroupSet & l1BunchGroupSet(const ::EventContext &ctx) const =0
Returns the JSON configured bunchgroup ptree.
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
TrigConf::IILVL1ConfigSvc
Interface for all services/tools that provide LVL1 menu configuration information.
Definition: IILVL1ConfigSvc.h:36
TrigConf::IILVL1ConfigSvc::l1Menu
virtual const ::TrigConf::L1Menu & l1Menu(const ::EventContext &ctx) const =0
Returns the JSON configured L1 ptree.
TrigConf::IILVL1ConfigSvc::ctpConfig
virtual const CTPConfig * ctpConfig() const =0
Provides the LVL1 trigger menu.
TrigConf::IILVL1ConfigSvc::bunchGroupSet
virtual const BunchGroupSet * bunchGroupSet() const =0
Provides the LVL1 bunch group set.
TrigConf::IILVL1ConfigSvc::l1PrescalesSet
virtual const ::TrigConf::L1PrescalesSet & l1PrescalesSet(const ::EventContext &ctx) const =0
Returns the JSON configured L1 prescales ptree.
TrigConf
Forward iterator to traverse the main components of the trigger configuration.
Definition: Config.h:22
TrigConf::IILVL1ConfigSvc::thresholdConfig
virtual const ThresholdConfig * thresholdConfig() const =0
Provides the LVL1 threshold configuration.
TrigConf::IILVL1ConfigSvc::~IILVL1ConfigSvc
virtual ~IILVL1ConfigSvc()=default
destructor
TrigConf::CTPConfig
Definition: CTPConfig.h:27
TrigConf::IILVL1ConfigSvc::bunchGroupSetKey
virtual uint32_t bunchGroupSetKey() const =0
accessor to the LVL1 bunch group set key
TrigConf::IILVL1ConfigSvc::lvl1PrescaleKey
virtual uint32_t lvl1PrescaleKey() const =0
accessor to the configuration lvl1 prescale key