EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbmRichRingFinderHoughSimd Class Reference

SIMDized ring finder based on Hough Transform method. More...

#include <EicRoot/blob/master/rich/finder/CbmRichRingFinderHoughSimd.h>

+ Inheritance diagram for CbmRichRingFinderHoughSimd:
+ Collaboration diagram for CbmRichRingFinderHoughSimd:

Public Member Functions

 CbmRichRingFinderHoughSimd ()
 
 ~CbmRichRingFinderHoughSimd ()
 
virtual void HoughTransformReconstruction ()
 Run HT for each hit.
 
virtual void HoughTransformGroup (unsigned short int indmin, unsigned short int indmax, Int_t iPart)
 
- Public Member Functions inherited from CbmRichRingFinderHoughImpl
 CbmRichRingFinderHoughImpl ()
 Standard constructor.
 
virtual ~CbmRichRingFinderHoughImpl ()
 Distructor.
 
void SetParameters ()
 Set parameters of the algorithm.
 
void CalculateRingParameters (float x[], float y[], float *xc, float *yc, float *r)
 Calculate circle center and radius.
 
virtual void DefineLocalAreaAndHits (float x0, float y0, int *indmin, int *indmax)
 Find hits in a local area.
 
virtual void HoughTransform (unsigned short indmin, unsigned short indmax)
 Run HoughTransformGroup for each group of hits.
 
virtual void HoughTransformGroup (unsigned short indmin, unsigned short indmax, int iPart)
 Main procedure for Hough Transform.
 
void FindPeak (int indmin, int indmax)
 Find peak in the HT histograms.
 
void RingSelection ()
 Ring selection procedure.
 
void ReAssignSharedHits (int ringInd1, int ringInd2)
 Reassign shared hits from two rings to only one of the rings.
 
int GetHitIndex (unsigned short hitInd)
 Return hit indez in the internal Array.
 
void RemoveHitsAroundRing (int indmin, int indmax, CbmRichRingLight *ring)
 Set fIsUsed flag to true for hits attached to the ring.
 
void Init ()
 
void DoFind ()
 Start point to run algorithm.
 
void SetData (const vector< CbmRichHoughHit > &data)
 Set array of hits.
 
vector< CbmRichRingLight * > & GetFoundRings ()
 Return vector of found rings.
 
 CbmRichRingFinderHoughImpl ()
 
virtual ~CbmRichRingFinderHoughImpl ()
 
void SetParameters ()
 
virtual void DefineLocalAreaAndHits (float x0, float y0, int *indmin, int *indmax)
 
virtual void HoughTransform (unsigned short indmin, unsigned short indmax)
 
virtual void HoughTransformGroup (unsigned short indmin, unsigned short indmax, int iPart)
 
void FindPeak (int indmin, int indmax)
 
void RingSelection ()
 
void ReAssingSharedHits (int ringInd1, int ringInd2)
 
int GetHitIndex (unsigned short hitInd)
 
void RemoveHitsAroundRing (int indmin, int indmax, CbmRichRingLight *ring)
 
void Init ()
 
void DoFind ()
 
void SetData (const std::vector< CbmRichHoughHit > &data)
 
std::vector< CbmRichRingLight * > & GetFoundRings ()
 

Public Attributes

std::vector< CbmRichHoughHitVecfDataV
 

Additional Inherited Members

- Protected Attributes inherited from CbmRichRingFinderHoughImpl
unsigned short fNofParts
 
float fMaxDistance
 
float fMinDistance
 
float fMinDistanceSq
 
float fMaxDistanceSq
 = fMinDistance*fMinDistance
 
float fMinRadius
 
float fMaxRadius
 
float fDx
 
float fDy
 
float fDr
 
unsigned short fNofBinsX
 
unsigned short fNofBinsY
 
unsigned short fNofBinsXY
 
unsigned short fHTCut
 
unsigned short fNofBinsR
 
unsigned short fHTCutR
 
unsigned short fMinNofHitsInArea
 
float fRmsCoeffEl
 
float fMaxCutEl
 
float fRmsCoeffCOP
 
float fMaxCutCOP
 
float fAnnCut
 
float fUsedHitsAllCut
 
float fCurMinX
 
float fCurMinY
 
vector< CbmRichHoughHitfData
 
vector< unsigned short > fHist
 
vector< unsigned short > fHistR
 
vector< vector< unsigned short > > fHitInd
 
vector< CbmRichRingLight * > fFoundRings
 
CbmRichRingFitterCOPfFitCOP
 
CbmRichRingSelectAnnfANNSelect
 
unsigned short fHitCut
 
unsigned short fHitCutR
 
float fUsedHitsCut
 
std::vector< CbmRichHoughHitfData
 
std::vector< CbmRichHoughHitfDataPart1
 Rich hits.
 
std::vector< CbmRichHoughHitfDataPart2
 Rich hits.
 
std::vector< unsigned short > fHist
 Rich hits.
 
std::vector< unsigned short > fHistR
 
std::vector< std::vector
< unsigned short > > 
fHitInd
 
std::vector< CbmRichRingLight * > fFoundRings
 
CbmRichRingFitterCOPLightfFitCOP
 collect found rings
 
CbmRichRingSelectNeuralNetfANNSelect
 
- Static Protected Attributes inherited from CbmRichRingFinderHoughImpl
static const unsigned short MAX_NOF_HITS = 65000
 
static const unsigned short kMAX_NOF_HITS = 65500
 
static const unsigned short fNofParts = 2
 

Detailed Description

SIMDized ring finder based on Hough Transform method.

Author
Semen Lebedev
Date
2009

Definition at line 34 of file CbmRichRingFinderHoughSimd.h.

View newest version in sPHENIX GitHub at line 34 of file CbmRichRingFinderHoughSimd.h

Constructor & Destructor Documentation

CbmRichRingFinderHoughSimd::CbmRichRingFinderHoughSimd ( )

Definition at line 13 of file CbmRichRingFinderHoughSimd.cxx.

View newest version in sPHENIX GitHub at line 13 of file CbmRichRingFinderHoughSimd.cxx

CbmRichRingFinderHoughSimd::~CbmRichRingFinderHoughSimd ( )
inline

Definition at line 40 of file CbmRichRingFinderHoughSimd.h.

View newest version in sPHENIX GitHub at line 40 of file CbmRichRingFinderHoughSimd.h

Member Function Documentation

void CbmRichRingFinderHoughSimd::HoughTransformReconstruction ( )
virtual

Member Data Documentation

std::vector<CbmRichHoughHitVec> CbmRichRingFinderHoughSimd::fDataV

Definition at line 49 of file CbmRichRingFinderHoughSimd.h.

View newest version in sPHENIX GitHub at line 49 of file CbmRichRingFinderHoughSimd.h

Referenced by HoughTransformGroup(), and HoughTransformReconstruction().


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