EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbmRichProtRingFinderHough.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file CbmRichProtRingFinderHough.h
1 
10 #ifndef CBM_RICH_PROT_RING_FINDER_HOUGH_H_
11 #define CBM_RICH_PROT_RING_FINDER_HOUGH_H_
12 
13 #include "CbmRichRingFinder.h"
14 #include <vector>
15 
16 class CbmRichProtRingFinderHoughImpl;
18 class CbmRichRing;
19 class CbmRichRingLight;
20 
21 #define HOUGH_SERIAL
22 //#define HOUGH_SIMD
23 
24 using std::vector;
25 
35 {
36 protected:
37  Int_t fNEvent; // event number
38  Int_t fRingCount; // number of found rings
39 
40 // choose between serial and SIMD implementation of the ring finder
41 #ifdef HOUGH_SERIAL
42  CbmRichProtRingFinderHoughImpl *fHTImpl;
43 #endif
44 
45 #ifdef HOUGH_SIMD
47 #endif
48 
49 public:
50 
55 
60 
64  virtual void Init();
65 
69  virtual Int_t DoFind(
70  TClonesArray* rHitArray,
71  TClonesArray* rProjArray,
72  TClonesArray* rRingArray);
73 
74 private:
81  TClonesArray *rRingArray,
82  const vector<CbmRichRingLight*>& rings);
83 
88 
93 };
94 
95 #endif