ATLAS Offline Software
MuonContainerCnv_p2.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // MuonContainerCnv_p2.h
8 // Header file for class MuonContainerCnv_p2
9 // Author: Ketevi A. Assamagan <ketevi@bnl.gov>
11 #ifndef RECTPCNV_MUONCONTAINERCNV_P2_H
12 #define RECTPCNV_MUONCONTAINERCNV_P2_H
13 
14 // STL includes
15 #include <string>
16 
17 // Gaudi includes
18 #include "GaudiKernel/ToolHandle.h"
19 #include "StoreGate/StoreGateSvc.h"
20 
21 // muonEvent includes
23 
24 // AthenaPoolCnvSvc includes
26 
27 // RecTPCnv includes
29 #include "RecTPCnv/MuonCnv_p2.h"
30 
34  MuonCnv_p2
36 
38 {
39  public:
42 
45  virtual void persToTrans(const MuonContainer_p2* persColl, Analysis::MuonContainer* transColl, MsgStream &log) const;
46  void setKey ( const std::string& key) { m_cnv.setKey( key ); }
48  private:
50 };
51 
52 
53 inline void MuonContainerCnv_p2::persToTrans(const MuonContainer_p2* persColl, Analysis::MuonContainer* transColl, MsgStream &log) const
54 {
55  MuonContainer_p2::const_iterator it;
56  transColl->clear();
57  transColl->reserve(persColl->size());
58  for (it = persColl->begin(); it != persColl->end(); ++it) {
59  transColl->push_back(m_cnv.createTransientConst(&(*it), log));
60  }
61 }
62 
63 #endif //> RECTPCNV_MUONCONTAINERCNV_P2_H
DataVector::reserve
void reserve(size_type n)
Attempt to preallocate enough memory for a specified number of elements.
MuonCnv_p2
Definition: MuonCnv_p2.h:32
MuonContainerCnv_p2::m_cnv
MuonCnv_p2 m_cnv
Definition: MuonContainerCnv_p2.h:49
MuonContainer_p2
Definition: MuonContainer_p2.h:23
xAOD::MuonContainer
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
Definition: Event/xAOD/xAODMuon/xAODMuon/MuonContainer.h:14
TPCnvVectorConst
Definition: TPConverter.h:1271
TPConverterConstBase::transToPers
virtual void transToPers(const TRANS *transObj, PERS *persObj, MsgStream &log) const =0
Convert transient representation to persistent one.
MuonContainer.h
skel.it
it
Definition: skel.GENtoEVGEN.py:396
MuonContainerCnvBase_p2
T_AthenaPoolTPCnvVectorConst< Analysis::MuonContainer, MuonContainer_p2, MuonCnv_p2 > MuonContainerCnvBase_p2
Definition: MuonContainerCnv_p2.h:35
MuonContainerCnv_p2
Definition: MuonContainerCnv_p2.h:38
T_AthenaPoolTPConverter.h
MuonCnv_p2.h
Analysis::MuonContainer
definition of StoreGate container holding a vector of Analysis::Muon
Definition: Reconstruction/MuonIdentification/muonEvent/muonEvent/MuonContainer.h:38
DataVector::clear
void clear()
Erase all the elements in the collection.
MuonContainerCnv_p2::MuonContainerCnv_p2
MuonContainerCnv_p2()
Definition: MuonContainerCnv_p2.h:44
MuonContainer_p2.h
TPConverterConstBase::persToTrans
virtual void persToTrans(const PERS *persObj, TRANS *transObj, MsgStream &log) const =0
Convert persistent representation to transient one.
MuonContainerCnv_p2::StoreGateSvc_t
ServiceHandle< StoreGateSvc > StoreGateSvc_t
Definition: MuonContainerCnv_p2.h:43
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
MuonCnv_p2::setEventStore
void setEventStore(const StoreGateSvc_t storeGate)
Definition: MuonCnv_p2.h:60
MuonContainerCnv_p2::persToTrans
virtual void persToTrans(const MuonContainer_p2 *persColl, Analysis::MuonContainer *transColl, MsgStream &log) const
Definition: MuonContainerCnv_p2.h:53
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
MuonCnv_p2::setKey
void setKey(const std::string &key)
Definition: MuonCnv_p2.h:59
MuonContainerCnv_p2::setEventStore
void setEventStore(const StoreGateSvc_t storeGate)
Definition: MuonContainerCnv_p2.h:47
StoreGateSvc.h
TPConverterConstBase::createTransientConst
virtual TRANS * createTransientConst(const PERS *persObj, MsgStream &log) const
python.PyKernel.storeGate
storeGate
Definition: PyKernel.py:40
MuonContainerCnv_p2::setKey
void setKey(const std::string &key)
Definition: MuonContainerCnv_p2.h:46
ServiceHandle< StoreGateSvc >
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37