Belle II Software development
TRGCDCHoughFinder Class Reference

A class to find tracks using Hough algorithm. More...

#include <HoughFinder.h>

Public Member Functions

 TRGCDCHoughFinder (const std::string &name, const TRGCDC &, unsigned peakMin, const std::string &mappingFilePlus, const std::string &mappingFileMinus, unsigned doit)
 Contructor.
 
virtual ~TRGCDCHoughFinder ()
 Destructor.
 
std::string name (void) const
 returns name.
 
std::string version (void) const
 returns version.
 
void terminate ()
 termination.
 
int FindAndFit (std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
 do track finding and fitting (wrapper that can choose between different versions).
 
bool perfect (bool)
 sets and returns switch to do perfect finding.
 

Private Member Functions

int doFindingAndFittingTrasan (std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
 do track finding and fitting (Trasan version).
 
int doFindingAndFitting (std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
 do track finding and fitting (Kaiyu version).
 
std::vector< TRGCDCLink * > selectBestHits (const std::vector< TRGCDCLink * > &links) const
 selects the best(fastest) hits in each super layer.
 
void mappingByFile (const std::string &mappingFilePlus, const std::string &mappingFileMinus)
 creates mappings by a file.
 
int doFindingTrasan (std::vector< unsigned > peaks[], std::vector< TRGCDCTrack * > &trackList2D) const
 do track finding. (trasan version)
 
int doFinding (std::vector< std::vector< unsigned > > peaks[], std::vector< TRGCDCTrack * > &trackList2D)
 do track finding. (kaiyu version)
 
int doFittingTrasan (std::vector< unsigned > peaks[], std::vector< TRGCDCTrack * > &trackList2DFitted) const
 do track fitting. (old trasan version)
 
int doFitting (std::vector< TRGCDCTrack * > &trackList2D, std::vector< TRGCDCTrack * > &trackList2DFitted)
 do track fitting. (kaiyu original)
 
TRGCDCTrackmakeTrack (const unsigned serialID, const unsigned pm) const
 Make a track from serial ID in Hough plane.
 

Static Private Member Functions

static double calPhi (TRGCDCSegmentHit const *segmentHit, double eventTime)
 Utility functions.
 
static void calCosPhi (std::map< std::string, Belle2::TRGCDCJSignal > &mSignalStorage, std::map< std::string, Belle2::TRGCDCJLUT * > &mLutStorage)
 Calculate Cos Sin ?
 
static void calSinPhi (std::map< std::string, Belle2::TRGCDCJSignal > &mSignalStorage, std::map< std::string, Belle2::TRGCDCJLUT * > &mLutStorage)
 Calculate Cos Sin ?
 
static void rPhi (std::map< std::string, Belle2::TRGCDCJSignal > &mSignalStorage, std::map< std::string, Belle2::TRGCDCJLUT * > &mLutStorage)
 Calculate r * phi ?
 

Private Attributes

const std::string _name
 Name.
 
const TRGCDC_cdc
 CDCTRG.
 
TRGCDCHoughPlaneMulti2_plane [2]
 Hough planes, for + and - charges.
 
TRGCDCHoughTransformationCircle _circleH
 Circle Hough transformtion.
 
const unsigned _doit
 Doit version.
 
TRGCDCPeakFinder _peakFinder
 Peak finder.
 
const unsigned _peakMin
 Min. peak height for the peak finder.
 
std::map< std::string, double > m_mDouble
 Map to hold double values for Fitter2D.
 
std::map< std::string, std::vector< double > > m_mVector
 Map to hold vector values for Fitter2D.
 
std::map< std::string, double > m_mConstants
 Map to hold const values for Fitter2D.
 
std::map< std::string, double > m_mConstD
 Map to ?
 
std::map< std::string, std::vector< double > > m_mConstV
 Map to ?
 
std::map< std::string, bool > m_mBool
 Map to hold input options.
 
std::map< std::string, TRGCDCJSignalm_mSignalStorage
 Map to hold JSignals.
 
std::map< std::string, TRGCDCJLUT * > m_mLutStorage
 Map to hold JLuts.
 
TRGCDCJSignalData_commonData
 For VHDL code.
 

Detailed Description

A class to find tracks using Hough algorithm.

Definition at line 42 of file HoughFinder.h.

Member Data Documentation

◆ _cdc

const TRGCDC& _cdc
private

CDCTRG.

Definition at line 142 of file HoughFinder.h.

◆ _circleH

Circle Hough transformtion.

Definition at line 148 of file HoughFinder.h.

◆ _commonData

TRGCDCJSignalData* _commonData
private

For VHDL code.

Definition at line 184 of file HoughFinder.h.

◆ _doit

const unsigned _doit
private

Doit version.

Definition at line 151 of file HoughFinder.h.

◆ _name

const std::string _name
private

Name.

Definition at line 139 of file HoughFinder.h.

◆ _peakFinder

TRGCDCPeakFinder _peakFinder
private

Peak finder.

Definition at line 154 of file HoughFinder.h.

◆ _peakMin

const unsigned _peakMin
private

Min. peak height for the peak finder.

Definition at line 157 of file HoughFinder.h.

◆ _plane

TRGCDCHoughPlaneMulti2* _plane[2]
private

Hough planes, for + and - charges.

Definition at line 145 of file HoughFinder.h.

◆ m_mBool

std::map<std::string, bool> m_mBool
private

Map to hold input options.

Definition at line 175 of file HoughFinder.h.

◆ m_mConstants

std::map<std::string, double> m_mConstants
private

Map to hold const values for Fitter2D.

Definition at line 166 of file HoughFinder.h.

◆ m_mConstD

std::map<std::string, double> m_mConstD
private

Map to ?

Definition at line 169 of file HoughFinder.h.

◆ m_mConstV

std::map<std::string, std::vector<double> > m_mConstV
private

Map to ?

Definition at line 172 of file HoughFinder.h.

◆ m_mDouble

std::map<std::string, double> m_mDouble
private

Map to hold double values for Fitter2D.

Definition at line 160 of file HoughFinder.h.

◆ m_mLutStorage

std::map<std::string, TRGCDCJLUT*> m_mLutStorage
private

Map to hold JLuts.

Definition at line 181 of file HoughFinder.h.

◆ m_mSignalStorage

std::map<std::string, TRGCDCJSignal> m_mSignalStorage
private

Map to hold JSignals.

Definition at line 178 of file HoughFinder.h.

◆ m_mVector

std::map<std::string, std::vector<double> > m_mVector
private

Map to hold vector values for Fitter2D.

Definition at line 163 of file HoughFinder.h.


The documentation for this class was generated from the following files: