ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Generators
GeneratorObjectsTPCnv
GeneratorObjectsTPCnv
GenEventCnv_p1.h
Go to the documentation of this file.
1
2
3
/*
4
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// GenEventCnv_p1.h
8
// Header file for class GenEventCnv_p1
9
// Author: S.Binet<binet@cern.ch>
11
#ifndef GENERATOROBJECTSTPCNV_GENEVENTCNV_P1_H
12
#define GENERATOROBJECTSTPCNV_GENEVENTCNV_P1_H
13
14
// STL includes
15
#include <unordered_map>
16
17
// AthenaPoolCnvSvc includes
18
#include "
AthenaPoolCnvSvc/T_AthenaPoolTPConverter.h
"
19
#include <sstream>
20
21
// HepMC includes
22
#include "
AtlasHepMC/GenEvent.h
"
23
#include "
AtlasHepMC/GenVertex.h
"
24
#include "
AtlasHepMC/GenParticle.h
"
25
// GeneratorObjectsTPCnv includes
26
#include "
GeneratorObjectsTPCnv/GenEvent_p1.h
"
27
28
// Forward declaration
29
class
MsgStream;
30
namespace
HepMC
{
struct
DataPool
; }
31
32
class
GenEventCnv_p1
:
public
T_AthenaPoolTPCnvBase
<HepMC::GenEvent,
33
GenEvent_p1>
34
{
36
// Public methods:
38
public
:
39
42
GenEventCnv_p1
(
HepMC::DataPool
*
pool
= 0 );
43
46
//virtual ~GenEventCnv_p1();
47
49
// Const methods:
51
55
virtual
void
persToTrans
(
const
GenEvent_p1
* persObj,
56
HepMC::GenEvent
* transObj,
57
MsgStream&
msg
);
58
62
virtual
void
transToPers
(
const
HepMC::GenEvent
* transObj,
63
GenEvent_p1
* persObj,
64
MsgStream&
msg
);
65
67
// Non-const methods:
69
71
void
setDataPool
(
HepMC::DataPool
*
pool
);
72
74
// Protected methods:
76
protected
:
77
78
typedef
std::unordered_map<HepMC::GenParticlePtr,int>
ParticlesMap_t
;
79
89
static
HepMC::GenVertexPtr
90
createGenVertex
(
const
GenEvent_p1
& persEvt,
91
const
GenVertex_p1
& vtx,
92
ParticlesMap_t
& bcToPart,
93
HepMC::DataPool
& datapools,
HepMC::GenEvent
* parent=
nullptr
) ;
94
100
static
HepMC::GenParticlePtr
101
createGenParticle
(
const
GenParticle_p1
& p,
102
ParticlesMap_t
& partToEndVtx,
103
HepMC::DataPool
& datapools,
const
HepMC::GenVertexPtr
& parent=
nullptr
) ;
104
106
// Protected data:
108
protected
:
109
112
HepMC::DataPool
*
m_pool
;
113
};
114
115
#endif
//> GENERATOROBJECTSTPCNV_GENEVENTCNV_P1_H
GenEvent.h
GenEvent_p1.h
GenParticle.h
GenVertex.h
T_AthenaPoolTPConverter.h
T_AthenaPoolTPCnvBase
TPConverterBase< TRANS, PERS > T_AthenaPoolTPCnvBase
Definition
T_AthenaPoolTPConverter.h:41
GenEventCnv_p1::transToPers
virtual void transToPers(const HepMC::GenEvent *transObj, GenEvent_p1 *persObj, MsgStream &msg)
Method creating the persistent representation GenEvent_p1 from its transient representation HepMC::Ge...
Definition
GenEventCnv_p1.cxx:109
GenEventCnv_p1::m_pool
HepMC::DataPool * m_pool
a PIMPL idiom to hide the DataPools (and their specialized destructors) from the outside world
Definition
GenEventCnv_p1.h:112
GenEventCnv_p1::createGenParticle
static HepMC::GenParticlePtr createGenParticle(const GenParticle_p1 &p, ParticlesMap_t &partToEndVtx, HepMC::DataPool &datapools, const HepMC::GenVertexPtr &parent=nullptr)
Create a transient GenParticle from a persistent one (vers.1) It returns the new GenParticle.
Definition
GenEventCnv_p1.cxx:156
GenEventCnv_p1::createGenVertex
static HepMC::GenVertexPtr createGenVertex(const GenEvent_p1 &persEvt, const GenVertex_p1 &vtx, ParticlesMap_t &bcToPart, HepMC::DataPool &datapools, HepMC::GenEvent *parent=nullptr)
Create a transient GenVertex from a persistent one (version 1) It returns the new GenVertex.
Definition
GenEventCnv_p1.cxx:130
GenEventCnv_p1::persToTrans
virtual void persToTrans(const GenEvent_p1 *persObj, HepMC::GenEvent *transObj, MsgStream &msg)
Destructor:
Definition
GenEventCnv_p1.cxx:36
GenEventCnv_p1::setDataPool
void setDataPool(HepMC::DataPool *pool)
reset the @ HepMC::DataPool pointer
Definition
GenEventCnv_p1.cxx:31
GenEventCnv_p1::ParticlesMap_t
std::unordered_map< HepMC::GenParticlePtr, int > ParticlesMap_t
Definition
GenEventCnv_p1.h:78
GenEventCnv_p1::GenEventCnv_p1
GenEventCnv_p1(HepMC::DataPool *pool=0)
constructor:
Definition
GenEventCnv_p1.cxx:23
GenEvent_p1
Definition
GenEvent_p1.h:27
GenParticle_p1
Definition
GenParticle_p1.h:23
GenVertex_p1
Definition
GenVertex_p1.h:25
HepMC
Definition
Barcode.h:13
HepMC::GenParticlePtr
HepMC3::GenParticlePtr GenParticlePtr
Definition
GenParticle.h:19
HepMC::GenVertexPtr
HepMC3::GenVertexPtr GenVertexPtr
Definition
GenVertex.h:23
HepMC::GenEvent
HepMC3::GenEvent GenEvent
Definition
GenEvent.h:39
pool
Framework include files.
Definition
libname.h:15
HepMC::DataPool
Definition
HepMcDataPool.h:23
msg
MsgStream & msg
Definition
testRead.cxx:32
Generated on
for ATLAS Offline Software by
1.17.0