From 5a0b86b02050ac76f0c934bec2da4a6ef8644a5b Mon Sep 17 00:00:00 2001 From: Florian Uhlig <f.uhlig@gsi.de> Date: Tue, 8 Nov 2022 15:50:39 +0100 Subject: [PATCH] Move rich local reconstruction code There were rich ring finders in the L1 code base which were compiled and linked into libL1. With the change in the build system this results in a circular dependency between the L1 and CbmRichReco libraries which was resolved by removing the classes from compilation. With this commit the classes are moved from the L1 code base into the rich reconstruction code base. --- reco/L1/CMakeLists.txt | 3 --- reco/L1/L1LinkDef.h | 2 -- reco/detectors/rich/CMakeLists.txt | 4 ++++ reco/detectors/rich/CbmRichRecoLinkDef.h | 1 + reco/detectors/rich/CbmRichReconstruction.cxx | 19 ++++++++++--------- .../rich/alignment/CbmRichReconstruction.cxx | 14 ++++++++------ .../rich/finder}/CbmL1RichENNRingFinder.cxx | 4 +--- .../rich/finder}/CbmL1RichENNRingFinder.h | 6 ------ .../CbmL1RichENNRingFinderParallel.cxx | 0 .../finder}/CbmL1RichENNRingFinderParallel.h | 2 -- .../rich/qa}/CbmL1RichRingQa.cxx | 0 .../rich/qa}/CbmL1RichRingQa.h | 0 12 files changed, 24 insertions(+), 31 deletions(-) rename reco/{L1/OffLineInterface => detectors/rich/finder}/CbmL1RichENNRingFinder.cxx (93%) rename reco/{L1/OffLineInterface => detectors/rich/finder}/CbmL1RichENNRingFinder.h (94%) rename reco/{L1/OffLineInterface => detectors/rich/finder}/CbmL1RichENNRingFinderParallel.cxx (100%) rename reco/{L1/OffLineInterface => detectors/rich/finder}/CbmL1RichENNRingFinderParallel.h (99%) rename reco/{L1/OffLineInterface => detectors/rich/qa}/CbmL1RichRingQa.cxx (100%) rename reco/{L1/OffLineInterface => detectors/rich/qa}/CbmL1RichRingQa.h (100%) diff --git a/reco/L1/CMakeLists.txt b/reco/L1/CMakeLists.txt index 1dd572a61b..4d4deee982 100644 --- a/reco/L1/CMakeLists.txt +++ b/reco/L1/CMakeLists.txt @@ -32,8 +32,6 @@ set(SRCS CbmL1TrackMerger.cxx CbmL1TofMerger.cxx # L1AlgoInputData.cxx - #OffLineInterface/CbmL1RichENNRingFinder.cxx - #OffLineInterface/CbmL1RichENNRingFinderParallel.cxx OffLineInterface/CbmL1StsTrackFinder.cxx OffLineInterface/CbmL1GlobalTrackFinder.cxx OffLineInterface/CbmL1GlobalFindTracksEvents.cxx @@ -41,7 +39,6 @@ set(SRCS #OffLineInterface / CbmL1MuchHit.cxx #OffLineInterface / CbmL1MuchTrack.cxx #OffLineInterface / CbmL1MuchFinderQa.cxx - #OffLineInterface/CbmL1RichRingQa.cxx #OffLineInterface / CbmL1SttHit.cxx #OffLineInterface / CbmL1SttTrackFinder.cxx #OffLineInterface / CbmL1SttTrack.cxx diff --git a/reco/L1/L1LinkDef.h b/reco/L1/L1LinkDef.h index 686ad40584..152819d5b8 100644 --- a/reco/L1/L1LinkDef.h +++ b/reco/L1/L1LinkDef.h @@ -11,7 +11,6 @@ #pragma link off all functions; #pragma link C++ class CbmL1 + ; -//#pragma link C++ class CbmL1RichENNRingFinder + ; #pragma link C++ class CbmL1StsTrackFinder + ; //#pragma link C++ class CbmL1TrdTrackFinderSts+; #pragma link C++ class CbmL1TrackMerger + ; @@ -20,7 +19,6 @@ //#pragma link C++ class CbmL1MuchHit+; //#pragma link C++ class CbmL1MuchTrack+; //#pragma link C++ class CbmL1MuchFinderQa+; -//#pragma link C++ class CbmL1RichRingQa + ; #pragma link C++ class CbmL1TrdTracklet + ; #pragma link C++ class CbmL1TrdTracklet4 + ; #pragma link C++ class CbmL1GlobalTrackFinder + ; diff --git a/reco/detectors/rich/CMakeLists.txt b/reco/detectors/rich/CMakeLists.txt index c0105f9f12..6e9d3f8891 100644 --- a/reco/detectors/rich/CMakeLists.txt +++ b/reco/detectors/rich/CMakeLists.txt @@ -33,6 +33,7 @@ set(SRCS qa/CbmRichUrqmdTest.cxx qa/CbmRichGeoTestOpt.cxx qa/CbmRichRecoQa.cxx + qa/CbmL1RichRingQa.cxx unpack/CbmRichUnpackAlgo.cxx unpack/CbmRichUnpackAlgo2022.cxx @@ -43,9 +44,12 @@ set(SRCS set(NO_DICT_SRCS CbmRichConverter.cxx + finder/CbmRichRingFinderIdeal.cxx finder/CbmRichRingFinderHoughImpl.cxx finder/CbmRichRingFinderHough.cxx + finder/CbmL1RichENNRingFinder.cxx + finder/CbmL1RichENNRingFinderParallel.cxx fitter/CbmRichRingFitterCircle.cxx fitter/CbmRichRingFitterCOP.cxx diff --git a/reco/detectors/rich/CbmRichRecoLinkDef.h b/reco/detectors/rich/CbmRichRecoLinkDef.h index d6f65b9be9..8739d2c865 100644 --- a/reco/detectors/rich/CbmRichRecoLinkDef.h +++ b/reco/detectors/rich/CbmRichRecoLinkDef.h @@ -31,6 +31,7 @@ #pragma link C++ class CbmRichRingFitterQa + ; #pragma link C++ class CbmRichRecoQa + ; #pragma link C++ class CbmRichRecoTbQa + ; +#pragma link C++ class CbmL1RichRingQa + ; //unpack #pragma link C++ class CbmRichUnpackAlgo + ; diff --git a/reco/detectors/rich/CbmRichReconstruction.cxx b/reco/detectors/rich/CbmRichReconstruction.cxx index 68d2e066fd..a93c762a51 100644 --- a/reco/detectors/rich/CbmRichReconstruction.cxx +++ b/reco/detectors/rich/CbmRichReconstruction.cxx @@ -16,7 +16,8 @@ #include "CbmRichRing.h" //#include "prototype/CbmRichProtProjectionProducer.h" -//#include "CbmL1RichENNRingFinder.h" +#include "CbmL1RichENNRingFinder.h" +#include "CbmL1RichENNRingFinderParallel.h" #include "CbmRichRingFinderHough.h" #include "CbmRichRingFinderIdeal.h" #include "CbmRichTrackExtrapolationBase.h" @@ -24,7 +25,6 @@ #include "CbmRichTrackExtrapolationKF.h" #include "CbmRichTrackExtrapolationLittrack.h" #include "CbmRichTrackExtrapolationMirrorIdeal.h" -//#include "CbmL1RichENNRingFinderParallel.h" //#include "prototype/CbmRichProtRingFinderHough.h" #include "CbmEvent.h" @@ -197,13 +197,14 @@ void CbmRichReconstruction::InitFinder() else if (fFinderName == "ideal") { fRingFinder = new CbmRichRingFinderIdeal(); } - /* else if (fFinderName == "enn") { - fRingFinder = new CbmL1RichENNRingFinder(0); - } - else if ((fFinderName == "enn_parallel")) { - - fRingFinder = new CbmL1RichENNRingFinderParallel(0); - } else if (fFinderName == "hough_prototype") { + else if (fFinderName == "enn") { + fRingFinder = new CbmL1RichENNRingFinder(0); + } + else if ((fFinderName == "enn_parallel")) { + fRingFinder = new CbmL1RichENNRingFinderParallel(0); + } + /* + else if (fFinderName == "hough_prototype") { fRingFinder = new CbmRichProtRingFinderHough(); }*/ else { diff --git a/reco/detectors/rich/alignment/CbmRichReconstruction.cxx b/reco/detectors/rich/alignment/CbmRichReconstruction.cxx index dd7e41f541..658623e62a 100644 --- a/reco/detectors/rich/alignment/CbmRichReconstruction.cxx +++ b/reco/detectors/rich/alignment/CbmRichReconstruction.cxx @@ -16,7 +16,8 @@ #include "CbmRichRing.h" //#include "prototype/CbmRichProtProjectionProducer.h" -//#include "CbmL1RichENNRingFinder.h" +#include "CbmL1RichENNRingFinder.h" +#include "CbmL1RichENNRingFinderParallel.h" #include "CbmRichRingFinderHough.h" #include "CbmRichRingFinderIdeal.h" #include "CbmRichTrackExtrapolationBase.h" @@ -24,7 +25,6 @@ #include "CbmRichTrackExtrapolationKF.h" #include "CbmRichTrackExtrapolationLittrack.h" #include "CbmRichTrackExtrapolationMirrorIdeal.h" -//#include "CbmL1RichENNRingFinderParallel.h" //#include "prototype/CbmRichProtRingFinderHough.h" #include "CbmGlobalTrack.h" @@ -172,12 +172,14 @@ void CbmRichReconstruction::InitFinder() else if (fFinderName == "ideal") { fRingFinder = new CbmRichRingFinderIdeal(); } - /*else if (fFinderName == "enn") { + else if (fFinderName == "enn") { fRingFinder = new CbmL1RichENNRingFinder(0); - } - else if ((fFinderName == "enn_parallel")) { + } + else if ((fFinderName == "enn_parallel")) { fRingFinder = new CbmL1RichENNRingFinderParallel(0); - } else if (fFinderName == "hough_prototype") { + } + /* + else if (fFinderName == "hough_prototype") { fRingFinder = new CbmRichProtRingFinderHough(); }*/ else { diff --git a/reco/L1/OffLineInterface/CbmL1RichENNRingFinder.cxx b/reco/detectors/rich/finder/CbmL1RichENNRingFinder.cxx similarity index 93% rename from reco/L1/OffLineInterface/CbmL1RichENNRingFinder.cxx rename to reco/detectors/rich/finder/CbmL1RichENNRingFinder.cxx index 14cb156350..1c64dfde02 100644 --- a/reco/L1/OffLineInterface/CbmL1RichENNRingFinder.cxx +++ b/reco/detectors/rich/finder/CbmL1RichENNRingFinder.cxx @@ -46,9 +46,7 @@ using std::sqrt; using std::vector; -ClassImp(CbmL1RichENNRingFinder) - - CbmL1RichENNRingFinder::CbmL1RichENNRingFinder(Int_t verbose) +CbmL1RichENNRingFinder::CbmL1RichENNRingFinder(Int_t verbose) : finder(new CbmL1RichENNRingFinderParallel(verbose)) , fRecoTime(0) , fNEvents(0) diff --git a/reco/L1/OffLineInterface/CbmL1RichENNRingFinder.h b/reco/detectors/rich/finder/CbmL1RichENNRingFinder.h similarity index 94% rename from reco/L1/OffLineInterface/CbmL1RichENNRingFinder.h rename to reco/detectors/rich/finder/CbmL1RichENNRingFinder.h index 3c0807986a..9da1e95a47 100644 --- a/reco/L1/OffLineInterface/CbmL1RichENNRingFinder.h +++ b/reco/detectors/rich/finder/CbmL1RichENNRingFinder.h @@ -23,9 +23,6 @@ #include "CbmRichRingFinder.h" -#include "TStopwatch.h" -#include "TString.h" - #include <vector> class ENNHit; @@ -61,9 +58,6 @@ private: CbmL1RichENNRingFinderParallel* finder; Float_t fRecoTime; Int_t fNEvents; - -public: - ClassDef(CbmL1RichENNRingFinder, 1); }; #endif diff --git a/reco/L1/OffLineInterface/CbmL1RichENNRingFinderParallel.cxx b/reco/detectors/rich/finder/CbmL1RichENNRingFinderParallel.cxx similarity index 100% rename from reco/L1/OffLineInterface/CbmL1RichENNRingFinderParallel.cxx rename to reco/detectors/rich/finder/CbmL1RichENNRingFinderParallel.cxx diff --git a/reco/L1/OffLineInterface/CbmL1RichENNRingFinderParallel.h b/reco/detectors/rich/finder/CbmL1RichENNRingFinderParallel.h similarity index 99% rename from reco/L1/OffLineInterface/CbmL1RichENNRingFinderParallel.h rename to reco/detectors/rich/finder/CbmL1RichENNRingFinderParallel.h index 2bc1e80bcc..9daca1c082 100644 --- a/reco/L1/OffLineInterface/CbmL1RichENNRingFinderParallel.h +++ b/reco/detectors/rich/finder/CbmL1RichENNRingFinderParallel.h @@ -212,8 +212,6 @@ private: TStopwatch fTimers[NTimers]; // timers for different parts of algorithm TString fTimersNames[NTimers]; // names which are correspond to the timers. TStopwatch& GetTimer(TString t); - -public: }; #endif diff --git a/reco/L1/OffLineInterface/CbmL1RichRingQa.cxx b/reco/detectors/rich/qa/CbmL1RichRingQa.cxx similarity index 100% rename from reco/L1/OffLineInterface/CbmL1RichRingQa.cxx rename to reco/detectors/rich/qa/CbmL1RichRingQa.cxx diff --git a/reco/L1/OffLineInterface/CbmL1RichRingQa.h b/reco/detectors/rich/qa/CbmL1RichRingQa.h similarity index 100% rename from reco/L1/OffLineInterface/CbmL1RichRingQa.h rename to reco/detectors/rich/qa/CbmL1RichRingQa.h -- GitLab