]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONDigitMapA1.h
Updated AliEMCAL::Digits2Raw, reads first provisional RCU mapping files to make Raw...
[u/mrichter/AliRoot.git] / MUON / AliMUONDigitMapA1.h
1 #ifndef ALIMUONDIGITMAPA1_H
2 #define ALIMUONDIGITMAPA1_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 rec
11 /// \class AliMUONDigitMapA1
12 /// \brief Implements cluster Map as a 1-dim array
13 /// 
14 /// \author Christian Finck
15
16 #include "AliHitMap.h"
17
18 #include <TObject.h>
19
20 class TObjArray;
21
22 class AliMUONDigitMapA1 : public TObject
23 {
24  public:
25     AliMUONDigitMapA1();
26     AliMUONDigitMapA1(Int_t idDE, Int_t npx, Int_t npy);
27     virtual ~AliMUONDigitMapA1();
28
29     // Fill hits from list of digits into hit map
30     virtual  void  FillHits(TObjArray* dig);
31     // Clear the hit map
32     virtual  void  Clear(const char *opt = "");
33     // Set a single hit
34     virtual  void  SetHit(Int_t ix, Int_t iy, Int_t idigit);
35     // Delete a single hit
36     virtual  void  DeleteHit(Int_t ix, Int_t iy);
37     // Get index of hit in the list of digits
38     virtual Int_t  GetHitIndex(Int_t ix, Int_t iy) const;
39     // Get pointer to digit
40     virtual TObject*  GetHit(Int_t ix, Int_t iy) const;
41     // Flag a hit as used
42     virtual  void  FlagHit(Int_t ix, Int_t iy);
43     // Test hit status
44     virtual FlagType TestHit(Int_t ix, Int_t iy) const;
45
46  private:
47     AliMUONDigitMapA1(const AliMUONDigitMapA1 & hitMap);
48     // Assignment operator
49     AliMUONDigitMapA1& operator = (const AliMUONDigitMapA1& rhs);
50
51     // Check index
52     Int_t CheckedIndex(Int_t ix, Int_t iy) const;
53  private:
54     Int_t fIdDE;                          ///< id DE
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     
60     /// The array of hits
61     Int_t *fHitMap;                       // ! [fMaxIndex]         
62
63     ClassDef(AliMUONDigitMapA1,0) // Implements HitMap as a 1-dim array
64 };
65 #endif