]>
Commit | Line | Data |
---|---|---|
ddae0931 | 1 | #ifndef AliRICHHitMap_H |
2 | #define AliRICHHitMap_H | |
3 | ||
4 | #include "AliRICH.h" | |
5 | #include "TArrayI.h" | |
6 | typedef enum {empty, used, unused} Flag_t; | |
7 | const Int_t kMaxNpadx=1200, kMaxNpady=1200; | |
8 | ||
9 | class AliRICHHitMap : | |
10 | public TObject { | |
11 | public: | |
12 | virtual void FillHits() =0; | |
13 | virtual void Clear() =0; | |
14 | virtual void SetHit(Int_t ix, Int_t iy, Int_t idigit) =0; | |
15 | virtual void DeleteHit(Int_t ix, Int_t iy) =0; | |
16 | virtual Int_t GetHitIndex(Int_t ix, Int_t iy) =0; | |
17 | virtual TObject * GetHit(Int_t ix, Int_t iy) =0; | |
18 | virtual void FlagHit(Int_t ix, Int_t iy) =0; | |
19 | virtual Flag_t TestHit(Int_t ix, Int_t iy) =0; | |
20 | ||
21 | ClassDef(AliRICHHitMap,1) //virtual base class for muon HitMap | |
22 | }; | |
23 | ||
24 | class AliRICHHitMapA1 : | |
25 | public AliRICHHitMap | |
26 | { | |
27 | private: | |
28 | AliRICHsegmentation *fSegmentation; | |
29 | Int_t fNpx; | |
30 | Int_t fNpy; | |
31 | TObjArray *fDigits; | |
32 | Int_t fNdigits; | |
33 | Int_t *fHitMap; | |
34 | Int_t fMaxIndex; | |
35 | ||
36 | public: | |
37 | AliRICHHitMapA1(AliRICHsegmentation *seg, TObjArray *dig); | |
38 | virtual ~AliRICHHitMapA1(); | |
39 | virtual void FillHits(); | |
40 | virtual void Clear(); | |
41 | virtual void SetHit(Int_t ix, Int_t iy, Int_t idigit); | |
42 | virtual void DeleteHit(Int_t ix, Int_t iy); | |
43 | virtual Int_t GetHitIndex(Int_t ix, Int_t iy); | |
44 | virtual TObject* GetHit(Int_t ix, Int_t); | |
45 | virtual void FlagHit(Int_t ix, Int_t iy); | |
46 | virtual Flag_t TestHit(Int_t ix, Int_t iy); | |
47 | private: | |
48 | Int_t CheckedIndex(Int_t ix, Int_t iy); | |
49 | ClassDef(AliRICHHitMapA1,1) // Implements HitMap as a 2-dim array | |
50 | }; | |
51 | #endif | |
52 | ||
53 |