ATLAS Offline Software
ElementLinkVectorCnv_p1.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef DATAMODELATHENAPOOL_ELEMENTLINKVECTCNV_P1_H
6 #define DATAMODELATHENAPOOL_ELEMENTLINKVECTCNV_P1_H
7 
16 #include "ElementLinkVector_p1.h"
17 #include "DataLinkCnv_p1.h"
18 namespace SG {
19  class ThinningCache;
20 }
21 
26 template <class LINK_VECT>
28  : public T_AthenaPoolTPCnvConstBase< LINK_VECT, typename GeneratePersELinkVectorType_p1<LINK_VECT >::type > {
29 public:
30  typedef LINK_VECT LinkVect_t;
32  typedef typename PersLinkVect_t::Index_t Index_t;
33 
37 
39 
40  void transToPers(const LinkVect_t& trans, PersLinkVect_t& pers,
41  const SG::ThinningCache* cache,
42  MsgStream& log) const;
43 
44  void transToPers(const LinkVect_t& trans, PersLinkVect_t& pers, MsgStream& log) const;
45  void persToTrans(const PersLinkVect_t& pers, LinkVect_t& trans, MsgStream& log) const;
46 
47  virtual void transToPers(const LinkVect_t* trans, PersLinkVect_t* pers, MsgStream& log) const override;
48  virtual void persToTrans(const PersLinkVect_t* pers, LinkVect_t* trans, MsgStream& log) const override;
49 
50 
51 protected:
53 };
54 
55 #ifndef __REFLEX__
57 #endif // not __REFLEX__
58 
59 #endif
ElementLinkVectorCnv_p1::Index_t
PersLinkVect_t::Index_t Index_t
Definition: ElementLinkVectorCnv_p1.h:32
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
DataLinkCnv_p1.h
This file contains the class definition for the DataLinkCnv_p1 class and DataLinkVectorCnv_p1 class.
ElementLinkVector_p1::Index_t
INDEXTYPE Index_t
Definition: ElementLinkVector_p1.h:26
TPConverterConstBase::transToPers
virtual void transToPers(const TRANS *transObj, PERS *persObj, MsgStream &log) const =0
Convert transient representation to persistent one.
ElementLinkVectorCnv_p1
Definition: ElementLinkVectorCnv_p1.h:28
ElementLinkVectorCnv_p1::ElementLinkVectorCnv_p1
ElementLinkVectorCnv_p1()
Definition: ElementLinkVectorCnv_p1.h:38
ElementLinkVector_p1
Definition: ElementLinkVector_p1.h:23
ElementLinkVector< Rec::TrackParticleContainer >
ElementLinkVectorCnv_p1::persToTrans
void persToTrans(const PersLinkVect_t &pers, LinkVect_t &trans, MsgStream &log) const
ElementLinkVectorCnv_p1::transToPers
void transToPers(const LinkVect_t &trans, PersLinkVect_t &pers, MsgStream &log) const
ElementLinkVectorCnv_p1::m_DLinkVectorCnv
DataLinkVectorCnv_p1< typename LinkVect_t::DataLinkVector > m_DLinkVectorCnv
Definition: ElementLinkVectorCnv_p1.h:52
ElementLinkVectorCnv_p1::PersLinkVect_t
GeneratePersELinkVectorType_p1< LinkVect_t >::type PersLinkVect_t
Definition: ElementLinkVectorCnv_p1.h:31
T_AthenaPoolTPConverter.h
ElementLinkVectorCnv_p1::transToPers
virtual void transToPers(const LinkVect_t *trans, PersLinkVect_t *pers, MsgStream &log) const override
ElementLinkVectorCnv_p1.icc
TPConverterConstBase::persToTrans
virtual void persToTrans(const PERS *persObj, TRANS *transObj, MsgStream &log) const =0
Convert persistent representation to transient one.
ElementLinkVector_p1.h
This file contains the class definition for the ElementLinkVector_p1 class.
ElementLinkVectorCnv_p1::LinkVect_t
LINK_VECT LinkVect_t
Definition: ElementLinkVectorCnv_p1.h:30
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
ElementLinkVectorCnv_p1::transToPers
void transToPers(const LinkVect_t &trans, PersLinkVect_t &pers, const SG::ThinningCache *cache, MsgStream &log) const
ElementLinkVectorCnv_p1::persToTrans
virtual void persToTrans(const PersLinkVect_t *pers, LinkVect_t *trans, MsgStream &log) const override
TPConverterConstBase
Definition: TPConverter.h:776
SG::ThinningCache
Cache thinning decisions for converters.
Definition: ThinningCache.h:48
DataLinkVectorCnv_p1< typename LinkVect_t::DataLinkVector >