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