diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx index d638d001b312d5c80521d86bc3528dad0d6f0e7a..252802098971e6f2aa9f5a3fcf13c7e37933277a 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeCalibHitsTool.cxx @@ -13,6 +13,7 @@ MergeCalibHitsTool::MergeCalibHitsTool(const std::string& type, const std::string& name, const IInterface* parent) : PileUpToolBase(type, name, parent), + m_firstSubEvent(true), m_pMergeSvc("PileUpMergeSvc", name), m_oldFormat(false) { diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx index 0f97ff8dfe7e6a71cfd51c5cc8591f6779db3025..69def1092c657b3e8f602fad493d0883af53e4e7 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeGenericMuonSimHitCollTool.cxx @@ -134,8 +134,7 @@ void MergeGenericMuonSimHitCollTool::processGenericMuonSimHitColl(const GenericM { for (GenericMuonSimHitCollection::const_iterator simhitIter = inputCollection->begin(); simhitIter != inputCollection->end(); ++simhitIter) { const int idHit = simhitIter->GenericId(); - GenericMuonSimHit* copyHit = new GenericMuonSimHit(idHit, simhitIter->globalTime()+timeOfBCID, simhitIter->globalpreTime()+timeOfBCID, simhitIter->globalPosition(), simhitIter->localPosition(), simhitIter->globalPrePosition(),simhitIter->localPrePosition(), simhitIter->particleEncoding(),simhitIter->kineticEnergy(), simhitIter->globalDirection(),simhitIter->depositEnergy(), simhitIter->StepLength(),simhitIter->trackNumber() ); - outputCollection->push_back(*copyHit); + outputCollection->Emplace(idHit, simhitIter->globalTime()+timeOfBCID, simhitIter->globalpreTime()+timeOfBCID, simhitIter->globalPosition(), simhitIter->localPosition(), simhitIter->globalPrePosition(),simhitIter->localPrePosition(), simhitIter->particleEncoding(),simhitIter->kineticEnergy(), simhitIter->globalDirection(),simhitIter->depositEnergy(), simhitIter->StepLength(),simhitIter->trackNumber() ); } return; } diff --git a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx index f95689a1a4229d22e0b38cf79a377c245b7e73da..fe3b97150952bd40cd5cd1d0785413a37002732e 100644 --- a/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx +++ b/Simulation/G4Utilities/MCTruthSimAlgs/src/MergeTruthJetsTool.cxx @@ -25,6 +25,7 @@ MergeTruthJetsTool::MergeTruthJetsTool(const std::string& type, , m_outOfTimePtCut(15.0*Gaudi::Units::GeV) , m_activateFilter(false) , m_includeSignalJets(false) + , m_first_event(true) , m_signal_max_pT(-1.) , m_pileup_max_pT(-1.) { @@ -48,6 +49,7 @@ StatusCode MergeTruthJetsTool::prepareEvent(unsigned int nInputEvents) { ATH_MSG_VERBOSE ( "prepareEvent()" ); ATH_MSG_DEBUG ( "prepareEvent: there are " << nInputEvents << " subevents in this event." ); + m_first_event = true; m_inTimeOutputJetContainer = new xAOD::JetContainer(); m_inTimeOutputJetContainer->setStore(new xAOD::JetAuxContainer); m_outOfTimeOutputJetContainer = new xAOD::JetContainer(); @@ -192,6 +194,7 @@ StatusCode MergeTruthJetsTool::processAllSubEvents() } } + m_first_event = true; m_inTimeOutputJetContainer = new xAOD::JetContainer(); m_inTimeOutputJetContainer->setStore(new xAOD::JetAuxContainer); m_outOfTimeOutputJetContainer = new xAOD::JetContainer();