ATLAS Offline Software
Run2ToRun3TrigNavConverterV2.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGNAVTOOLS_RUN2TORUN3TRIGNAVCONVERTERV2_H
5 #define TRIGNAVTOOLS_RUN2TORUN3TRIGNAVCONVERTERV2_H
6 
7 // Framework includes
14 #include "GaudiKernel/IClassIDSvc.h"
19 #include "TrigNavStructure/Types.h"
27 
28 // STL includes
29 #include <string>
30 #include <set>
31 #include <map>
32 
33 // class of temporary objects used to integrate informations needed in conversion process
34 struct ConvProxy
35 {
37  bool isChild(const ConvProxy* other ) const; // returns true if the other isn children (any depth) to this node
38  bool isParent(const ConvProxy* other ) const;
39  bool mergeAllowed(const ConvProxy *other) const;
40  void merge(ConvProxy *other); // this will change the also the "other" so it knows it has been merged
41  const HLT::TriggerElement *te = nullptr;
42  std::vector<HLT::te_id_type> teIDs; // post merging will contain IDs of all merged TEs
43 
44  std::set<ConvProxy *> children;
45  std::set<ConvProxy *> parents;
46  std::set<HLT::Identifier> runChains;
47  std::set<HLT::Identifier> passChains;
48  static const uint64_t MissingFEA = 0;
50 
51  std::vector<HLT::TriggerElement::FeatureAccessHelper> features;
52  std::vector<HLT::TriggerElement::FeatureAccessHelper> rois;
53  std::vector<HLT::TriggerElement::FeatureAccessHelper> tracks;
54 
57  std::vector<TrigCompositeUtils::Decision *> hNode;
58  std::string description() const;
59 };
60 
61 using ConvProxySet_t = std::set<ConvProxy *>;
62 using TEIdToChainsMap_t = std::map<HLT::te_id_type, std::set<HLT::Identifier>>;
63 
69 {
70 public:
71  Run2ToRun3TrigNavConverterV2(const std::string &name, ISvcLocator *pSvcLocator);
72  virtual ~Run2ToRun3TrigNavConverterV2() override;
73 
74  virtual StatusCode initialize() override;
75  virtual StatusCode execute(const EventContext &context) const override;
76  virtual StatusCode finalize() override;
77 
78 private:
79  // configurable properties & services
80  SG::ReadHandleKey<xAOD::TrigNavigation> m_trigNavKey{this, "TrigNavReadKey", "TrigNavigation"};
81  PublicToolHandle<Trig::TrigDecisionTool> m_tdt{this, "TrigDecisionTool", "", "When enabled read navigation from TDT/off by default"};
82  ServiceHandle<TrigConf::IHLTConfigSvc> m_configSvc{this, "TrigConfigSvc", "TrigConf::xAODConfigSvc/xAODConfigSvc", "Trigger configuration service"};
83  ServiceHandle<IClassIDSvc> m_clidSvc{this, "ClassIDSvc", "ClassIDSvc", "Service to translate CLID to class name"};
84 
85  Gaudi::Property<bool> m_doSelfValidation{this, "doSelfValidation", false, "Run consistency checks after stages of conversion (slows down the alg)"};
86  Gaudi::Property<bool> m_doCompression{this, "doCompression", false, "Collapse navigation elements to save ouput space"};
87  Gaudi::Property<bool> m_doLinkFeatures{this, "doLinkFeatures", true, "Add links to objects, setting it false makes sense when running tests"};
88  Gaudi::Property<bool> m_includeTauTrackFeatures{this, "addTauTracks", false, "Add Tau Track collection as feature element"};
89  Gaudi::Property<size_t> m_hNodesPerProxyThreshold{this, "hNodesPerProxyThreshhold", 15, "Limit number of H nodes per TE (if exceeded conversion results in an error)"};
90  Gaudi::Property<std::vector<std::string>> m_chainsToSave{this, "Chains", {}, "If not specified, all chains are handled"};
91  Gaudi::Property<std::vector<std::string>> m_collectionsToSave{this, "Collections", {}};
92  Gaudi::Property<std::vector<std::string>> m_roisToSave{this, "Rois", {}};
93 
94  SG::WriteHandleKey<xAOD::TrigCompositeContainer> m_trigOutputNavKey{this, "OutputNavKey", "HLTNav_R2ToR3Summary"};
95 
99 
101 
103 
105 
107 
108  StatusCode doCompression(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const;
109 
110  StatusCode collapseFeaturesProxies(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const;
111 
113 
115 
116  template <typename MAP>
117  StatusCode collapseProxies(ConvProxySet_t &, MAP &) const;
118 
119  // StatusCode fillRelevantFeatures(ConvProxySet_t& convProxies) const;
120  StatusCode fillRelevantFeatures(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const;
121  StatusCode fillRelevantTracks(ConvProxySet_t &convProxies) const;
122  StatusCode fillRelevantRois(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const;
123 
124  StatusCode createIMHNodes(ConvProxySet_t &, xAOD::TrigCompositeContainer &, const EventContext &) const;
125  StatusCode createL1Nodes(const ConvProxySet_t &convProxies, xAOD::TrigCompositeContainer &decisions, const EventContext &context) const;
126  StatusCode createSFNodes(const ConvProxySet_t &, xAOD::TrigCompositeContainer &, const TEIdToChainsMap_t &finalTEs, const EventContext &context) const;
127  StatusCode updateTerminusNode(xAOD::TrigCompositeContainer &, const EventContext &context) const;
128 
129  StatusCode linkFeaNode(ConvProxySet_t &convProxies, xAOD::TrigCompositeContainer &, const HLT::TrigNavStructure &run2Nav, const EventContext &context) const;
130  StatusCode linkRoiNode(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const;
131  StatusCode linkTrkNode(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const;
132 
133  // helpers
135  std::vector<HLT::TriggerElement::FeatureAccessHelper> filterFEAs(const std::vector<HLT::TriggerElement::FeatureAccessHelper> &feaVector, const HLT::TrigNavStructure &navigationDecoder) const;
136  // produces summary of attached objects (FEAs) in a form of a hash
137  uint64_t feaToHash(const std::vector<HLT::TriggerElement::FeatureAccessHelper> &feaVector, const HLT::TriggerElement *te_ptr, const HLT::TrigNavStructure &navigationDecoder) const;
138 
140  bool feaToSave(const HLT::TriggerElement::FeatureAccessHelper &fea, const std::string& sgName) const;
141 
142  bool roiToSave(const HLT::TrigNavStructure &run2Nav, const HLT::TriggerElement::FeatureAccessHelper &fea) const;
143 
144  // debugging aid, prints selected proxies
145  void printProxies(const ConvProxySet_t& proxies,
146  std::function<bool(const ConvProxy*)> selector=[](const ConvProxy*){return true;},
147  const std::vector<std::function<void(const ConvProxy*)>>& printers={}) const;
148 
149  // useful printers
150  std::function<void(const ConvProxy*)> m_chainIdsPrinter = [&](const ConvProxy* p){ for (auto id: p->passChains ) ATH_MSG_DEBUG("chain id " << id); };
151  std::function<void(const ConvProxy*)> m_teIDPrinter = [&](const ConvProxy* p){ ATH_MSG_DEBUG("TE id " << TrigConf::HLTUtils::hash2string(p->te->getId())); };
152 
153  // return 0 if it is not tpological, else the step before topo merge
154  size_t is2LegTopoChain(const TrigConf::HLTChain* ptrChain ) const;
155 
156 
157  std::size_t getFeaSize(const ConvProxy &) const;
158 
162  std::pair<std::size_t, std::size_t> getHighestPtObject(const ConvProxy&,
163  const HLT::TrigNavStructure&) const;
164 
165  // self validators
166  // they return failure if something is not ok
168 
170 
172 
174 
175  std::tuple<uint32_t, CLID, std::string> getSgKey(const HLT::TrigNavStructure &navigationDecoder, const HLT::TriggerElement::FeatureAccessHelper &helper) const;
176 
177  std::map<CLID, std::set<std::string>> m_collectionsToSaveDecoded;
178 
179  std::vector<std::string> m_setRoiName;
180 
191 
192  // special cases that need separate method
193  // this is to cover chains like this one: HLT_mu4_j15_boffperf_split_dr05_dz02
194  // it's description in the TrigConfigSvc looks like it is 1 leg chain while in fact it is a two leg chain with jet +mu
195  // a special configuration decoding is used to restore multiplicity of 2
197 
198 
199 };
200 
201 #endif // TRIGNAVTOOLS_RUN2TORUN3TRIGNAVCONVERTERV2_H
Run2ToRun3TrigNavConverterV2::fillRelevantTracks
StatusCode fillRelevantTracks(ConvProxySet_t &convProxies) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1033
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
Run2ToRun3TrigNavConverterV2::m_roIDescriptorCLID
CLID m_roIDescriptorCLID
Definition: Run2ToRun3TrigNavConverterV2.h:181
Run2ToRun3TrigNavConverterV2::collapseProxies
StatusCode collapseProxies(ConvProxySet_t &, MAP &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:775
ConvProxy::hNode
std::vector< TrigCompositeUtils::Decision * > hNode
Definition: Run2ToRun3TrigNavConverterV2.h:57
Run2ToRun3TrigNavConverterV2::m_trigNavKey
SG::ReadHandleKey< xAOD::TrigNavigation > m_trigNavKey
Definition: Run2ToRun3TrigNavConverterV2.h:80
Run2ToRun3TrigNavConverterV2::fillRelevantRois
StatusCode fillRelevantRois(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:968
Run2ToRun3TrigNavConverterV2::createL1Nodes
StatusCode createL1Nodes(const ConvProxySet_t &convProxies, xAOD::TrigCompositeContainer &decisions, const EventContext &context) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1194
Run2ToRun3TrigNavConverterV2
Definition: Run2ToRun3TrigNavConverterV2.h:69
ConvProxy::merge
void merge(ConvProxy *other)
Definition: Run2ToRun3TrigNavConverterV2.cxx:62
Run2ToRun3TrigNavConverterV2::initialize
virtual StatusCode initialize() override
Definition: Run2ToRun3TrigNavConverterV2.cxx:154
Run2ToRun3TrigNavConverterV2::~Run2ToRun3TrigNavConverterV2
virtual ~Run2ToRun3TrigNavConverterV2() override
Definition: Run2ToRun3TrigNavConverterV2.cxx:150
ConvProxy::runChains
std::set< HLT::Identifier > runChains
Definition: Run2ToRun3TrigNavConverterV2.h:46
Run2ToRun3TrigNavConverterV2::Run2ToRun3TrigNavConverterV2
Run2ToRun3TrigNavConverterV2(const std::string &name, ISvcLocator *pSvcLocator)
Definition: Run2ToRun3TrigNavConverterV2.cxx:146
TrigNavStructure.h
Run2ToRun3TrigNavConverterV2::linkRoiNode
StatusCode linkRoiNode(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1305
Run2ToRun3TrigNavConverterV2::updateTerminusNode
StatusCode updateTerminusNode(xAOD::TrigCompositeContainer &, const EventContext &context) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1152
Run2ToRun3TrigNavConverterV2::allProxiesConnected
StatusCode allProxiesConnected(const ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1478
BeamSpot::mutex
std::mutex mutex
Definition: InDetBeamSpotVertex.cxx:18
Run2ToRun3TrigNavConverterV2::m_configSvc
ServiceHandle< TrigConf::IHLTConfigSvc > m_configSvc
Definition: Run2ToRun3TrigNavConverterV2.h:82
Run2ToRun3TrigNavConverterV2::m_configUpdateMutex
std::mutex m_configUpdateMutex
Definition: Run2ToRun3TrigNavConverterV2.h:97
Run2ToRun3TrigNavConverterV2::removeUnassociatedProxies
StatusCode removeUnassociatedProxies(ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:730
Run2ToRun3TrigNavConverterV2::getSgKey
std::tuple< uint32_t, CLID, std::string > getSgKey(const HLT::TrigNavStructure &navigationDecoder, const HLT::TriggerElement::FeatureAccessHelper &helper) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1528
ConvProxy::MissingFEA
static const uint64_t MissingFEA
Definition: Run2ToRun3TrigNavConverterV2.h:48
Run2ToRun3TrigNavConverterV2::getHighestPtObject
std::pair< std::size_t, std::size_t > getHighestPtObject(const ConvProxy &, const HLT::TrigNavStructure &) const
Return pair of indices (feature index in proxy->features vector, object index) identifying the highes...
Definition: Run2ToRun3TrigNavConverterV2.cxx:1560
Run2ToRun3TrigNavConverterV2::m_collectionsToSave
Gaudi::Property< std::vector< std::string > > m_collectionsToSave
Definition: Run2ToRun3TrigNavConverterV2.h:91
Run2ToRun3TrigNavConverterV2::m_trigOutputNavKey
SG::WriteHandleKey< xAOD::TrigCompositeContainer > m_trigOutputNavKey
Definition: Run2ToRun3TrigNavConverterV2.h:94
Run2ToRun3TrigNavConverterV2::bjetMuChainConfigDecoder
StatusCode bjetMuChainConfigDecoder(TEIdToChainsMap_t &allTES, TEIdToChainsMap_t &finalTEs, const TrigConf::HLTChain *ptrChain) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:544
Run2ToRun3TrigNavConverterV2::m_roisToSave
Gaudi::Property< std::vector< std::string > > m_roisToSave
Definition: Run2ToRun3TrigNavConverterV2.h:92
Run2ToRun3TrigNavConverterV2::m_TrigRingerRingsCLID
CLID m_TrigRingerRingsCLID
Definition: Run2ToRun3TrigNavConverterV2.h:183
TrigDecisionTool.h
Run2ToRun3TrigNavConverterV2::m_setRoiName
std::vector< std::string > m_setRoiName
Definition: Run2ToRun3TrigNavConverterV2.h:179
Run2ToRun3TrigNavConverterV2::m_collectionsToSaveDecoded
std::map< CLID, std::set< std::string > > m_collectionsToSaveDecoded
Definition: Run2ToRun3TrigNavConverterV2.h:177
Run2ToRun3TrigNavConverterV2::m_TauTrackContainerCLID
CLID m_TauTrackContainerCLID
Definition: Run2ToRun3TrigNavConverterV2.h:190
Run2ToRun3TrigNavConverterV2::m_tdt
PublicToolHandle< Trig::TrigDecisionTool > m_tdt
Definition: Run2ToRun3TrigNavConverterV2.h:81
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
TrigConf::HLTChain
HLT chain configuration information.
Definition: TrigConfHLTData/TrigConfHLTData/HLTChain.h:35
Run2ToRun3TrigNavConverterV2::m_chainIdsPrinter
std::function< void(const ConvProxy *)> m_chainIdsPrinter
Definition: Run2ToRun3TrigNavConverterV2.h:150
Run2ToRun3TrigNavConverterV2::m_hNodesPerProxyThreshold
Gaudi::Property< size_t > m_hNodesPerProxyThreshold
Definition: Run2ToRun3TrigNavConverterV2.h:89
Run2ToRun3TrigNavConverterV2::m_allTEIdsToChains
TEIdToChainsMap_t m_allTEIdsToChains
Definition: Run2ToRun3TrigNavConverterV2.h:98
HLT::TrigNavStructure
Definition: TrigNavStructure.h:40
ConvProxy::tracks
std::vector< HLT::TriggerElement::FeatureAccessHelper > tracks
Definition: Run2ToRun3TrigNavConverterV2.h:53
IHLTConfigSvc.h
ConvProxy::children
std::set< ConvProxy * > children
Definition: Run2ToRun3TrigNavConverterV2.h:44
ConvProxy::rois
std::vector< HLT::TriggerElement::FeatureAccessHelper > rois
Definition: Run2ToRun3TrigNavConverterV2.h:52
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
Run2ToRun3TrigNavConverterV2::feaToHash
uint64_t feaToHash(const std::vector< HLT::TriggerElement::FeatureAccessHelper > &feaVector, const HLT::TriggerElement *te_ptr, const HLT::TrigNavStructure &navigationDecoder) const
returns true if this particular feature is to be saved (linked)
Definition: Run2ToRun3TrigNavConverterV2.cxx:1413
TrigNavigation.h
Run2ToRun3TrigNavConverterV2::m_roIDescriptorCollectionCLID
CLID m_roIDescriptorCollectionCLID
Definition: Run2ToRun3TrigNavConverterV2.h:182
runBeamSpotCalibration.helper
helper
Definition: runBeamSpotCalibration.py:115
TrigCompositeUtils.h
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:209
Run2ToRun3TrigNavConverterV2::createSFNodes
StatusCode createSFNodes(const ConvProxySet_t &, xAOD::TrigCompositeContainer &, const TEIdToChainsMap_t &finalTEs, const EventContext &context) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1078
Run2ToRun3TrigNavConverterV2::filterFEAs
std::vector< HLT::TriggerElement::FeatureAccessHelper > filterFEAs(const std::vector< HLT::TriggerElement::FeatureAccessHelper > &feaVector, const HLT::TrigNavStructure &navigationDecoder) const
< both method skip TrigPassBits
Definition: Run2ToRun3TrigNavConverterV2.cxx:1391
HLTUtils.h
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
Run2ToRun3TrigNavConverterV2::extractTECtoChainMapping
StatusCode extractTECtoChainMapping(TEIdToChainsMap_t &allTES, TEIdToChainsMap_t &finalTEs) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:397
ConvProxy::teIDs
std::vector< HLT::te_id_type > teIDs
Definition: Run2ToRun3TrigNavConverterV2.h:42
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
IParticleContainer.h
HLT::TriggerElement
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
Definition: TrigNavStructure/TrigNavStructure/TriggerElement.h:27
ConvProxy::description
std::string description() const
Definition: Run2ToRun3TrigNavConverterV2.cxx:131
Types.h
Run2ToRun3TrigNavConverterV2::linkTrkNode
StatusCode linkTrkNode(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1327
Run2ToRun3TrigNavConverterV2::createIMHNodes
StatusCode createIMHNodes(ConvProxySet_t &, xAOD::TrigCompositeContainer &, const EventContext &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1049
ConvProxy::passChains
std::set< HLT::Identifier > passChains
Definition: Run2ToRun3TrigNavConverterV2.h:47
HLTSignature.h
Run2ToRun3TrigNavConverterV2::m_includeTauTrackFeatures
Gaudi::Property< bool > m_includeTauTrackFeatures
Definition: Run2ToRun3TrigNavConverterV2.h:88
Run2ToRun3TrigNavConverterV2::m_TrigEMClusterContainerCLID
CLID m_TrigEMClusterContainerCLID
Definition: Run2ToRun3TrigNavConverterV2.h:186
TEIdToChainsMap_t
std::map< HLT::te_id_type, std::set< HLT::Identifier > > TEIdToChainsMap_t
Definition: Run2ToRun3TrigNavConverterV2.h:62
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
xAOD::TrigComposite_v1
Class used to describe composite objects in the HLT.
Definition: TrigComposite_v1.h:52
ConvProxy::ConvProxy
ConvProxy(const HLT::TriggerElement *te)
Definition: Run2ToRun3TrigNavConverterV2.cxx:23
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
Chain.h
xAOD::decisions
decisions
Definition: TrigComposite_v1.cxx:101
Run2ToRun3TrigNavConverterV2::removeTopologicalProxies
StatusCode removeTopologicalProxies(ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:916
TrigCompositeContainer.h
ConvProxy::imNode
TrigCompositeUtils::Decision * imNode
Definition: Run2ToRun3TrigNavConverterV2.h:56
Run2ToRun3TrigNavConverterV2::noUnconnectedHNodes
StatusCode noUnconnectedHNodes(const xAOD::TrigCompositeContainer &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1498
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
ConvProxy::isParent
bool isParent(const ConvProxy *other) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:39
Run2ToRun3TrigNavConverterV2::collapseFeaturesProxies
StatusCode collapseFeaturesProxies(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:804
Run2ToRun3TrigNavConverterV2::m_finalTEIdsToChains
TEIdToChainsMap_t m_finalTEIdsToChains
Definition: Run2ToRun3TrigNavConverterV2.h:98
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
Run2ToRun3TrigNavConverterV2::m_doCompression
Gaudi::Property< bool > m_doCompression
Definition: Run2ToRun3TrigNavConverterV2.h:86
ConvProxySet_t
std::set< ConvProxy * > ConvProxySet_t
Definition: Run2ToRun3TrigNavConverterV2.h:61
TrigConf::HLTUtils::hash2string
static const std::string hash2string(HLTHash, const std::string &category="TE")
hash function translating identifiers into names (via internal dictionary)
Run2ToRun3TrigNavConverterV2::associateChainsToProxies
StatusCode associateChainsToProxies(ConvProxySet_t &, const TEIdToChainsMap_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:665
HLTTriggerElement.h
Run2ToRun3TrigNavConverterV2::m_doLinkFeatures
Gaudi::Property< bool > m_doLinkFeatures
Definition: Run2ToRun3TrigNavConverterV2.h:87
Run2ToRun3TrigNavConverterV2::execute
virtual StatusCode execute(const EventContext &context) const override
Definition: Run2ToRun3TrigNavConverterV2.cxx:249
Run2ToRun3TrigNavConverterV2::getFeaSize
std::size_t getFeaSize(const ConvProxy &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1224
Run2ToRun3TrigNavConverterV2::numberOfHNodesPerProxyNotExcessive
StatusCode numberOfHNodesPerProxyNotExcessive(const ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1492
Run2ToRun3TrigNavConverterV2::allProxiesHaveChain
StatusCode allProxiesHaveChain(const ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1464
Run2ToRun3TrigNavConverterV2::fillRelevantFeatures
StatusCode fillRelevantFeatures(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:943
Run2ToRun3TrigNavConverterV2::feaToSave
bool feaToSave(const HLT::TriggerElement::FeatureAccessHelper &fea, const std::string &sgName) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1437
Run2ToRun3TrigNavConverterV2::collapseFeaturelessProxies
StatusCode collapseFeaturelessProxies(ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:852
Run2ToRun3TrigNavConverterV2::m_CaloClusterCLID
CLID m_CaloClusterCLID
Definition: Run2ToRun3TrigNavConverterV2.h:187
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
Run2ToRun3TrigNavConverterV2::roiToSave
bool roiToSave(const HLT::TrigNavStructure &run2Nav, const HLT::TriggerElement::FeatureAccessHelper &fea) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1453
python.selector.AtlRunQuerySelectorLhcOlc.selector
selector
Definition: AtlRunQuerySelectorLhcOlc.py:610
HLT::TriggerElement::FeatureAccessHelper
the FeatureAccessHelper is a class used to keep track of features attached to this TE.
Definition: TrigNavStructure/TrigNavStructure/TriggerElement.h:192
Run2ToRun3TrigNavConverterV2::is2LegTopoChain
size_t is2LegTopoChain(const TrigConf::HLTChain *ptrChain) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:353
Run2ToRun3TrigNavConverterV2::mirrorTEsStructure
StatusCode mirrorTEsStructure(ConvProxySet_t &, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:583
ConvProxy::l1Node
TrigCompositeUtils::Decision * l1Node
Definition: Run2ToRun3TrigNavConverterV2.h:55
Run2ToRun3TrigNavConverterV2::finalize
virtual StatusCode finalize() override
Definition: Run2ToRun3TrigNavConverterV2.cxx:244
Run2ToRun3TrigNavConverterV2::m_clidSvc
ServiceHandle< IClassIDSvc > m_clidSvc
Definition: Run2ToRun3TrigNavConverterV2.h:83
Run2ToRun3TrigNavConverterV2::doCompression
StatusCode doCompression(ConvProxySet_t &convProxies, const HLT::TrigNavStructure &run2Nav) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:759
Run2ToRun3TrigNavConverterV2::m_CaloClusterContainerCLID
CLID m_CaloClusterContainerCLID
Definition: Run2ToRun3TrigNavConverterV2.h:188
ConvProxy
Definition: Run2ToRun3TrigNavConverterV2.h:35
Run2ToRun3TrigNavConverterV2::printProxies
void printProxies(const ConvProxySet_t &proxies, std::function< bool(const ConvProxy *)> selector=[](const ConvProxy *){return true;}, const std::vector< std::function< void(const ConvProxy *)>> &printers={}) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:649
ConvProxy::mergeAllowed
bool mergeAllowed(const ConvProxy *other) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:50
ConvProxy::feaHash
uint64_t feaHash
Definition: Run2ToRun3TrigNavConverterV2.h:49
Run2ToRun3TrigNavConverterV2::linkFeaNode
StatusCode linkFeaNode(ConvProxySet_t &convProxies, xAOD::TrigCompositeContainer &, const HLT::TrigNavStructure &run2Nav, const EventContext &context) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:1246
ConvProxy::features
std::vector< HLT::TriggerElement::FeatureAccessHelper > features
Definition: Run2ToRun3TrigNavConverterV2.h:51
Run2ToRun3TrigNavConverterV2::m_TrigRingerRingsContainerCLID
CLID m_TrigRingerRingsContainerCLID
Definition: Run2ToRun3TrigNavConverterV2.h:184
Run2ToRun3TrigNavConverterV2::cureUnassociatedProxies
StatusCode cureUnassociatedProxies(ConvProxySet_t &) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:697
Run2ToRun3TrigNavConverterV2::m_teIDPrinter
std::function< void(const ConvProxy *)> m_teIDPrinter
Definition: Run2ToRun3TrigNavConverterV2.h:151
ConvProxy::te
const HLT::TriggerElement * te
Definition: Run2ToRun3TrigNavConverterV2.h:41
ConvProxy::parents
std::set< ConvProxy * > parents
Definition: Run2ToRun3TrigNavConverterV2.h:45
Run2ToRun3TrigNavConverterV2::m_TrigEMClusterCLID
CLID m_TrigEMClusterCLID
Definition: Run2ToRun3TrigNavConverterV2.h:185
TrigComposite.h
Run2ToRun3TrigNavConverterV2::m_chainsToSave
Gaudi::Property< std::vector< std::string > > m_chainsToSave
Definition: Run2ToRun3TrigNavConverterV2.h:90
Run2ToRun3TrigNavConverterV2::m_TrackParticleContainerCLID
CLID m_TrackParticleContainerCLID
Definition: Run2ToRun3TrigNavConverterV2.h:189
TrigRoiDescriptorCollection.h
ConvProxy::isChild
bool isChild(const ConvProxy *other) const
Definition: Run2ToRun3TrigNavConverterV2.cxx:29
Run2ToRun3TrigNavConverterV2::m_doSelfValidation
Gaudi::Property< bool > m_doSelfValidation
Definition: Run2ToRun3TrigNavConverterV2.h:85
ServiceHandle< TrigConf::IHLTConfigSvc >
TypedHolder.h