1 #ifndef ALIMUONHITMAPA1_H
2 #define ALIMUONHITMAPA1_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
8 // Revision of includes 07/05/2004
10 #include "AliHitMap.h"
14 class AliSegmentation;
15 class AliMUONGeometrySegmentation;
17 class AliMUONHitMapA1 : public AliHitMap
21 AliMUONHitMapA1(AliSegmentation* seg, TObjArray* dig);
22 AliMUONHitMapA1(Int_t idDE, AliMUONGeometrySegmentation* seg, TObjArray* dig);
23 virtual ~AliMUONHitMapA1();
25 // Fill hits from list of digits into hit map
26 virtual void FillHits();
28 virtual void Clear(const char *opt = "");
30 virtual void SetHit(Int_t ix, Int_t iy, Int_t idigit);
31 // Delete a single hit
32 virtual void DeleteHit(Int_t ix, Int_t iy);
33 // Get index of hit in the list of digits
34 virtual Int_t GetHitIndex(Int_t ix, Int_t iy) const;
35 // Get pointer to digit
36 virtual TObject* GetHit(Int_t ix, Int_t iy) const;
38 virtual void FlagHit(Int_t ix, Int_t iy);
40 virtual Bool_t ValidateHit(Int_t ix, Int_t iy);
42 virtual FlagType TestHit(Int_t ix, Int_t iy);
45 AliMUONHitMapA1(const AliMUONHitMapA1 & hitMap);
46 // Assignment operator
47 AliMUONHitMapA1& operator = (const AliMUONHitMapA1& rhs);
51 Int_t CheckedIndex(Int_t ix, Int_t iy) const;
53 Int_t fNpx; // Maximum number of pads in x
54 Int_t fNpy; // Maximum number of pads in y
55 TObjArray *fDigits; // Pointer to digits
56 Int_t fMaxIndex; // maximum index in hit map
57 Int_t *fHitMap; // ! [fMaxIndex]
59 ClassDef(AliMUONHitMapA1,0) // Implements HitMap as a 1-dim array