ATLAS Offline Software
PhysicsAnalysis
TruthParticleID
McParticleKernel
McParticleKernel
ITruthParticleCnvTool.h
Go to the documentation of this file.
1
3
/*
4
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// ITruthParticleCnvTool.h
8
// Header file for class ITruthParticleCnvTool
9
// Author: S.Binet<binet@cern.ch>
11
#ifndef MCPARTICLEKERNEL_ITRUTHPARTICLECNVTOOL_H
12
#define MCPARTICLEKERNEL_ITRUTHPARTICLECNVTOOL_H
13
22
// STL includes
23
24
// FrameWork includes
25
#include "GaudiKernel/IAlgTool.h"
26
#include "GaudiKernel/IProperty.h"
27
28
// McParticleKernel includes
29
#include "
McParticleKernel/ITruthParticleVisitor.h
"
30
31
// Forward declaration
32
class
McEventCollection
;
33
class
TruthParticle
;
34
class
TruthParticleContainer
;
35
class
EventContext;
36
37
static
const
InterfaceID IID_ITruthParticleCnvTool(
"ITruthParticleCnvTool"
, 1, 0);
38
39
class
ITruthParticleCnvTool
:
virtual
public
IAlgTool,
40
virtual
public
IProperty
41
{
42
44
// Public methods:
46
public
:
47
50
virtual
~ITruthParticleCnvTool
();
51
52
// Athena algorithm's Hooks
53
virtual
StatusCode
execute
()
const
= 0;
54
virtual
StatusCode
execute
(
const
EventContext& ctx)
const
= 0;
55
57
// Const methods:
59
static
const
InterfaceID&
interfaceID
();
60
62
// Non-const methods:
64
72
virtual
73
StatusCode
convert
(
const
McEventCollection
* mcEvts,
74
const
unsigned
int
genEvtIndex,
75
TruthParticleContainer
* mcParts,
76
const
ITruthParticleVisitor
* visitor = 0 )
const
= 0;
77
81
StatusCode
convert
(
const
McEventCollection
* mcCollection,
82
TruthParticleContainer
* container )
const
;
83
89
StatusCode
90
convertMcEventCollection
(
const
McEventCollection
* mcCollection,
91
TruthParticleContainer
* container )
const
;
95
// Protected data:
98
protected
:
99
100
};
101
102
106
inline
const
InterfaceID&
ITruthParticleCnvTool::interfaceID
()
107
{
108
return
IID_ITruthParticleCnvTool;
109
}
110
111
inline
StatusCode
112
ITruthParticleCnvTool::convert
(
const
McEventCollection
* mcCollection,
113
TruthParticleContainer
* container )
const
114
{
115
const
unsigned
int
genEvtIndex = 0;
116
const
ITruthParticleVisitor
* dummyVisitor = 0;
117
return
this->
convert
( mcCollection, genEvtIndex, container, dummyVisitor );
118
}
119
120
inline
StatusCode
121
ITruthParticleCnvTool::convertMcEventCollection
(
const
McEventCollection
* mcCollection,
122
TruthParticleContainer
* container )
const
123
{
124
const
unsigned
int
genEvtIndex = 0;
125
const
ITruthParticleVisitor
* dummyVisitor = 0;
126
return
this->
convert
( mcCollection, genEvtIndex, container, dummyVisitor );
127
}
128
129
#endif //> MCPARTICLEKERNEL_ITRUTHPARTICLECNVTOOL_H
ITruthParticleCnvTool::convert
virtual StatusCode convert(const McEventCollection *mcEvts, const unsigned int genEvtIndex, TruthParticleContainer *mcParts, const ITruthParticleVisitor *visitor=0) const =0
Convert a McEventCollection into an TruthParticleContainer.
ITruthParticleCnvTool::execute
virtual StatusCode execute() const =0
ITruthParticleCnvTool::convertMcEventCollection
StatusCode convertMcEventCollection(const McEventCollection *mcCollection, TruthParticleContainer *container) const
Convert a McEventCollection into an TruthParticleContainer.
Definition:
ITruthParticleCnvTool.h:121
TruthParticle
Definition:
PhysicsAnalysis/TruthParticleID/McParticleEvent/McParticleEvent/TruthParticle.h:58
TruthParticleContainer
Definition:
PhysicsAnalysis/TruthParticleID/McParticleEvent/McParticleEvent/TruthParticleContainer.h:42
ITruthParticleCnvTool::~ITruthParticleCnvTool
virtual ~ITruthParticleCnvTool()
Destructor:
Definition:
ITruthParticleCnvTool.cxx:25
ITruthParticleCnvTool::execute
virtual StatusCode execute(const EventContext &ctx) const =0
ITruthParticleVisitor
Definition:
ITruthParticleVisitor.h:30
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ITruthParticleVisitor.h
McEventCollection
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
Definition:
McEventCollection.h:33
ITruthParticleCnvTool
Definition:
ITruthParticleCnvTool.h:41
ITruthParticleCnvTool::interfaceID
static const InterfaceID & interfaceID()
Inline methods:
Definition:
ITruthParticleCnvTool.h:106
Generated on Sun Jun 30 2024 21:18:21 for ATLAS Offline Software by
1.8.18