ATLAS Offline Software
Loading...
Searching...
No Matches
TrigJetHypoToolConfig_fastreduction.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGJETHYPOTOOLCONFIG_FASTREDUCTION_H
6#define TRIGJETHYPOTOOLCONFIG_FASTREDUCTION_H
7/********************************************************************
8 *
9 * NAME: TrigJetHypoToolConfig_fastreduction.h
10 * PACKAGE: Trigger/TrigHypothesis/TrigHLTJetHypo
11 *
12 *
13 *********************************************************************/
14
15
22
23#include "./IJetsMatcher.h"
24#include "./ConditionsDefs.h"
27
28
30public extends<AthAlgTool, ITrigJetHypoToolNoGrouperConfig> {
31
32 public:
33
35 const std::string& name,
36 const IInterface* parent);
38
39 virtual StatusCode initialize() override;
40 virtual std::unique_ptr<IJetsMatcher> getMatcher() const override;
41
42 virtual std::size_t requiresNJets() const override;
43 virtual StatusCode checkVals() const override;
44
45
46 private:
47 ToolHandleArray<ITrigJetRepeatedConditionConfig> m_conditionMakers{
48 this, "conditionMakers", {}, "hypo tree Condition builder AlgTools"};
49
50 ToolHandleArray<ITrigHypoJetVectorFilterConfig> m_filterMakers{
51 this, "filterMakers", {}, "AlgTools that construct Condition filters"
52 };
53
54
55 // indirection to allow non-specification of PassThrough filters.
56 // as requested in ATR-27619
57 Gaudi::Property<std::vector<int>> m_filterMakerInds{
58 this, "filterMakerInds", {}, "Indicies into m_filterMakers"
59 };
60
61 Gaudi::Property<std::vector<std::size_t>> m_treeVec{
62 this, "treeVector", {}, "integer sequence representation of jet hypo tree"};
63
64 Gaudi::Property<std::vector<int>> m_leafNodes{
65 this, "leafVector", {}, "node ids for leaf nodes"};
66
68
69 // function to obtain the filters associated with the leaf conditions
70 std::vector<FilterPtr> getFilters() const;
71
72
73};
74#endif
std::vector< ConditionPtr > ConditionPtrs
ToolHandleArray< ITrigHypoJetVectorFilterConfig > m_filterMakers
Gaudi::Property< std::vector< int > > m_filterMakerInds
Gaudi::Property< std::vector< int > > m_leafNodes
TrigJetHypoToolConfig_fastreduction(const std::string &type, const std::string &name, const IInterface *parent)
virtual std::unique_ptr< IJetsMatcher > getMatcher() const override
ToolHandleArray< ITrigJetRepeatedConditionConfig > m_conditionMakers
Gaudi::Property< std::vector< std::size_t > > m_treeVec