1 #ifndef ALIMUONLOCALTRIGGER_H
2 #define ALIMUONLOCALTRIGGER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
8 // Revision of includes 07/05/2004
11 /// \class AliMUONLocalTrigger
12 /// \brief Reconstructed Local Trigger object
17 class AliMUONLocalTrigger : public TObject {
19 AliMUONLocalTrigger();
20 AliMUONLocalTrigger(const AliMUONLocalTrigger& rhs); // copy constructor !
21 AliMUONLocalTrigger(const Int_t* localtr, const TArrayI& digits);
22 virtual ~AliMUONLocalTrigger(){;}
23 AliMUONLocalTrigger& operator=(const AliMUONLocalTrigger& rhs);
26 Int_t LoCircuit() const {return fLoCircuit;}
27 Int_t LoStripX() const {return fLoStripX;}
28 Int_t LoDev() const {return fLoDev;}
29 Int_t LoStripY() const {return fLoStripY;}
30 Int_t LoLpt() const {return fLoLpt;}
31 Int_t LoHpt() const {return fLoHpt;}
32 Int_t LoApt() const {return fLoApt;}
35 UShort_t GetX1Pattern() const {return fX1Pattern;}
36 UShort_t GetX2Pattern() const {return fX2Pattern;}
37 UShort_t GetX3Pattern() const {return fX3Pattern;}
38 UShort_t GetX4Pattern() const {return fX4Pattern;}
40 UShort_t GetY1Pattern() const {return fY1Pattern;}
41 UShort_t GetY2Pattern() const {return fY2Pattern;}
42 UShort_t GetY3Pattern() const {return fY3Pattern;}
43 UShort_t GetY4Pattern() const {return fY4Pattern;}
45 Char_t GetLoDecision();
48 void SetLoCircuit(Int_t loCir) {fLoCircuit = loCir;}
49 void SetLoStripX(Int_t loStrX) {fLoStripX = loStrX;}
50 void SetLoDev(Int_t loDev) {fLoDev = loDev;}
51 void SetLoStripY(Int_t loStrY) {fLoStripY = loStrY;}
52 void SetLoLpt(Int_t loLpt) {fLoLpt = loLpt;}
53 void SetLoHpt(Int_t loHpt) {fLoHpt = loHpt;}
54 void SetLoApt(Int_t loApt) {fLoApt = loApt;}
56 void SetX1Pattern(UShort_t pat) {fX1Pattern = pat;}
57 void SetX2Pattern(UShort_t pat) {fX2Pattern = pat;}
58 void SetX3Pattern(UShort_t pat) {fX3Pattern = pat;}
59 void SetX4Pattern(UShort_t pat) {fX4Pattern = pat;}
61 void SetY1Pattern(UShort_t pat) {fY1Pattern = pat;}
62 void SetY2Pattern(UShort_t pat) {fY2Pattern = pat;}
63 void SetY3Pattern(UShort_t pat) {fY3Pattern = pat;}
64 void SetY4Pattern(UShort_t pat) {fY4Pattern = pat;}
67 Int_t NumberOfDigits() const { return fDigits.GetSize(); }
68 Int_t GetDigitNumber(Int_t i) const { return fDigits[i]; }
69 void GetDigit(Int_t i, Int_t& chamber, Int_t& cathode, Int_t& digit) const;
71 static Int_t EncodeDigitNumber(Int_t chamber, Int_t cathode, Int_t digit);
72 static void DecodeDigitNumber(Int_t digitnumber, Int_t& chamber, Int_t& cathode, Int_t& digit);
75 Int_t fLoCircuit; // circuit number
76 Int_t fLoStripX; // X strip in MT11
77 Int_t fLoDev; // deviation
78 Int_t fLoStripY; // Y strip in MT11
79 Int_t fLoLpt; // Low pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef
80 Int_t fLoHpt; // High pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef
81 Int_t fLoApt; // All pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef
83 UShort_t fX1Pattern; // X strip pattern for chamber 11
84 UShort_t fX2Pattern; // X strip pattern for chamber 12
85 UShort_t fX3Pattern; // X strip pattern for chamber 21
86 UShort_t fX4Pattern; // X strip pattern for chamber 22
88 UShort_t fY1Pattern; // Y strip pattern for chamber 11
89 UShort_t fY2Pattern; // Y strip pattern for chamber 12
90 UShort_t fY3Pattern; // Y strip pattern for chamber 21
91 UShort_t fY4Pattern; // Y strip pattern for chamber 22
93 Char_t fLoDecision; // local decision word (4 bits)
95 TArrayI fDigits; // List of digit numbers from which this object was created.
97 ClassDef(AliMUONLocalTrigger,2) // reconstructed Local Trigger object