]>
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; |
fed772f3 | 15 | class AliMUONGeometrySegmentation; |
a9e2aefa | 16 | |
30178c30 | 17 | class AliMUONHitMapA1 : public AliHitMap |
a9e2aefa | 18 | { |
19 | public: | |
0a5f9c41 | 20 | AliMUONHitMapA1(); |
fed772f3 | 21 | AliMUONHitMapA1(AliSegmentation* seg, TObjArray* dig); |
22 | AliMUONHitMapA1(Int_t idDE, AliMUONGeometrySegmentation* seg, TObjArray* dig); | |
a9e2aefa | 23 | virtual ~AliMUONHitMapA1(); |
30178c30 | 24 | |
a9e2aefa | 25 | // Fill hits from list of digits into hit map |
26 | virtual void FillHits(); | |
27 | // Clear the hit map | |
ef42d733 | 28 | virtual void Clear(const char *opt = ""); |
a9e2aefa | 29 | // Set a single hit |
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 | |
94de3818 | 34 | virtual Int_t GetHitIndex(Int_t ix, Int_t iy) const; |
a9e2aefa | 35 | // Get pointer to digit |
94de3818 | 36 | virtual TObject* GetHit(Int_t ix, Int_t iy) const; |
a9e2aefa | 37 | // Flag a hit as used |
38 | virtual void FlagHit(Int_t ix, Int_t iy); | |
c054ce61 | 39 | // Validate |
40 | virtual Bool_t ValidateHit(Int_t ix, Int_t iy); | |
a9e2aefa | 41 | // Test hit status |
42 | virtual FlagType TestHit(Int_t ix, Int_t iy); | |
30178c30 | 43 | |
44 | protected: | |
45 | AliMUONHitMapA1(const AliMUONHitMapA1 & hitMap); | |
a9e2aefa | 46 | // Assignment operator |
47 | AliMUONHitMapA1& operator = (const AliMUONHitMapA1& rhs); | |
48 | ||
49 | private: | |
50 | // Check index | |
94de3818 | 51 | Int_t CheckedIndex(Int_t ix, Int_t iy) const; |
a9e2aefa | 52 | private: |
a9e2aefa | 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 | |
a9e2aefa | 56 | Int_t fMaxIndex; // maximum index in hit map |
a434b27a | 57 | Int_t *fHitMap; // ! [fMaxIndex] |
a9e2aefa | 58 | |
2186f543 | 59 | ClassDef(AliMUONHitMapA1,0) // Implements HitMap as a 1-dim array |
a9e2aefa | 60 | }; |
61 | #endif |