]>
Commit | Line | Data |
---|---|---|
a9e2aefa | 1 | #ifndef ALIMUONLOCALTRIGGER_H |
2 | #define ALIMUONLOCALTRIGGER_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
30178c30 | 7 | /* $Id$ */ |
8 | // Revision of includes 07/05/2004 | |
a9e2aefa | 9 | |
692de412 | 10 | /// \ingroup base |
11 | /// \class AliMUONLocalTrigger | |
12 | /// \brief Reconstructed Local Trigger object | |
5398f946 | 13 | // Author Ph. Crochet |
692de412 | 14 | |
a9e2aefa | 15 | #include <TObject.h> |
2be06f1e | 16 | #include <TArrayI.h> |
a9e2aefa | 17 | |
8d7dfec2 | 18 | class AliMUONLocalStruct; |
19 | ||
a9e2aefa | 20 | class AliMUONLocalTrigger : public TObject { |
21 | public: | |
402fb06e | 22 | AliMUONLocalTrigger(); |
d694b6f6 | 23 | AliMUONLocalTrigger(const AliMUONLocalTrigger& rhs); // copy constructor ! |
2be06f1e | 24 | AliMUONLocalTrigger(const Int_t* localtr, const TArrayI& digits); |
402fb06e | 25 | virtual ~AliMUONLocalTrigger(){;} |
d694b6f6 | 26 | AliMUONLocalTrigger& operator=(const AliMUONLocalTrigger& rhs); |
e9b63742 | 27 | |
ce6a659c | 28 | // getter methods |
5398f946 | 29 | // |
30 | /// Return Circuit number | |
b8fdc4dd | 31 | Int_t LoCircuit() const {return fLoCircuit;} |
5398f946 | 32 | /// Return X strip in MT11 |
b8fdc4dd | 33 | Int_t LoStripX() const {return fLoStripX;} |
5398f946 | 34 | /// Return Deviation |
b8fdc4dd | 35 | Int_t LoDev() const {return fLoDev;} |
5398f946 | 36 | /// Return Y strip in MT11 |
b8fdc4dd | 37 | Int_t LoStripY() const {return fLoStripY;} |
5398f946 | 38 | /// Return Low pt |
b8fdc4dd | 39 | Int_t LoLpt() const {return fLoLpt;} |
5398f946 | 40 | /// Return High p |
b8fdc4dd | 41 | Int_t LoHpt() const {return fLoHpt;} |
5398f946 | 42 | /// Return All pt |
b8fdc4dd | 43 | Int_t LoApt() const {return fLoApt;} |
402fb06e | 44 | |
5398f946 | 45 | /// Return X strip pattern for chamber 11 |
6dc7fcdf | 46 | UShort_t GetX1Pattern() const {return fX1Pattern;} |
5398f946 | 47 | /// Return X strip pattern for chamber 12 |
6dc7fcdf | 48 | UShort_t GetX2Pattern() const {return fX2Pattern;} |
5398f946 | 49 | /// Return X strip pattern for chamber 21 |
6dc7fcdf | 50 | UShort_t GetX3Pattern() const {return fX3Pattern;} |
5398f946 | 51 | /// Return X strip pattern for chamber 22 |
6dc7fcdf | 52 | UShort_t GetX4Pattern() const {return fX4Pattern;} |
53 | ||
5398f946 | 54 | /// Return Y strip pattern for chamber 11 |
6dc7fcdf | 55 | UShort_t GetY1Pattern() const {return fY1Pattern;} |
5398f946 | 56 | /// Return Y strip pattern for chamber 12 |
6dc7fcdf | 57 | UShort_t GetY2Pattern() const {return fY2Pattern;} |
5398f946 | 58 | /// Return Y strip pattern for chamber 21 |
6dc7fcdf | 59 | UShort_t GetY3Pattern() const {return fY3Pattern;} |
5398f946 | 60 | /// Return Y strip pattern for chamber 22 |
6dc7fcdf | 61 | UShort_t GetY4Pattern() const {return fY4Pattern;} |
62 | ||
63 | Char_t GetLoDecision(); | |
64 | ||
ce6a659c | 65 | // setter methods |
5398f946 | 66 | // |
67 | /// Set Circuit number | |
ce6a659c | 68 | void SetLoCircuit(Int_t loCir) {fLoCircuit = loCir;} |
5398f946 | 69 | /// Set X strip in MT11 |
ce6a659c | 70 | void SetLoStripX(Int_t loStrX) {fLoStripX = loStrX;} |
5398f946 | 71 | /// Set Deviation |
ce6a659c | 72 | void SetLoDev(Int_t loDev) {fLoDev = loDev;} |
5398f946 | 73 | /// Set Y strip in MT11 |
ce6a659c | 74 | void SetLoStripY(Int_t loStrY) {fLoStripY = loStrY;} |
5398f946 | 75 | /// Set Low pt |
ce6a659c | 76 | void SetLoLpt(Int_t loLpt) {fLoLpt = loLpt;} |
5398f946 | 77 | /// Set High pt |
ce6a659c | 78 | void SetLoHpt(Int_t loHpt) {fLoHpt = loHpt;} |
5398f946 | 79 | /// Set All pt |
ce6a659c | 80 | void SetLoApt(Int_t loApt) {fLoApt = loApt;} |
81 | ||
5398f946 | 82 | /// Set X strip pattern for chamber 11 |
ce6a659c | 83 | void SetX1Pattern(UShort_t pat) {fX1Pattern = pat;} |
5398f946 | 84 | /// Set X strip pattern for chamber 12 |
ce6a659c | 85 | void SetX2Pattern(UShort_t pat) {fX2Pattern = pat;} |
5398f946 | 86 | /// Set X strip pattern for chamber 21 |
ce6a659c | 87 | void SetX3Pattern(UShort_t pat) {fX3Pattern = pat;} |
5398f946 | 88 | /// Set X strip pattern for chamber 22 |
ce6a659c | 89 | void SetX4Pattern(UShort_t pat) {fX4Pattern = pat;} |
90 | ||
5398f946 | 91 | /// Set Y strip pattern for chamber 11 |
ce6a659c | 92 | void SetY1Pattern(UShort_t pat) {fY1Pattern = pat;} |
5398f946 | 93 | /// Set Y strip pattern for chamber 12 |
ce6a659c | 94 | void SetY2Pattern(UShort_t pat) {fY2Pattern = pat;} |
5398f946 | 95 | /// Set Y strip pattern for chamber 21 |
ce6a659c | 96 | void SetY3Pattern(UShort_t pat) {fY3Pattern = pat;} |
5398f946 | 97 | /// Set Y strip pattern for chamber 22 |
ce6a659c | 98 | void SetY4Pattern(UShort_t pat) {fY4Pattern = pat;} |
99 | ||
8d7dfec2 | 100 | void SetLocalStruct(Int_t loCircuit, AliMUONLocalStruct& localStruct); |
101 | ||
ce6a659c | 102 | // data link |
5398f946 | 103 | // |
104 | /// Return number of digits in the list | |
b8fdc4dd | 105 | Int_t NumberOfDigits() const { return fDigits.GetSize(); } |
5398f946 | 106 | /// Return \a i th digit number in the list |
d8e8484f | 107 | Int_t GetDigitNumber(Int_t i) const { return fDigits[i]; } |
8d7dfec2 | 108 | void GetDigit(Int_t i, Int_t& chamber, Int_t& cathode, Int_t& digit) const; |
2be06f1e | 109 | |
d8e8484f | 110 | static Int_t EncodeDigitNumber(Int_t chamber, Int_t cathode, Int_t digit); |
8d7dfec2 | 111 | static void DecodeDigitNumber(Int_t digitnumber, Int_t& chamber, Int_t& cathode, Int_t& digit); |
2be06f1e | 112 | |
1908473e | 113 | void SetDigits(const TArrayI& digits) {fDigits = digits;} |
114 | ||
eba3379e | 115 | virtual void Print(Option_t* opt="") const; |
116 | ||
402fb06e | 117 | private: |
18b6b8c7 | 118 | Int_t fLoCircuit; ///< Circuit number |
119 | Int_t fLoStripX; ///< X strip in MT11 | |
120 | Int_t fLoDev; ///< Deviation | |
121 | Int_t fLoStripY; ///< Y strip in MT11 | |
122 | Int_t fLoLpt; ///< Low pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef | |
123 | Int_t fLoHpt; ///< High pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef | |
124 | Int_t fLoApt; ///< All pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef | |
6dc7fcdf | 125 | |
18b6b8c7 | 126 | UShort_t fX1Pattern; ///< X strip pattern for chamber 11 |
127 | UShort_t fX2Pattern; ///< X strip pattern for chamber 12 | |
128 | UShort_t fX3Pattern; ///< X strip pattern for chamber 21 | |
129 | UShort_t fX4Pattern; ///< X strip pattern for chamber 22 | |
8d7dfec2 | 130 | |
18b6b8c7 | 131 | UShort_t fY1Pattern; ///< Y strip pattern for chamber 11 |
132 | UShort_t fY2Pattern; ///< Y strip pattern for chamber 12 | |
133 | UShort_t fY3Pattern; ///< Y strip pattern for chamber 21 | |
134 | UShort_t fY4Pattern; ///< Y strip pattern for chamber 22 | |
6dc7fcdf | 135 | |
8d7dfec2 | 136 | |
18b6b8c7 | 137 | Char_t fLoDecision; ///< Local decision word (4 bits) |
2be06f1e | 138 | |
18b6b8c7 | 139 | TArrayI fDigits; ///< List of digit numbers from which this object was created. |
b8fdc4dd | 140 | |
141 | ClassDef(AliMUONLocalTrigger,2) // reconstructed Local Trigger object | |
a9e2aefa | 142 | }; |
143 | #endif | |
144 | ||
145 | ||
146 | ||
147 | ||
148 | ||
149 |