]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONHitMapA1.h
Added Bool_t rootInput argument; if set to true, the sector
[u/mrichter/AliRoot.git] / MUON / AliMUONHitMapA1.h
1 #ifndef ALIMUONHITMAPA1_H
2 #define ALIMUONHITMAPA1_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8 // Revision of includes 07/05/2004
9
10 /// \ingroup base
11 /// \class AliMUONHitMapA1
12 /// \brief Implements HitMap as a 1-dim array
13
14 #include "AliHitMap.h"
15
16 class TObjArray;
17
18 class AliMUONGeometrySegmentation;
19
20 class AliMUONHitMapA1 : public AliHitMap 
21 {
22  public:
23     AliMUONHitMapA1();
24     AliMUONHitMapA1(Int_t idDE, AliMUONGeometrySegmentation* seg, TObjArray* dig);
25     virtual ~AliMUONHitMapA1();
26
27     // Fill hits from list of digits into hit map
28     virtual  void  FillHits();
29     // Clear the hit map
30     virtual  void  Clear(const char *opt = "");
31     // Set a single hit
32     virtual  void  SetHit(Int_t ix, Int_t iy, Int_t idigit);
33     // Delete a single hit
34     virtual  void  DeleteHit(Int_t ix, Int_t iy);
35     // Get index of hit in the list of digits
36     virtual Int_t  GetHitIndex(Int_t ix, Int_t iy) const;
37     // Get pointer to digit
38     virtual TObject*  GetHit(Int_t ix, Int_t iy) const;
39     // Flag a hit as used
40     virtual  void  FlagHit(Int_t ix, Int_t iy);
41     // Validate
42     virtual  Bool_t ValidateHit(Int_t ix, Int_t iy);
43     // Test hit status
44     virtual FlagType TestHit(Int_t ix, Int_t iy);
45
46  protected:
47     AliMUONHitMapA1(const AliMUONHitMapA1 & hitMap);
48     // Assignment operator
49     AliMUONHitMapA1& operator = (const AliMUONHitMapA1& rhs);
50     
51  private:
52     // Check index
53     Int_t CheckedIndex(Int_t ix, Int_t iy) const;
54  private:
55     Int_t fNpx;                           // Maximum number of pads in x
56     Int_t fNpy;                           // Maximum number of pads in y
57     TObjArray *fDigits;                   // Pointer to digits
58     Int_t fMaxIndex;                      // maximum index in hit map
59     Int_t *fHitMap;                       // ! [fMaxIndex]         
60
61     ClassDef(AliMUONHitMapA1,0) // Implements HitMap as a 1-dim array
62 };
63 #endif