ATLAS Offline Software
DetCondCFloatCnv_p1.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
8 void DetCondCFloatCnv_p1::transToPers(const DetCondCFloat* trans, DetCondCFloat_p1* pers, MsgStream &/*log*/) {
9 
10  pers->m_size = trans->size();
11  pers->m_tag = trans->tag();
12 
13  DetCondCFloat::BufferMap::const_iterator it = trans->m_bufmap.begin();
14  DetCondCFloat::BufferMap::const_iterator last = trans->m_bufmap.end();
15  pers->m_bufKeyValue.reserve(2*trans->m_bufmap.size());
16  for (; it != last; ++it) {
17  unsigned int key = it->first.get_identifier32().get_compact();
18  pers->m_bufKeyValue.push_back(key);
19  pers->m_bufKeyValue.push_back(it->second);
20  }
21  pers->m_buf = trans->m_buf;
22 
23 }
24 
25 void DetCondCFloatCnv_p1::persToTrans(const DetCondCFloat_p1* pers, DetCondCFloat* trans, MsgStream &/*log*/) {
26 
27  trans->m_size = pers->m_size;
28  trans->m_tag = pers->m_tag;
29 
30  // Copy stored vec into map
31  typedef DetCondCFloat::BufferMap::value_type value_type;
33  for (unsigned int i = 0; i < pers->m_bufKeyValue.size(); i += 2) {
34  it = trans->m_bufmap.insert(it, value_type(Identifier(pers->m_bufKeyValue[i]), pers->m_bufKeyValue[i + 1]));
35  }
36  trans->m_buf = pers->m_buf;
37 
38 }
39 
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
DetCondCFloat
DetCondCFloat is a class to hold sets of Identifiers and arrays of floats for detector element specif...
Definition: DetCondCFloat.h:45
DetCondCFloat::m_buf
std::vector< float > m_buf
Definition: DetCondCFloat.h:70
DetCondCFloat_p1::m_buf
std::vector< float > m_buf
Definition: DetCondCFloat_p1.h:23
skel.it
it
Definition: skel.GENtoEVGEN.py:396
DetCondCFloat_p1
Definition: DetCondCFloat_p1.h:16
DetCondCFloat::m_size
int m_size
Definition: DetCondCFloat.h:65
DetCondCFloatCnv_p1::persToTrans
virtual void persToTrans(const DetCondCFloat_p1 *persObj, DetCondCFloat *transObj, MsgStream &log)
Definition: DetCondCFloatCnv_p1.cxx:25
DetCondCFloat_p1::m_tag
std::string m_tag
Definition: DetCondCFloat_p1.h:21
lumiFormat.i
int i
Definition: lumiFormat.py:85
DetCondCFloat::size
int size() const
Definition: DetCondCFloat.h:85
DetCondCFloatCnv_p1::transToPers
virtual void transToPers(const DetCondCFloat *transObj, DetCondCFloat_p1 *persObj, MsgStream &log)
Definition: DetCondCFloatCnv_p1.cxx:8
DetCondCFloat_p1::m_size
int m_size
Definition: DetCondCFloat_p1.h:20
DetCondCFloat::m_bufmap
BufferMap m_bufmap
Definition: DetCondCFloat.h:69
DetCondCFloat.h
DetCondCFloat::m_tag
std::string m_tag
Definition: DetCondCFloat.h:66
DetCondCFloatCnv_p1.h
DetCondCFloat::tag
const std::string & tag() const
Definition: DetCondCFloat.h:87
value_type
Definition: EDM_MasterSearch.h:11
DetCondCFloat_p1::m_bufKeyValue
std::vector< unsigned int > m_bufKeyValue
Definition: DetCondCFloat_p1.h:22
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
Identifier
Definition: IdentifierFieldParser.cxx:14