]>
Commit | Line | Data |
---|---|---|
bf6bf84c | 1 | #ifndef ALITOFDIGITMAP_H |
2 | #define ALITOFDIGITMAP_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | ||
0e46b9ae | 8 | ////////////////////////////////////////////////////////////// |
9 | // // | |
10 | // AliTOFDigitMap class // | |
11 | // // | |
12 | // digitmap enables fast check if the pad was already hit // | |
13 | // // | |
14 | // Author: F. Pierella | pierella@bo.infn.it // | |
15 | // // | |
16 | ////////////////////////////////////////////////////////////// | |
bf6bf84c | 17 | |
bf6bf84c | 18 | #include "TObject.h" |
0e46b9ae | 19 | |
20 | #include "AliHitMap.h" | |
d3c7bfac | 21 | |
bf6bf84c | 22 | class TClonesArray; |
d3c7bfac | 23 | class AliTOFGeometry; |
bf6bf84c | 24 | |
25 | class AliTOFDigitMap : public TObject | |
26 | { | |
27 | public: | |
28 | AliTOFDigitMap(); | |
d3c7bfac | 29 | AliTOFDigitMap(TClonesArray *dig, AliTOFGeometry *tofGeom); |
bf6bf84c | 30 | AliTOFDigitMap(const AliTOFDigitMap & digitMap); |
31 | ||
32 | virtual ~AliTOFDigitMap(); | |
33 | // Clear the hit map | |
34 | virtual void Clear(const char *opt = ""); | |
35 | // Set a single hit | |
36 | virtual void SetHit(Int_t *vol, Int_t idigit); | |
37 | virtual void SetHit(Int_t *vol); | |
38 | // Get index of hit in the list of digits | |
39 | virtual Int_t GetHitIndex(Int_t *vol) const; | |
40 | // Get pointer to digit | |
41 | virtual TObject* GetHit(Int_t *vol) const; | |
42 | // Test hit status | |
43 | virtual FlagType TestHit(Int_t *vol) const; | |
44 | // Assignment operator | |
45 | AliTOFDigitMap& operator = (const AliTOFDigitMap& rhs); | |
46 | ||
47 | private: | |
48 | // Check index | |
49 | Int_t CheckedIndex(Int_t *vol) const; | |
50 | private: | |
51 | Int_t fNSector; // Number of sectors | |
52 | Int_t fNplate; // Number of plates | |
53 | Int_t fNstrip; // Maximum number of strips | |
54 | Int_t fNpx; // Number of pads in x | |
a06668b9 | 55 | Int_t fNpz; // Number of pads in z |
bf6bf84c | 56 | |
d3c7bfac | 57 | TClonesArray *fDigits; // Pointer to sdigits |
bf6bf84c | 58 | Int_t fMaxIndex; // maximum index in hit map |
d3c7bfac | 59 | Int_t *fDigitMap; // ! [fMaxIndex] |
60 | ||
7aeeaf38 | 61 | AliTOFGeometry *fTOFGeometry; // Pointer to the TOF geometry |
bf6bf84c | 62 | |
63 | ClassDef(AliTOFDigitMap,0) // Implements DigitMap as a 1-dim array | |
64 | }; | |
65 | #endif |