| 1 | /** | 
| 2 | * \file TrkHough.h | 
| 3 | * \author David Fedele | 
| 4 | */ | 
| 5 | #ifndef trkhough_h | 
| 6 | #define trkhough_h | 
| 7 |  | 
| 8 | #include <TObject.h> | 
| 9 |  | 
| 10 | #include <TrkStruct.h> | 
| 11 | #include <TrkLevel2.h> | 
| 12 | /** | 
| 13 | * \brief Class to describe Hough variables. | 
| 14 | */ | 
| 15 | // ================================================================== | 
| 16 | class TrkHough : public TObject { | 
| 17 |  | 
| 18 | private: | 
| 19 |  | 
| 20 | public: | 
| 21 |  | 
| 22 |  | 
| 23 | TClonesArray *Candidates;        ///< track candidates | 
| 24 |  | 
| 25 |  | 
| 26 | Int_t ndblt; ///< number of doublets | 
| 27 | Float_t *alfayz1; //[ndblt] | 
| 28 | Float_t *alfayz2; //[ndblt] | 
| 29 | Int_t *db_cloud;  //[ndblt] | 
| 30 |  | 
| 31 | Int_t ntrpt; ///< number of triplets | 
| 32 | Float_t *alfaxz1; //[ntrpt] | 
| 33 | Float_t *alfaxz2; //[ntrpt] | 
| 34 | Float_t *alfaxz3; //[ntrpt] | 
| 35 | Int_t *tr_cloud;  //[ntrpt] | 
| 36 |  | 
| 37 | Int_t nclouds_yz; ///< number of yz clouds | 
| 38 | Float_t *alfayz1_av; //[nclouds_yz] | 
| 39 | Float_t *alfayz2_av; //[nclouds_yz] | 
| 40 | Int_t *ptcloud_yz;  //[nclouds_yz] | 
| 41 |  | 
| 42 | Int_t nclouds_xz; ///< number of xz clouds | 
| 43 | Float_t *alfaxz1_av; //[nclouds_xz] | 
| 44 | Float_t *alfaxz2_av; //[nclouds_xz] | 
| 45 | Float_t *alfaxz3_av; //[nclouds_xz] | 
| 46 | Int_t *ptcloud_xz;  //[nclouds_xz] | 
| 47 |  | 
| 48 | Int_t nclstr; | 
| 49 | Float_t totaltime; | 
| 50 | Float_t houghtime; | 
| 51 | Float_t fittime; | 
| 52 |  | 
| 53 | /*   Int_t ntracks; ///< n. track-candidates */ | 
| 54 | /*   Float_t *al0; //[ntracks] */ | 
| 55 | /*   Float_t *al1; //[ntracks] */ | 
| 56 | /*   Float_t *al2; //[ntracks] */ | 
| 57 | /*   Float_t *al3; //[ntracks] */ | 
| 58 | /*   Float_t *al4; //[ntracks] */ | 
| 59 |  | 
| 60 | TrkHough(); | 
| 61 | ~TrkHough(){ Delete(); }; | 
| 62 |  | 
| 63 | void SetFromHoughStruct(cTrkHough*,cTrkCandidates*); | 
| 64 | void SetFromHoughStruct(cTrkHough *lh){ SetFromHoughStruct(lh,NULL); }; | 
| 65 | void SetFromHoughStruct(){SetFromHoughStruct(&houghevent_,&trackcandidates_); }; | 
| 66 | void Clear(); | 
| 67 | void Clear(Option_t *option){Clear();}; | 
| 68 | void Delete(); | 
| 69 | void Set(); | 
| 70 |  | 
| 71 | TClonesArray* GetCandidateArray(){return Candidates;};///< returns pointer to the track array | 
| 72 | TrkTrack*     GetCandidate(int i); | 
| 73 |  | 
| 74 | Int_t GetNCandidates(){return Candidates->GetEntries();}    ///< number of candidates; | 
| 75 |  | 
| 76 | TrkHough* GetTrkHough(){return this;} | 
| 77 |  | 
| 78 |  | 
| 79 | ClassDef(TrkHough,2); | 
| 80 |  | 
| 81 | }; | 
| 82 |  | 
| 83 | #endif |