]>
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 | |
8d7dfec2 | 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 |
b8fdc4dd | 29 | Int_t LoCircuit() const {return fLoCircuit;} |
30 | Int_t LoStripX() const {return fLoStripX;} | |
31 | Int_t LoDev() const {return fLoDev;} | |
32 | Int_t LoStripY() const {return fLoStripY;} | |
33 | Int_t LoLpt() const {return fLoLpt;} | |
34 | Int_t LoHpt() const {return fLoHpt;} | |
35 | Int_t LoApt() const {return fLoApt;} | |
402fb06e | 36 | |
6dc7fcdf | 37 | |
38 | UShort_t GetX1Pattern() const {return fX1Pattern;} | |
39 | UShort_t GetX2Pattern() const {return fX2Pattern;} | |
40 | UShort_t GetX3Pattern() const {return fX3Pattern;} | |
41 | UShort_t GetX4Pattern() const {return fX4Pattern;} | |
42 | ||
43 | UShort_t GetY1Pattern() const {return fY1Pattern;} | |
44 | UShort_t GetY2Pattern() const {return fY2Pattern;} | |
45 | UShort_t GetY3Pattern() const {return fY3Pattern;} | |
46 | UShort_t GetY4Pattern() const {return fY4Pattern;} | |
47 | ||
48 | Char_t GetLoDecision(); | |
49 | ||
ce6a659c | 50 | // setter methods |
51 | void SetLoCircuit(Int_t loCir) {fLoCircuit = loCir;} | |
52 | void SetLoStripX(Int_t loStrX) {fLoStripX = loStrX;} | |
53 | void SetLoDev(Int_t loDev) {fLoDev = loDev;} | |
54 | void SetLoStripY(Int_t loStrY) {fLoStripY = loStrY;} | |
55 | void SetLoLpt(Int_t loLpt) {fLoLpt = loLpt;} | |
56 | void SetLoHpt(Int_t loHpt) {fLoHpt = loHpt;} | |
57 | void SetLoApt(Int_t loApt) {fLoApt = loApt;} | |
58 | ||
59 | void SetX1Pattern(UShort_t pat) {fX1Pattern = pat;} | |
60 | void SetX2Pattern(UShort_t pat) {fX2Pattern = pat;} | |
61 | void SetX3Pattern(UShort_t pat) {fX3Pattern = pat;} | |
62 | void SetX4Pattern(UShort_t pat) {fX4Pattern = pat;} | |
63 | ||
64 | void SetY1Pattern(UShort_t pat) {fY1Pattern = pat;} | |
65 | void SetY2Pattern(UShort_t pat) {fY2Pattern = pat;} | |
66 | void SetY3Pattern(UShort_t pat) {fY3Pattern = pat;} | |
67 | void SetY4Pattern(UShort_t pat) {fY4Pattern = pat;} | |
68 | ||
8d7dfec2 | 69 | void SetLocalStruct(Int_t loCircuit, AliMUONLocalStruct& localStruct); |
70 | ||
ce6a659c | 71 | // data link |
b8fdc4dd | 72 | Int_t NumberOfDigits() const { return fDigits.GetSize(); } |
d8e8484f | 73 | Int_t GetDigitNumber(Int_t i) const { return fDigits[i]; } |
8d7dfec2 | 74 | void GetDigit(Int_t i, Int_t& chamber, Int_t& cathode, Int_t& digit) const; |
2be06f1e | 75 | |
d8e8484f | 76 | static Int_t EncodeDigitNumber(Int_t chamber, Int_t cathode, Int_t digit); |
8d7dfec2 | 77 | static void DecodeDigitNumber(Int_t digitnumber, Int_t& chamber, Int_t& cathode, Int_t& digit); |
2be06f1e | 78 | |
402fb06e | 79 | private: |
a9e2aefa | 80 | Int_t fLoCircuit; // circuit number |
81 | Int_t fLoStripX; // X strip in MT11 | |
82 | Int_t fLoDev; // deviation | |
83 | Int_t fLoStripY; // Y strip in MT11 | |
84 | Int_t fLoLpt; // Low pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef | |
85 | Int_t fLoHpt; // High pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef | |
86 | Int_t fLoApt; // All pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef | |
6dc7fcdf | 87 | |
d1525c79 | 88 | UShort_t fX1Pattern; // X strip pattern for chamber 11 |
89 | UShort_t fX2Pattern; // X strip pattern for chamber 12 | |
90 | UShort_t fX3Pattern; // X strip pattern for chamber 21 | |
91 | UShort_t fX4Pattern; // X strip pattern for chamber 22 | |
8d7dfec2 | 92 | |
d1525c79 | 93 | UShort_t fY1Pattern; // Y strip pattern for chamber 11 |
94 | UShort_t fY2Pattern; // Y strip pattern for chamber 12 | |
95 | UShort_t fY3Pattern; // Y strip pattern for chamber 21 | |
96 | UShort_t fY4Pattern; // Y strip pattern for chamber 22 | |
6dc7fcdf | 97 | |
8d7dfec2 | 98 | |
6dc7fcdf | 99 | Char_t fLoDecision; // local decision word (4 bits) |
2be06f1e | 100 | |
101 | TArrayI fDigits; // List of digit numbers from which this object was created. | |
b8fdc4dd | 102 | |
103 | ClassDef(AliMUONLocalTrigger,2) // reconstructed Local Trigger object | |
a9e2aefa | 104 | }; |
105 | #endif | |
106 | ||
107 | ||
108 | ||
109 | ||
110 | ||
111 |