ATLAS Offline Software
Loading...
Searching...
No Matches
GenericTruthStrategy.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
6// GenericTruthStrategy.h, (c) ATLAS Detector software
8
9#ifndef ISF_TOOLS_GENERICTRUTHSTRATEGY_H
10#define ISF_TOOLS_GENERICTRUTHSTRATEGY_H 1
11
12// stl includes
13#include <set>
14#include <vector>
15
16// Athena includes
19
20// ISF includes
22
23namespace ISF {
24 typedef std::vector<int> VertexTypesVector;
25 typedef std::set<int> VertexTypesSet;
26 typedef std::vector<int> PDGCodesVector;
27 typedef std::set<int> PDGCodesSet;
28
35 class GenericTruthStrategy final : public extends<AthAlgTool, ITruthStrategy> {
36
37 public:
39 GenericTruthStrategy( const std::string& t, const std::string& n, const IInterface* p );
40
43
44 // Athena algtool's Hooks
45 virtual StatusCode initialize() override;
46 virtual StatusCode finalize() override;
47
49 virtual bool pass( ITruthIncident& incident) const override;
50
51 virtual bool appliesToRegion(unsigned short geoID) const override;
52 private:
56 double m_parentPt2;
57 double m_parentEkin;
58
62 double m_childPt2;
63 double m_childEkin;
65
73
77
78 IntegerArrayProperty m_regionListProperty;
79 };
80
81}
82
83
84#endif //> !ISF_TOOLS_GENERICTRUTHSTRATEGY_H
bool m_useChildPt
child particle kinetic energy / transverse momentum cuts (pT is stored as pT^2 which allows for faste...
bool m_allowChildrenOrParentPass
pass cuts if parent did not
IntegerArrayProperty m_regionListProperty
double m_childPt2
pT momentum cut
bool m_useParentPt
parent kinetic energy / transverse momentum cuts (pT is stored as pT^2 which allows for faster compar...
VertexTypesSet m_vertexTypes
optimized for search
virtual StatusCode initialize() override
double m_parentPt2
parent particle
GenericTruthStrategy(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
VertexTypesVector m_vertexTypesVector
vertex type (physics code) checks
virtual StatusCode finalize() override
PDGCodesSet m_parentPdgCodes
optimized for search
virtual bool appliesToRegion(unsigned short geoID) const override
virtual bool pass(ITruthIncident &incident) const override
true if the ITruthStrategy implementation applies to the given ITruthIncident
PDGCodesVector m_parentPdgCodesVector
PDG code checks.
double m_parentEkin
parent particle
ISF interface class for TruthIncidents.
ISFParticleOrderedQueue.
std::vector< int > PDGCodesVector
std::set< int > VertexTypesSet
std::set< int > PDGCodesSet
std::vector< int > VertexTypesVector