ATLAS Offline Software
JetCnv_p4.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // JetCnv_p4.h
8 // Header file for class JetCnv_p4
9 // Author: S.Binet<binet@cern.ch>
11 #ifndef JETEVENTTPCNV_JETCNV_P4_H
12 #define JETEVENTTPCNV_JETCNV_P4_H
13 
14 // STL includes
15 
16 // AthenaPoolCnvSvc includes
18 
19 // JetEventTPCnv includes
20 #include "JetEventTPCnv/Jet_p4.h"
22 #include <atomic>
23 
24 // Forward declaration
25 class MsgStream;
26 class Jet;
27 
28 class JetCnv_p4 : public T_AthenaPoolTPCnvConstBase<Jet, Jet_p4>
29 {
30  public:
33 
34 
37  JetCnv_p4();
38 
39 
43  virtual void persToTrans( const Jet_p4* persObj,
44  Jet* transObj,
45  MsgStream& msg ) const override;
46 
50  virtual void transToPers( const Jet* transObj,
51  Jet_p4* persObj,
52  MsgStream& msg ) const override;
53 
57  override
58  {
59  m_taginfoCnv.setTopConverter(topCnv, 0);
60  m_tagAssCnv.setTopConverter(topCnv,0);
61  }
62 
64  // Protected method:
66  protected:
67 
70  std::vector<TPObjRef>,
72 
74 
77  std::vector<TPObjRef>,
79 
81 
82  // See persToTrans().
83  mutable std::atomic<bool> m_badIndex;
84  mutable std::atomic<int> m_nIndexTest;
85 
86 };
87 
88 
89 #endif //> JETEVENTTPCNV_JETCNV_P4_H
ITPConverterFor
Definition: TPConverter.h:37
Jet
Basic data class defines behavior for all Jet objects The Jet class is the principal data class for...
Definition: Reconstruction/Jet/JetEvent/JetEvent/Jet.h:47
JetTagInfoBase.h
Jet_p4.h
TPConverterConstBase::transToPers
virtual void transToPers(const TRANS *transObj, PERS *persObj, MsgStream &log) const =0
Convert transient representation to persistent one.
JetCnv_p4::JetCnv_p4
JetCnv_p4()
Default constructor:
Definition: JetCnv_p4.cxx:42
TPPolyVectorCnvConst
Definition: TPConverter.h:1146
JetCnv_p4::m_badIndex
std::atomic< bool > m_badIndex
Definition: JetCnv_p4.h:83
JetCnv_p4::m_tagAssCnv
TagAssCollectionCnv m_tagAssCnv
Definition: JetCnv_p4.h:80
JetCnv_p4
Definition: JetCnv_p4.h:29
JetCnv_p4::initPrivateConverters
virtual void initPrivateConverters(AthenaPoolTopLevelTPCnvBase *topCnv) override
Init the converter so that it knows about its "parents" when it has to walk the lookup chain.
Definition: JetCnv_p4.h:56
JetCnv_p4::m_nIndexTest
std::atomic< int > m_nIndexTest
Definition: JetCnv_p4.h:84
JetCnv_p4::transToPers
virtual void transToPers(const Jet *transObj, Jet_p4 *persObj, MsgStream &msg) const override
Method creating the persistent representation Jet_p4 from its transient representation Jet.
Definition: JetCnv_p4.cxx:205
Jet_p4
Definition: Jet_p4.h:37
T_AthenaPoolTPConverter.h
JetCnv_p4::persToTrans
virtual void persToTrans(const Jet_p4 *persObj, Jet *transObj, MsgStream &msg) const override
Method creating the transient representation of Jet from its persistent representation Jet_p4.
Definition: JetCnv_p4.cxx:55
TPConverterConstBase::persToTrans
virtual void persToTrans(const PERS *persObj, TRANS *transObj, MsgStream &log) const =0
Convert persistent representation to transient one.
TopLevelTPCnvBase
Base class for top-level TP converters.
Definition: TopLevelTPCnvBase.h:32
ITPConverterFor::setTopConverter
virtual void setTopConverter(TopLevelTPCnvBase *topConverter, const TPObjRef::typeID_t &TPtypeID)
Set which top-level converter owns this elemental converter, and what TPtypeID was assigned to the pe...
Definition: TPConverter.h:221
JetCnv_p4::m_taginfoCnv
TagInfoCollectionCnv m_taginfoCnv
Definition: JetCnv_p4.h:73
JetCnv_p4::TagInfoCollectionCnv
T_AthenaPoolTPPolyVectorCnvConst< std::vector< const JetTagInfoBase * >, std::vector< TPObjRef >, ITPConverterFor< JetTagInfoBase > > TagInfoCollectionCnv
Hold onto the converter for the jet tag info objects.
Definition: JetCnv_p4.h:71
JetCnv_p4::TagAssCollectionCnv
T_AthenaPoolTPPolyVectorCnvConst< std::vector< const JetAssociationBase * >, std::vector< TPObjRef >, ITPConverterFor< JetAssociationBase > > TagAssCollectionCnv
Hold onto the converter for the jet assoctiaion objects.
Definition: JetCnv_p4.h:78
TPConverterConstBase
Definition: TPConverter.h:776
python.AutoConfigFlags.msg
msg
Definition: AutoConfigFlags.py:7