 |
Belle II Software
release-05-01-25
|
14 #ifndef TRGCDCHoughFinder_FLAG_
15 #define TRGCDCHoughFinder_FLAG_
18 #include "trg/cdc/HoughPlaneMulti2.h"
19 #include "trg/cdc/HoughTransformationCircle.h"
20 #include "trg/cdc/PeakFinder.h"
24 #ifdef TRGCDC_SHORT_NAMES
25 #define TCHFinder TRGCDCHoughFinder
35 class TRGCDCPeakFinder;
40 class TRGCDCJSignalData;
51 const std::string& mappingFilePlus,
52 const std::string& mappingFileMinus,
61 std::string
name(
void)
const;
64 std::string
version(
void)
const;
70 int FindAndFit(std::vector<TRGCDCTrack*>& trackList2D,
71 std::vector<TRGCDCTrack*>& trackList2DFitted);
82 std::vector<TRGCDCTrack*>& trackList2DFitted);
86 std::vector<TRGCDCTrack*>& trackList2DFitted);
90 const std::vector<TRGCDCLink*>& links)
const;
94 const std::string& mappingFileMinus);
98 std::vector<TRGCDCTrack*>& trackList2D)
const;
101 int doFinding(std::vector<std::vector<unsigned>> peaks[],
102 std::vector<TRGCDCTrack*>& trackList2D);
106 std::vector<TRGCDCTrack*>& trackList2DFitted)
const;
109 int doFitting(std::vector<TRGCDCTrack*>& trackList2D,
110 std::vector<TRGCDCTrack*>& trackList2DFitted);
121 static void calCosPhi(std::map<std::string, Belle2::TRGCDCJSignal>
123 std::map<std::string, Belle2::TRGCDCJLUT* >
127 static void calSinPhi(std::map<std::string, Belle2::TRGCDCJSignal>
129 std::map<std::string, Belle2::TRGCDCJLUT* >
133 static void rPhi(std::map<std::string, Belle2::TRGCDCJSignal>
135 std::map<std::string, Belle2::TRGCDCJLUT* >
std::map< std::string, double > m_mDouble
Map to hold double values for Fitter2D.
std::map< std::string, std::vector< double > > m_mConstV
Map to ?
int doFindingTrasan(std::vector< unsigned > peaks[], std::vector< TRGCDCTrack * > &trackList2D) const
do track finding. (trasan version)
static void calCosPhi(std::map< std::string, Belle2::TRGCDCJSignal > &mSignalStorage, std::map< std::string, Belle2::TRGCDCJLUT * > &mLutStorage)
Calculate Cos Sin ?
const unsigned _peakMin
Min. peak height for the peak finder.
void mappingByFile(const std::string &mappingFilePlus, const std::string &mappingFileMinus)
creates mappings by a file.
std::vector< TRGCDCLink * > selectBestHits(const std::vector< TRGCDCLink * > &links) const
selects the best(fastest) hits in each super layer.
TRGCDCJSignalData * _commonData
For VHDL code.
A class to find peaks in Hough Plane.
void terminate()
termination.
std::string name(void) const
returns name.
std::map< std::string, TRGCDCJLUT * > m_mLutStorage
Map to hold JLuts.
std::map< std::string, bool > m_mBool
Map to hold input options.
int doFinding(std::vector< std::vector< unsigned >> peaks[], std::vector< TRGCDCTrack * > &trackList2D)
do track finding. (kaiyu version)
const TRGCDC & _cdc
CDCTRG.
std::map< std::string, double > m_mConstD
Map to ?
int doFitting(std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
do track fitting. (kaiyu original)
A class to represent a Hough parameter plane.
A class to hold common data for JSignals.
const unsigned _doit
Doit version.
TRGCDCHoughFinder(const std::string &name, const TRGCDC &, unsigned peakMin, const std::string &mappingFilePlus, const std::string &mappingFileMinus, unsigned doit)
Contructor.
TRGCDCTrack * makeTrack(const unsigned serialID, const unsigned pm) const
Make a track from serial ID in Hough plane.
TRGCDCHoughTransformationCircle _circleH
Circle Hough transformtion.
Abstract base class for different kinds of events.
bool perfect(bool)
sets and returns switch to do perfect finding.
static double calPhi(TRGCDCSegmentHit const *segmentHit, double eventTime)
Utility functions.
A class to represent a track segment hit in CDC.
int FindAndFit(std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
do track finding and fitting (wrapper that can choose between different versions).
std::map< std::string, std::vector< double > > m_mVector
Map to hold vector values for Fitter2D.
int doFittingTrasan(std::vector< unsigned > peaks[], std::vector< TRGCDCTrack * > &trackList2DFitted) const
do track fitting. (old trasan version)
const std::string _name
Name.
std::string version(void) const
returns version.
The instance of TRGCDC is a singleton.
static void rPhi(std::map< std::string, Belle2::TRGCDCJSignal > &mSignalStorage, std::map< std::string, Belle2::TRGCDCJLUT * > &mLutStorage)
Calculate r * phi ?
A class to represent a reconstructed charged track in TRGCDC.
TRGCDCHoughPlaneMulti2 * _plane[2]
Hough planes, for + and - charges.
TRGCDCPeakFinder _peakFinder
Peak finder.
virtual ~TRGCDCHoughFinder()
Destructor.
static void calSinPhi(std::map< std::string, Belle2::TRGCDCJSignal > &mSignalStorage, std::map< std::string, Belle2::TRGCDCJLUT * > &mLutStorage)
Calculate Cos Sin ?
A class to find tracks using Hough algorithm.
std::map< std::string, TRGCDCJSignal > m_mSignalStorage
Map to hold JSignals.
int doFindingAndFitting(std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
do track finding and fitting (Kaiyu version).
int doFindingAndFittingTrasan(std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
do track finding and fitting (Trasan version).
std::map< std::string, double > m_mConstants
Map to hold const values for Fitter2D.