7 #include "Identifier/Identifier.h"
19 #include "GaudiKernel/ServiceHandle.h"
25 : m_cellIdHelper(nullptr)
29 throw std::runtime_error (
"LArHitFloatContainerCnv_p2: Can't get CaloCell_ID");
37 size_t size = transCont->size();
41 std::vector<float> tempE; tempE.reserve(
size);
42 std::vector<float> tempT; tempT.reserve(
size);
44 LArHitFloatContainer::const_iterator
it = transCont->begin();
46 std::multimap <unsigned int, unsigned int> map_hashPositions;
48 for (
unsigned int w=0;
w<
size;++
w){
50 map_hashPositions.insert(std::pair<unsigned int, int>((
unsigned int)hashId,
w));
55 std::multimap<unsigned int, unsigned int>::const_iterator iter;
58 for (iter=map_hashPositions.begin(); iter != map_hashPositions.end(); ++iter) {
60 unsigned int pHash=(iter->first)-
old;
62 unsigned int pos=iter->second;
64 tempE.push_back( (transCont->at(
pos)).energy() );
65 tempT.push_back( (transCont->at(
pos)).time() );
74 B.reduceToUS(tempT, persCont->
m_time);
88 transCont->reserve(
cells);
91 std::vector<float> tempE; tempE.reserve(
cells);
92 std::vector<float> tempT; tempT.reserve(
cells);
94 A.expandFromUStoFloat(persCont->
m_time,tempT);
95 A.expandToFloat(persCont->
m_energy,tempE);
101 transCont->push_back(hit);