]>
Commit | Line | Data |
---|---|---|
02a27b50 | 1 | #ifndef ALIFMDBASEDIGIT_H |
2 | #define ALIFMDBASEDIGIT_H | |
3 | /** @file AliFMDBaseDigit.h | |
4 | @author Christian Holm Christensen <cholm@nbi.dk> | |
5 | @date Mon Mar 27 12:37:41 2006 | |
6 | @brief Digits for the FMD | |
7 | @ingroup FMD_base | |
8 | */ | |
9 | //___________________________________________________________________ | |
10 | // | |
11 | // Digits classes for the FMD | |
12 | // AliFMDBaseDigit - base class | |
13 | // AliFMDDigit - Normal (smeared) digit | |
14 | // AliFMDSDigit - Summable (non-smeared) digit | |
15 | // | |
16 | #ifndef ROOT_TObject | |
17 | # include <TObject.h> | |
18 | #endif | |
19 | #ifndef ROOT_TString | |
20 | # include <TString.h> | |
21 | #endif | |
22 | ||
23 | //____________________________________________________________________ | |
24 | /** @class AliFMDBaseDigit AliFMDDigit.h <FMD/AliFMDDigit.h> | |
25 | @brief base class for digits | |
26 | @ingroup FMD_base | |
27 | */ | |
28 | class AliFMDBaseDigit : public TObject | |
29 | { | |
30 | public: | |
31 | /** CTOR */ | |
32 | AliFMDBaseDigit(); | |
33 | /** Constrctor | |
34 | @param detector Detector | |
35 | @param ring Ring | |
36 | @param sector Sector | |
37 | @param strip Strip */ | |
38 | AliFMDBaseDigit(UShort_t detector, | |
39 | Char_t ring='\0', | |
40 | UShort_t sector=0, | |
41 | UShort_t strip=0); | |
42 | /** DTOR */ | |
43 | virtual ~AliFMDBaseDigit() {} | |
44 | /** @return Detector # */ | |
45 | UShort_t Detector() const { return fDetector; } | |
46 | /** @return Ring ID */ | |
47 | Char_t Ring() const { return fRing; } | |
48 | /** @return sector # */ | |
49 | UShort_t Sector() const { return fSector; } | |
50 | /** @return strip # */ | |
51 | UShort_t Strip() const { return fStrip; } | |
52 | /** Print information | |
53 | @param opt Not used */ | |
54 | virtual void Print(Option_t* opt="") const; | |
55 | /** @return Name */ | |
56 | const char* GetName() const; | |
57 | /** @param rhs Other digit to compare to | |
58 | @return -1 if this is less than @a rhs, 0 if the refer to the | |
59 | same, and 1 if @a rhs is larger than this */ | |
60 | Int_t Compare(const TObject* o) const; | |
61 | /** @return Always true */ | |
62 | Bool_t IsSortable() const { return kTRUE; } | |
63 | protected: | |
64 | ULong_t Hash() const; | |
65 | UShort_t fDetector; // (Sub) Detector # (1,2, or 3) | |
66 | Char_t fRing; // Ring ID ('I' or 'O') | |
67 | UShort_t fSector; // Sector # (phi division) | |
68 | UShort_t fStrip; // Strip # (radial division) | |
69 | mutable TString fName; //! Name (cached, but not stored) | |
70 | ClassDef(AliFMDBaseDigit, 2) // Base class for FMD digits | |
71 | }; | |
72 | ||
73 | #endif | |
74 | //____________________________________________________________________ | |
75 | // | |
76 | // Local Variables: | |
77 | // mode: C++ | |
78 | // End: | |
79 | // | |
80 | // | |
81 | // EOF | |
82 | // |