diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackFinder.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackFinder.h index abbcf624a7a146155b7e42cfc86b15444631b0cb..42e3979dc608d10b23ec3664d3cbccf9dbe676dd 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackFinder.h +++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackFinder.h @@ -39,6 +39,8 @@ namespace Muon { */ virtual TrackCollection* find( const std::vector<const MuonSegment*>& segments ) const = 0; + virtual void cleanUp() const = 0; + }; inline const InterfaceID& IMuonTrackFinder::interfaceID() diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackRefiner.h b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackRefiner.h index 7c4199faf3e617da63ccfea2d714ec8ed87c5b65..a8bfd87cce47e2ca420ebcb74492177f791a285f 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackRefiner.h +++ b/MuonSpectrometer/MuonReconstruction/MuonRecTools/MuonRecToolInterfaces/MuonRecToolInterfaces/IMuonTrackRefiner.h @@ -40,6 +40,8 @@ namespace Muon { */ virtual void refine( MuPatTrack& track ) const = 0; + virtual void cleanUp() const = 0; + }; inline const InterfaceID& IMuonTrackRefiner::interfaceID() diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerAlgs/MuonSegmentTrackMaker/src/MuPatTrackBuilder.cxx b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerAlgs/MuonSegmentTrackMaker/src/MuPatTrackBuilder.cxx index 180201b515396b81393489ebc236a0a26820b01f..f4bcfc02b7826f326a8aabb61c81c377492452de 100755 --- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerAlgs/MuonSegmentTrackMaker/src/MuPatTrackBuilder.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerAlgs/MuonSegmentTrackMaker/src/MuPatTrackBuilder.cxx @@ -101,6 +101,8 @@ StatusCode MuPatTrackBuilder::execute() auto monitorIt = Monitored::Group(m_monTool, mstrks_n, mstrks_pt, mstrks_eta, mstrks_phi, mssegs_n, mssegs_eta, mssegs_phi); } + //Memory cleanup ... + m_trackMaker->cleanUp(); return StatusCode::SUCCESS; } // execute diff --git a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackSteeringTools/src/MuonTrackSteering.cxx b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackSteeringTools/src/MuonTrackSteering.cxx index f090d9a3b98a88fc12ea2f552d492c6f97c27d22..c94eb116f07426ee1924f0c79c70427bd3d71c07 100644 --- a/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackSteeringTools/src/MuonTrackSteering.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonTrackMakers/MuonTrackMakerTools/MuonTrackSteeringTools/src/MuonTrackSteering.cxx @@ -142,7 +142,8 @@ namespace Muon { // clean up track builder tools m_mooBTool->cleanUp(); m_trackBTool->cleanUp(); - + m_trackRefineTool->cleanUp(); + } //-----------------------------------------------------------------------------------------------------------