]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONLocalTrigger.h
Geometry builder classes moved from base to sim.
[u/mrichter/AliRoot.git] / MUON / AliMUONLocalTrigger.h
... / ...
CommitLineData
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
18class AliMUONLocalStruct;
19
20class 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 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;}
36
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
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
69 void SetLocalStruct(Int_t loCircuit, AliMUONLocalStruct& localStruct);
70
71 // data link
72 Int_t NumberOfDigits() const { return fDigits.GetSize(); }
73 Int_t GetDigitNumber(Int_t i) const { return fDigits[i]; }
74 void GetDigit(Int_t i, Int_t& chamber, Int_t& cathode, Int_t& digit) const;
75
76 static Int_t EncodeDigitNumber(Int_t chamber, Int_t cathode, Int_t digit);
77 static void DecodeDigitNumber(Int_t digitnumber, Int_t& chamber, Int_t& cathode, Int_t& digit);
78
79 virtual void Print(Option_t* opt="") const;
80
81private:
82 Int_t fLoCircuit; ///< Circuit number
83 Int_t fLoStripX; ///< X strip in MT11
84 Int_t fLoDev; ///< Deviation
85 Int_t fLoStripY; ///< Y strip in MT11
86 Int_t fLoLpt; ///< Low pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef
87 Int_t fLoHpt; ///< High pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef
88 Int_t fLoApt; ///< All pt 0 : nothing, 1 : Minus, 2 : Plus, 3 : Undef
89
90 UShort_t fX1Pattern; ///< X strip pattern for chamber 11
91 UShort_t fX2Pattern; ///< X strip pattern for chamber 12
92 UShort_t fX3Pattern; ///< X strip pattern for chamber 21
93 UShort_t fX4Pattern; ///< X strip pattern for chamber 22
94
95 UShort_t fY1Pattern; ///< Y strip pattern for chamber 11
96 UShort_t fY2Pattern; ///< Y strip pattern for chamber 12
97 UShort_t fY3Pattern; ///< Y strip pattern for chamber 21
98 UShort_t fY4Pattern; ///< Y strip pattern for chamber 22
99
100
101 Char_t fLoDecision; ///< Local decision word (4 bits)
102
103 TArrayI fDigits; ///< List of digit numbers from which this object was created.
104
105 ClassDef(AliMUONLocalTrigger,2) // reconstructed Local Trigger object
106};
107#endif
108
109
110
111
112
113