ATLAS Offline Software
Loading...
Searching...
No Matches
Lvl1ResultAccessTool.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 TRIGDECISIONMAKER_LVL1RESULTACCESSTOOL_H
6#define TRIGDECISIONMAKER_LVL1RESULTACCESSTOOL_H
7
9
14
15#include <vector>
16#include <bitset>
17#include <string>
18
19// forward declarations
20namespace LVL1CTP {
21 class Lvl1Result;
22 class Lvl1Item;
23}
24
25namespace HLT {
26
39 class Lvl1ResultAccessTool : public extends<AthAlgTool, ILvl1ResultAccessTool>
40 {
41 public:
42
43 Lvl1ResultAccessTool(const std::string& name, const std::string& type,
44 const IInterface* parent);
45
46 virtual StatusCode initialize() override;
47
48 virtual std::vector< std::unique_ptr<LVL1CTP::Lvl1Item>> makeLvl1ItemConfig(const EventContext& context) const override;
49
53 virtual bool isCalibrationEvent(const ROIB::RoIBResult& result) const override;
54
55
63 virtual
64 std::vector< const LVL1CTP::Lvl1Item* >
65 createL1Items(const std::vector< std::unique_ptr<LVL1CTP::Lvl1Item> >& lvl1ItemConfig,
67 LVL1CTP::Lvl1Result const** lvl1ResultOut = nullptr) const override;
68
74 virtual
75 std::bitset<3> lvl1EMTauJetOverflow(const ROIB::RoIBResult& result) override;
76
77 private:
78
79 // L1 decoders
82
84 SG::ReadCondHandleKey<TrigConf::L1PrescalesSet> m_l1PrescaleSetInputKey{ this, "L1Prescales", "L1Prescales", "L1 prescales set"};
85
86 SG::WriteHandleKey<LVL1CTP::Lvl1Result> m_l1ResultKey{ this, "L1Result", "L1Result", "L1 result"};
87 };
88} // end namespace
89
90
91#endif
virtual bool isCalibrationEvent(const ROIB::RoIBResult &result) const override
checks if we have calibration items fired in this event
virtual std::vector< std::unique_ptr< LVL1CTP::Lvl1Item > > makeLvl1ItemConfig(const EventContext &context) const override
virtual StatusCode initialize() override
SG::ReadCondHandleKey< TrigConf::L1PrescalesSet > m_l1PrescaleSetInputKey
access to L1Prescales
virtual std::bitset< 3 > lvl1EMTauJetOverflow(const ROIB::RoIBResult &result) override
Check if there was an overflow in the TOB transmission to CMX.
LVL1::JEPRoIDecoder m_jepDecoder
SG::WriteHandleKey< LVL1CTP::Lvl1Result > m_l1ResultKey
virtual std::vector< const LVL1CTP::Lvl1Item * > createL1Items(const std::vector< std::unique_ptr< LVL1CTP::Lvl1Item > > &lvl1ItemConfig, const ROIB::RoIBResult &result, LVL1CTP::Lvl1Result const **lvl1ResultOut=nullptr) const override
Extract LVL1 items from given RoIBResult.
Lvl1ResultAccessTool(const std::string &name, const std::string &type, const IInterface *parent)
std Gaudi constructor
A level 1 calorimeter trigger conversion service: returns the Coordinate represented by a RoI word.
A level 1 calorimeter trigger conversion service: returns the Coordinate represented by a RoI word.
Class holding the LVL1 RoIB result build by the RoIBuilder.
Definition RoIBResult.h:47
Property holding a SG store/key/clid from which a WriteHandle is made.
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...