ATLAS Offline Software
TruthParticleParentAssociationTool.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id$
16 #ifndef TRUTHD3PDMAKER_TRUTHPARTICLEPARENTASSOCIATIONTOOL_H
17 #define TRUTHD3PDMAKER_TRUTHPARTICLEPARENTASSOCIATIONTOOL_H
18 
19 
22 #include <vector>
23 
24 
25 namespace D3PD {
26 
27 
36  : public MultiAssociationTool<xAOD::TruthParticle>
37 {
38 public:
40 
41 
48  TruthParticleParentAssociationTool (const std::string& type,
49  const std::string& name,
50  const IInterface* parent);
51 
52 
54  virtual StatusCode initialize();
55 
56 
61  virtual StatusCode reset (const xAOD::TruthParticle& p);
62 
63 
69  virtual const xAOD::TruthParticle* next();
70 
71 
72 private:
74  std::vector<const xAOD::TruthParticle*> m_parents;
75 
77  unsigned int m_i;
78 };
79 
80 
81 } // namespace D3PD
82 
83 
84 #endif // not TRUTHD3PDMAKER_TRUTHPARTICLEPARENTASSOCIATIONTOOL_H
85 
MultiAssociationTool.h
Type-safe wrapper for multiple-target associator tools.
D3PD::MultiAssociationTool
Type-safe wrapper for multiple-target associator tools.
Definition: MultiAssociationTool.h:158
D3PD::TruthParticleParentAssociationTool::initialize
virtual StatusCode initialize()
Standard Gaudi initialize method.
Definition: TruthParticleParentAssociationTool.cxx:40
D3PD::TruthParticleParentAssociationTool::next
virtual const xAOD::TruthParticle * next()
Return a pointer to the next element in the association.
Definition: TruthParticleParentAssociationTool.cxx:73
D3PD
Block filler tool for noisy FEB information.
Definition: CaloCellDetailsFillerTool.cxx:29
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
D3PD::TruthParticleParentAssociationTool::TruthParticleParentAssociationTool
TruthParticleParentAssociationTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
Definition: TruthParticleParentAssociationTool.cxx:29
xAOD::TruthParticle_v1
Class describing a truth particle in the MC record.
Definition: TruthParticle_v1.h:37
test_pyathena.parent
parent
Definition: test_pyathena.py:15
D3PD::TruthParticleParentAssociationTool::Base
MultiAssociationTool< xAOD::TruthParticle > Base
Definition: TruthParticleParentAssociationTool.h:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
D3PD::TruthParticleParentAssociationTool::reset
virtual StatusCode reset(const xAOD::TruthParticle &p)
Start the iteration for a new association.
Definition: TruthParticleParentAssociationTool.cxx:51
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
D3PD::TruthParticleParentAssociationTool::m_i
unsigned int m_i
Current index.
Definition: TruthParticleParentAssociationTool.h:77
D3PD::TruthParticleParentAssociationTool
Associate all particles within a DR cut.
Definition: TruthParticleParentAssociationTool.h:37
TruthParticle.h
D3PD::TruthParticleParentAssociationTool::m_parents
std::vector< const xAOD::TruthParticle * > m_parents
Vector of parent pointers.
Definition: TruthParticleParentAssociationTool.h:74