From 4fc37c2d66dc6df0e73d113dc702b3b3e6e8b6d3 Mon Sep 17 00:00:00 2001 From: Andre Sailer <andre.philippe.sailer@cern.ch> Date: Sat, 21 Mar 2015 17:54:32 +0000 Subject: [PATCH] sizeof returns number of bytes, we want to shift by number of bits --- DDG4/lcio/LCIOConversions.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/DDG4/lcio/LCIOConversions.cpp b/DDG4/lcio/LCIOConversions.cpp index 7f5b75c3b..f471d1ca1 100644 --- a/DDG4/lcio/LCIOConversions.cpp +++ b/DDG4/lcio/LCIOConversions.cpp @@ -123,8 +123,8 @@ namespace DD4hep { EVENT::MCParticle* lc_mcp = (EVENT::MCParticle*)lc_part->getElementAt(trackID); double pos[3] = {hit->position.x()/CLHEP::mm, hit->position.y()/CLHEP::mm, hit->position.z()/CLHEP::mm}; lcio::SimTrackerHitImpl* lc_hit = new lcio::SimTrackerHitImpl; - lc_hit->setCellID0((hit->cellID >> 0 ) & 0xFFFFFFFF); - lc_hit->setCellID1((hit->cellID >> sizeof(int)) & 0xFFFFFFFF); + lc_hit->setCellID0((hit->cellID >> 0 ) & 0xFFFFFFFF); + lc_hit->setCellID1((hit->cellID >> sizeof(int)*8) & 0xFFFFFFFF); lc_hit->setEDep(hit->energyDeposit/CLHEP::GeV); lc_hit->setPathLength(hit->length/CLHEP::mm); lc_hit->setTime(hit->truth.time/CLHEP::ns); @@ -175,8 +175,8 @@ namespace DD4hep { const Geant4Calorimeter::Hit* hit = coll->hit(i); float pos[3] = {float(hit->position.x()/mm), float(hit->position.y()/mm), float(hit->position.z()/mm)}; lcio::SimCalorimeterHitImpl* lc_hit = new lcio::SimCalorimeterHitImpl; - lc_hit->setCellID0((hit->cellID >> 0 ) & 0xFFFFFFFF); - lc_hit->setCellID1((hit->cellID >> sizeof(int)) & 0xFFFFFFFF); // ???? + lc_hit->setCellID0((hit->cellID >> 0 ) & 0xFFFFFFFF); + lc_hit->setCellID1((hit->cellID >> sizeof(int)*8) & 0xFFFFFFFF); // ???? lc_hit->setPosition(pos); ///No! Done when adding particle contrbutions: lc_hit->setEnergy( hit->energyDeposit ); lc_coll->addElement(lc_hit); -- GitLab