]> git.uio.no Git - u/mrichter/AliRoot.git/blob - RICH/AliRICHHitMap.h
Introduction of the reference to Copyright and cvs Id
[u/mrichter/AliRoot.git] / RICH / AliRICHHitMap.h
1 #ifndef AliRICHHitMap_H
2 #define AliRICHHitMap_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 #include "AliRICH.h"
9 #include "TArrayI.h"
10 typedef enum {empty, used, unused} Flag_t;
11 const Int_t kMaxNpadx=1200, kMaxNpady=1200;
12
13 class AliRICHHitMap :
14 public TObject {
15  public:
16     virtual  void  FillHits()                                      =0;
17     virtual  void  Clear(Option_t* =0)                             =0;
18     virtual  void  SetHit(Int_t ix, Int_t iy, Int_t idigit)        =0;
19     virtual  void  DeleteHit(Int_t ix, Int_t iy)                   =0;
20     virtual Int_t  GetHitIndex(Int_t ix, Int_t iy)                 =0;
21     virtual TObject * GetHit(Int_t ix, Int_t iy)                   =0;
22     virtual void   FlagHit(Int_t ix, Int_t iy)                     =0;    
23     virtual Flag_t TestHit(Int_t ix, Int_t iy)                     =0;
24     
25     ClassDef(AliRICHHitMap,1) //virtual base class for muon HitMap
26 };
27
28 class AliRICHHitMapA1 :
29 public AliRICHHitMap 
30 {
31  private:
32     AliRICHsegmentation *fSegmentation;
33     Int_t fNpx;
34     Int_t fNpy;
35     TObjArray *fDigits;
36     Int_t fNdigits;
37     Int_t *fHitMap;                  //!
38     Int_t fMaxIndex;
39     
40  public:
41     AliRICHHitMapA1(AliRICHsegmentation *seg, TObjArray *dig);
42     virtual ~AliRICHHitMapA1();
43     virtual  void  FillHits();
44     virtual  void  Clear(Option_t* =0);    
45     virtual  void  SetHit(Int_t ix, Int_t iy, Int_t idigit);
46     virtual  void  DeleteHit(Int_t ix, Int_t iy);
47     virtual Int_t  GetHitIndex(Int_t ix, Int_t iy);
48     virtual TObject*  GetHit(Int_t ix, Int_t);
49     virtual  void  FlagHit(Int_t ix, Int_t iy);    
50     virtual Flag_t TestHit(Int_t ix, Int_t iy);
51     private:
52     Int_t CheckedIndex(Int_t ix, Int_t iy);
53     ClassDef(AliRICHHitMapA1,1) // Implements HitMap as a 2-dim array
54 };
55 #endif  
56
57