ATLAS Offline Software
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 
23 namespace 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 
61  bool m_useChildPt;
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
ISF::GenericTruthStrategy::m_parentPdgCodes
PDGCodesSet m_parentPdgCodes
optimized for search
Definition: GenericTruthStrategy.h:76
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
AtlasRegion.h
ISF::GenericTruthStrategy::m_doVertexRangeCheck
bool m_doVertexRangeCheck
Definition: GenericTruthStrategy.h:69
ISF::VertexTypesVector
std::vector< int > VertexTypesVector
Definition: GenericTruthStrategy.h:24
ISF::GenericTruthStrategy::m_allowChildrenOrParentPass
bool m_allowChildrenOrParentPass
pass cuts if parent did not
Definition: GenericTruthStrategy.h:64
ISF::GenericTruthStrategy::m_childPt2
double m_childPt2
pT momentum cut
Definition: GenericTruthStrategy.h:62
ISF::GenericTruthStrategy::~GenericTruthStrategy
~GenericTruthStrategy()
Destructor.
Definition: GenericTruthStrategy.cxx:53
ISF::PDGCodesVector
std::vector< int > PDGCodesVector
Definition: GenericTruthStrategy.h:26
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
ISF::GenericTruthStrategy::m_parentEkin
double m_parentEkin
parent particle
Definition: GenericTruthStrategy.h:57
ISF::GenericTruthStrategy::m_vertexTypesVector
VertexTypesVector m_vertexTypesVector
vertex type (physics code) checks
Definition: GenericTruthStrategy.h:67
ISF::PDGCodesSet
std::set< int > PDGCodesSet
Definition: GenericTruthStrategy.h:27
ISF::GenericTruthStrategy::finalize
virtual StatusCode finalize() override
Definition: GenericTruthStrategy.cxx:138
ISF::GenericTruthStrategy::appliesToRegion
virtual bool appliesToRegion(unsigned short geoID) const override
Definition: GenericTruthStrategy.cxx:210
ITruthStrategy.h
ISF::VertexTypesSet
std::set< int > VertexTypesSet
Definition: GenericTruthStrategy.h:25
ISF::GenericTruthStrategy
Definition: GenericTruthStrategy.h:35
ISF::GenericTruthStrategy::m_vertexTypeRangeLow
int m_vertexTypeRangeLow
Definition: GenericTruthStrategy.h:70
ISF::GenericTruthStrategy::m_vertexTypeRangeHigh
int m_vertexTypeRangeHigh
Definition: GenericTruthStrategy.h:71
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ISF::GenericTruthStrategy::m_vertexTypeRangeLength
unsigned m_vertexTypeRangeLength
Definition: GenericTruthStrategy.h:72
ISF::ITruthIncident
Definition: ITruthIncident.h:45
AthAlgTool.h
ISF::GenericTruthStrategy::m_parentPdgCodesVector
PDGCodesVector m_parentPdgCodesVector
PDG code checks.
Definition: GenericTruthStrategy.h:75
ISF::GenericTruthStrategy::pass
virtual bool pass(ITruthIncident &incident) const override
true if the ITruthStrategy implementation applies to the given ITruthIncident
Definition: GenericTruthStrategy.cxx:144
ISF::GenericTruthStrategy::m_parentPt2
double m_parentPt2
parent particle
Definition: GenericTruthStrategy.h:56
ISF::GenericTruthStrategy::initialize
virtual StatusCode initialize() override
Definition: GenericTruthStrategy.cxx:58
ISF::GenericTruthStrategy::GenericTruthStrategy
GenericTruthStrategy(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
Definition: GenericTruthStrategy.cxx:17
ISF::GenericTruthStrategy::m_regionListProperty
IntegerArrayProperty m_regionListProperty
Definition: GenericTruthStrategy.h:78
ISF::GenericTruthStrategy::m_childEkin
double m_childEkin
Ekin cut.
Definition: GenericTruthStrategy.h:63
ISF
ISFParticleOrderedQueue.
Definition: PrimaryParticleInformation.h:13
ISF::GenericTruthStrategy::m_useChildPt
bool m_useChildPt
child particle kinetic energy / transverse momentum cuts (pT is stored as pT^2 which allows for faste...
Definition: GenericTruthStrategy.h:61
ISF::GenericTruthStrategy::m_vertexTypes
VertexTypesSet m_vertexTypes
optimized for search
Definition: GenericTruthStrategy.h:68
ISF::GenericTruthStrategy::m_useParentPt
bool m_useParentPt
parent kinetic energy / transverse momentum cuts (pT is stored as pT^2 which allows for faster compar...
Definition: GenericTruthStrategy.h:55