ATLAS Offline Software
Loading...
Searching...
No Matches
KeepChildrenTruthStrategy.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ISF_TOOLS_KEEPCHILDRENTRUTHSTRATEGY_H
6#define ISF_TOOLS_KEEPCHILDRENTRUTHSTRATEGY_H 1
7
8// stl includes
9#include <set>
10#include <vector>
11
12// Athena includes
14
15// ISF includes
17
18namespace ISF {
19 typedef std::vector<int> VertexTypesVector;
20 typedef std::set<int> VertexTypesSet;
21 typedef std::vector<int> PDGCodesVector;
22 typedef std::set<int> PDGCodesSet;
23
31 class KeepChildrenTruthStrategy final : public extends<AthAlgTool, ITruthStrategy> {
32
33 public:
35 KeepChildrenTruthStrategy( const std::string& t, const std::string& n, const IInterface* p );
36
39
40 // Athena algtool's Hooks
41 virtual StatusCode initialize() override final;
42
44 virtual bool pass( ITruthIncident& incident) const override final;
45
47 virtual bool appliesToRegion(unsigned short) const override final;
48
49 private:
50
55 Gaudi::Property<int> m_vertexTypeRangeLow{this, "VertexTypeRangeLow", 0};
56 Gaudi::Property<int> m_vertexTypeRangeHigh{this, "VertexTypeRangeHigh", 0};
58 Gaudi::Property<int> m_passProcessCategory{this, "PassProcessCategory", 9};
59 Gaudi::Property<bool> m_bsmParent{this, "BSMParent", false};
61 Gaudi::Property<PDGCodesVector> m_parentPdgCodesVector{this, "ParentPDGCodes", 0};
63 };
64
65}
66
67#endif //> !ISF_TOOLS_KEEPCHILDRENTRUTHSTRATEGY_H
ISF interface class for TruthIncidents.
VertexTypesSet m_vertexTypes
optimized for search
virtual StatusCode initialize() override final
KeepChildrenTruthStrategy(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
Gaudi::Property< PDGCodesVector > m_parentPdgCodesVector
PDG code checks.
Gaudi::Property< bool > m_bsmParent
Apply to BSM parents.
virtual bool pass(ITruthIncident &incident) const override final
true if the ITruthStrategy implementation applies to the given ITruthIncident
virtual bool appliesToRegion(unsigned short) const override final
true if the strategy applies to this region
Gaudi::Property< VertexTypesVector > m_vertexTypesVector
vertex type (physics code) checks
~KeepChildrenTruthStrategy()=default
Destructor.
PDGCodesSet m_parentPdgCodes
optimized for search
Support class for PropertyMgr.
Definition Property.h:23
=============================================================================
ISFParticleOrderedQueue.
std::vector< int > PDGCodesVector
std::set< int > VertexTypesSet
std::set< int > PDGCodesSet
std::vector< int > VertexTypesVector
#define private