ATLAS Offline Software
CTPUnpackingToolBase.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef HLTSEEDING_CTPUNPACKINGTOOLBASE_H
6 #define HLTSEEDING_CTPUNPACKINGTOOLBASE_H
7 
9 
13 
14 
15 namespace ROIB {
16  class RoIBResult;
17 }
18 
24 class CTPUnpackingToolBase : public extends<AthAlgTool, ICTPUnpackingTool> {
25 public:
26 
27  CTPUnpackingToolBase(const std::string& type,
28  const std::string& name,
29  const IInterface* parent);
30 
31  virtual StatusCode decode(const ROIB::RoIBResult& /*roib*/,
32  HLT::IDVec& /*enabledChains*/) const override;
33 
34  virtual StatusCode initialize() override;
35 
37  const std::vector<std::string>& /*l1ItemNames*/, bool& /*pass*/) const override;
38 
39  // Derived class may override this to return true if its decode() method doesn't depend on RoIBResult
40  virtual bool isEmulated() const override {return false;}
41 
42 protected:
43 
44  static constexpr int s_CTPIDForUnseededChains = -1;
45  std::unordered_map<int, HLT::IDVec> m_ctpToChain;
46 
47  Gaudi::Property<bool> m_forceEnable{
48  this, "ForceEnableAllChains", false, "Enables all chains in each event, testing mode"};
49 
50  ToolHandle<GenericMonitoringTool> m_monTool{this, "MonTool", "", "Monitoring tool"};
51 };
52 
53 #endif
ICTPUnpackingTool.h
CTPUnpackingToolBase::s_CTPIDForUnseededChains
static constexpr int s_CTPIDForUnseededChains
Definition: CTPUnpackingToolBase.h:44
ROIB::RoIBResult
Class holding the LVL1 RoIB result build by the RoIBuilder.
Definition: RoIBResult.h:47
CTPUnpackingToolBase::isEmulated
virtual bool isEmulated() const override
Definition: CTPUnpackingToolBase.h:40
CTPUnpackingToolBase::decode
virtual StatusCode decode(const ROIB::RoIBResult &, HLT::IDVec &) const override
Definition: CTPUnpackingToolBase.cxx:32
CTPUnpackingToolBase
Base class for CTP unpacking tools.
Definition: CTPUnpackingToolBase.h:24
ROIB
Namespace of the LVL1 RoIB simulation.
Definition: ILvl1ResultAccessTool.h:19
CTPUnpackingToolBase::CTPUnpackingToolBase
CTPUnpackingToolBase(const std::string &type, const std::string &name, const IInterface *parent)
Definition: CTPUnpackingToolBase.cxx:8
GenericMonitoringTool.h
HLT::IDVec
std::vector< HLT::Identifier > IDVec
Definition: TrigCompositeUtils/TrigCompositeUtils/HLTIdentifier.h:62
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CTPUnpackingToolBase::m_ctpToChain
std::unordered_map< int, HLT::IDVec > m_ctpToChain
Definition: CTPUnpackingToolBase.h:45
AthAlgTool.h
CTPUnpackingToolBase::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: CTPUnpackingToolBase.h:50
test_pyathena.parent
parent
Definition: test_pyathena.py:15
CTPUnpackingToolBase::passBeforePrescaleSelection
virtual StatusCode passBeforePrescaleSelection(const ROIB::RoIBResult *, const std::vector< std::string > &, bool &) const override
Definition: CTPUnpackingToolBase.cxx:24
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
HLTIdentifier.h
CTPUnpackingToolBase::m_forceEnable
Gaudi::Property< bool > m_forceEnable
Definition: CTPUnpackingToolBase.h:47
CTPUnpackingToolBase::initialize
virtual StatusCode initialize() override
Definition: CTPUnpackingToolBase.cxx:14