ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Generators
GeneratorObjectsTPCnv
GeneratorObjectsTPCnv
McEventCollectionCnv_p6.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
// McEventCollectionCnv_p6.h
8
// Header file for class McEventCollectionCnv_p6
9
// Author: J.Chapman
11
#ifndef GENERATOROBJECTSTPCNV_MCEVENTCOLLECTIONCNV_p6_H
12
#define GENERATOROBJECTSTPCNV_MCEVENTCOLLECTIONCNV_p6_H
13
14
// STL includes
15
#include <unordered_map>
16
17
# include "
AtlasHepMC/GenEvent.h
"
18
# include "
AtlasHepMC/GenVertex.h
"
19
# include "
AtlasHepMC/GenParticle.h
"
20
# include "HepMC3/Data/GenRunInfoData.h"
21
#include "
GeneratorObjects/McEventCollection.h
"
22
23
// AthenaPoolCnvSvc includes
24
#include "
AthenaPoolCnvSvc/T_AthenaPoolTPConverter.h
"
25
26
// GeneratorObjectsTPCnv includes
27
#include "
GeneratorObjectsTPCnv/McEventCollection_p6.h
"
28
29
#include "GaudiKernel/ServiceHandle.h"
30
31
class
IHepMCWeightSvc
;
32
33
// Forward declaration
34
class
MsgStream;
35
namespace
HepMC
{
struct
DataPool
; }
36
37
class
McEventCollectionCnv_p6
:
public
T_AthenaPoolTPCnvBase
<
38
McEventCollection,
39
McEventCollection_p6
40
>
41
{
42
43
typedef
T_AthenaPoolTPCnvBase
<
McEventCollection
,
44
McEventCollection_p6
>
Base_t
;
45
47
// Public methods:
49
public
:
50
53
McEventCollectionCnv_p6
();
54
57
McEventCollectionCnv_p6
(
const
McEventCollectionCnv_p6
& rhs );
58
61
McEventCollectionCnv_p6
&
operator=
(
const
McEventCollectionCnv_p6
& rhs );
62
65
virtual
~McEventCollectionCnv_p6
();
66
67
void
setPileup
();
68
72
virtual
void
persToTrans
(
const
McEventCollection_p6
* persObj,
73
McEventCollection
* transObj,
74
MsgStream &log ) ;
75
79
virtual
void
transToPers
(
const
McEventCollection
* transObj,
80
McEventCollection_p6
* persObj,
81
MsgStream &log ) ;
82
83
protected
:
84
85
typedef
std::unordered_map<HepMC::GenParticlePtr,int>
ParticlesMap_t
;
86
96
HepMC::GenVertexPtr
97
createGenVertex
(
const
McEventCollection_p6
& persEvts,
98
const
GenVertex_p6
& vtx,
99
ParticlesMap_t
& bcToPart,
100
HepMC::DataPool
& datapools,
HepMC::GenEvent
* parent=
nullptr
)
const
;
101
107
HepMC::GenParticlePtr
108
createGenParticle
(
const
GenParticle_p6
& p,
109
ParticlesMap_t
& partToEndVtx,
110
HepMC::DataPool
& datapools,
const
HepMC::GenVertexPtr
& parent=
nullptr
,
bool
add_to_output =
true
)
const
;
111
116
static
void
writeGenVertex
(
const
HepMC::ConstGenVertexPtr
& vtx,
McEventCollection_p6
& persEvt );
122
static
int
writeGenParticle
(
const
HepMC::ConstGenParticlePtr
& p,
McEventCollection_p6
& persEvt );
123
124
bool
m_isPileup
;
125
ServiceHandle<IHepMCWeightSvc>
m_hepMCWeightSvc
;
126
};
127
#endif
//> GENERATOROBJECTSTPCNV_MCEVENTCOLLECTIONCNV_p6_H
GenEvent.h
GenParticle.h
GenVertex.h
McEventCollection.h
McEventCollection_p6.h
T_AthenaPoolTPConverter.h
T_AthenaPoolTPCnvBase
TPConverterBase< TRANS, PERS > T_AthenaPoolTPCnvBase
Definition
T_AthenaPoolTPConverter.h:41
GenParticle_p6
Definition
GenParticle_p6.h:22
GenVertex_p6
Definition
GenVertex_p6.h:24
IHepMCWeightSvc
IService to read/write HepMC's WeightContainer key names from/to IOVMetaDataContainers author: will b...
Definition
IHepMCWeightSvc.h:18
McEventCollectionCnv_p6::McEventCollectionCnv_p6
McEventCollectionCnv_p6()
Default constructor:
Definition
McEventCollectionCnv_p6.cxx:42
McEventCollectionCnv_p6::createGenParticle
HepMC::GenParticlePtr createGenParticle(const GenParticle_p6 &p, ParticlesMap_t &partToEndVtx, HepMC::DataPool &datapools, const HepMC::GenVertexPtr &parent=nullptr, bool add_to_output=true) const
Create a transient GenParticle from a persistent one (vers.1) It returns the new GenParticle.
Definition
McEventCollectionCnv_p6.cxx:457
McEventCollectionCnv_p6::persToTrans
virtual void persToTrans(const McEventCollection_p6 *persObj, McEventCollection *transObj, MsgStream &log)
Method creating the transient representation of McEventCollection from its persistent representation ...
Definition
McEventCollectionCnv_p6.cxx:70
McEventCollectionCnv_p6::~McEventCollectionCnv_p6
virtual ~McEventCollectionCnv_p6()
Destructor.
McEventCollectionCnv_p6::setPileup
void setPileup()
Definition
McEventCollectionCnv_p6.cxx:593
McEventCollectionCnv_p6::m_hepMCWeightSvc
ServiceHandle< IHepMCWeightSvc > m_hepMCWeightSvc
Definition
McEventCollectionCnv_p6.h:125
McEventCollectionCnv_p6::writeGenParticle
static int writeGenParticle(const HepMC::ConstGenParticlePtr &p, McEventCollection_p6 &persEvt)
Method to write a persistent GenParticle object It returns the index of the persistent GenParticle in...
Definition
McEventCollectionCnv_p6.cxx:550
McEventCollectionCnv_p6::createGenVertex
HepMC::GenVertexPtr createGenVertex(const McEventCollection_p6 &persEvts, const GenVertex_p6 &vtx, ParticlesMap_t &bcToPart, HepMC::DataPool &datapools, HepMC::GenEvent *parent=nullptr) const
Create a transient GenVertex from a persistent one (version 1) It returns the new GenVertex.
Definition
McEventCollectionCnv_p6.cxx:422
McEventCollectionCnv_p6::operator=
McEventCollectionCnv_p6 & operator=(const McEventCollectionCnv_p6 &rhs)
Assignement operator.
Definition
McEventCollectionCnv_p6.cxx:53
McEventCollectionCnv_p6::ParticlesMap_t
std::unordered_map< HepMC::GenParticlePtr, int > ParticlesMap_t
Definition
McEventCollectionCnv_p6.h:85
McEventCollectionCnv_p6::writeGenVertex
static void writeGenVertex(const HepMC::ConstGenVertexPtr &vtx, McEventCollection_p6 &persEvt)
Method to write a persistent GenVertex object.
Definition
McEventCollectionCnv_p6.cxx:515
McEventCollectionCnv_p6::Base_t
T_AthenaPoolTPCnvBase< McEventCollection, McEventCollection_p6 > Base_t
Definition
McEventCollectionCnv_p6.h:44
McEventCollectionCnv_p6::m_isPileup
bool m_isPileup
Definition
McEventCollectionCnv_p6.h:124
McEventCollectionCnv_p6::transToPers
virtual void transToPers(const McEventCollection *transObj, McEventCollection_p6 *persObj, MsgStream &log)
Method creating the persistent representation McEventCollection_p6 from its transient representation ...
Definition
McEventCollectionCnv_p6.cxx:239
McEventCollection_p6
Definition
McEventCollection_p6.h:27
McEventCollection
This defines the McEventCollection, which is really just an ObjectVector of McEvent objectsFile: Gene...
Definition
McEventCollection.h:31
ServiceHandle
Definition
ClusterMakerTool.h:36
HepMC
Definition
Barcode.h:13
HepMC::GenParticlePtr
HepMC3::GenParticlePtr GenParticlePtr
Definition
GenParticle.h:19
HepMC::GenVertexPtr
HepMC3::GenVertexPtr GenVertexPtr
Definition
GenVertex.h:23
HepMC::ConstGenParticlePtr
HepMC3::ConstGenParticlePtr ConstGenParticlePtr
Definition
GenParticle.h:20
HepMC::ConstGenVertexPtr
HepMC3::ConstGenVertexPtr ConstGenVertexPtr
Definition
GenVertex.h:24
HepMC::GenEvent
HepMC3::GenEvent GenEvent
Definition
GenEvent.h:39
HepMC::DataPool
Definition
HepMcDataPool.h:23
Generated on
for ATLAS Offline Software by
1.17.0