]>
Commit | Line | Data |
---|---|---|
a9e2aefa | 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$ */ | |
30178c30 | 8 | // Revision of includes 07/05/2004 |
a9e2aefa | 9 | |
a30a000f | 10 | #include "AliHitMap.h" |
a9e2aefa | 11 | |
30178c30 | 12 | class TObjArray; |
a9e2aefa | 13 | |
30178c30 | 14 | class AliSegmentation; |
a9e2aefa | 15 | |
30178c30 | 16 | class AliMUONHitMapA1 : public AliHitMap |
a9e2aefa | 17 | { |
18 | public: | |
0a5f9c41 | 19 | AliMUONHitMapA1(); |
20 | AliMUONHitMapA1(AliSegmentation *seg, TObjArray *dig); | |
a9e2aefa | 21 | virtual ~AliMUONHitMapA1(); |
30178c30 | 22 | |
a9e2aefa | 23 | // Fill hits from list of digits into hit map |
24 | virtual void FillHits(); | |
25 | // Clear the hit map | |
ef42d733 | 26 | virtual void Clear(const char *opt = ""); |
a9e2aefa | 27 | // Set a single hit |
28 | virtual void SetHit(Int_t ix, Int_t iy, Int_t idigit); | |
29 | // Delete a single hit | |
30 | virtual void DeleteHit(Int_t ix, Int_t iy); | |
31 | // Get index of hit in the list of digits | |
94de3818 | 32 | virtual Int_t GetHitIndex(Int_t ix, Int_t iy) const; |
a9e2aefa | 33 | // Get pointer to digit |
94de3818 | 34 | virtual TObject* GetHit(Int_t ix, Int_t iy) const; |
a9e2aefa | 35 | // Flag a hit as used |
36 | virtual void FlagHit(Int_t ix, Int_t iy); | |
c054ce61 | 37 | // Validate |
38 | virtual Bool_t ValidateHit(Int_t ix, Int_t iy); | |
a9e2aefa | 39 | // Test hit status |
40 | virtual FlagType TestHit(Int_t ix, Int_t iy); | |
30178c30 | 41 | |
42 | protected: | |
43 | AliMUONHitMapA1(const AliMUONHitMapA1 & hitMap); | |
a9e2aefa | 44 | // Assignment operator |
45 | AliMUONHitMapA1& operator = (const AliMUONHitMapA1& rhs); | |
46 | ||
47 | private: | |
48 | // Check index | |
94de3818 | 49 | Int_t CheckedIndex(Int_t ix, Int_t iy) const; |
a9e2aefa | 50 | private: |
a9e2aefa | 51 | Int_t fNpx; // Maximum number of pads in x |
52 | Int_t fNpy; // Maximum number of pads in y | |
53 | TObjArray *fDigits; // Pointer to digits | |
a9e2aefa | 54 | Int_t fMaxIndex; // maximum index in hit map |
a434b27a | 55 | Int_t *fHitMap; // ! [fMaxIndex] |
a9e2aefa | 56 | |
2186f543 | 57 | ClassDef(AliMUONHitMapA1,0) // Implements HitMap as a 1-dim array |
a9e2aefa | 58 | }; |
59 | #endif |