1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
18 #include "AliMUONLocalStruct.h"
20 //-----------------------------------------------------------------------------
21 /// \class AliMUONLocalStruct
22 /// Local structure for trigger raw data.
23 /// The structure includes the information
24 /// about the x,y position of the 4 detection planes,
25 /// the trigger word (address, local decision, y trigger, y position, x deviation,
28 /// \author Christian Finck
29 //-----------------------------------------------------------------------------
32 ClassImp(AliMUONLocalStruct)
35 const Int_t AliMUONLocalStruct::fgkLength = 5;
36 const Int_t AliMUONLocalStruct::fgkScalerLength = 45;
37 const UInt_t AliMUONLocalStruct::fgkEndOfLocal = 0xCAFEFADE;
38 const UInt_t AliMUONLocalStruct::fgkDisableWord = 0x10CADEAD;
39 //___________________________________________
40 AliMUONLocalStruct::AliMUONLocalStruct()
59 for (Int_t i = 0; i < 5; i++)
62 for (Int_t i = 0; i < 8*4; i++)
68 //___________________________________________
69 AliMUONLocalStruct::AliMUONLocalStruct(const AliMUONLocalStruct& event)
74 fLPtNTrig(event.fLPtNTrig),
75 fHPtNTrig(event.fHPtNTrig),
76 fLPtRTrig(event.fLPtRTrig),
77 fHPtRTrig(event.fHPtRTrig),
78 fLPtLTrig(event.fLPtLTrig),
79 fHPtLTrig(event.fHPtLTrig),
80 fLPtSTrig(event.fLPtSTrig),
81 fHPtSTrig(event.fHPtSTrig),
88 for (Int_t i = 0; i < 5; i++)
89 fData[i] = event.fData[i];
91 for (Int_t i = 0; i < 8*4; i++)
92 fScaler[i] = event.fScaler[i];
97 //___________________________________________
98 AliMUONLocalStruct::~AliMUONLocalStruct()
103 //___________________________________________
105 AliMUONLocalStruct::operator=(const AliMUONLocalStruct& event)
108 /// assignment operator
111 if (this == &event) return *this;
116 fLPtNTrig = event.fLPtNTrig;
117 fHPtNTrig = event.fHPtNTrig;
118 fLPtRTrig = event.fLPtRTrig;
119 fHPtRTrig = event.fHPtRTrig;
120 fLPtLTrig = event.fLPtLTrig;
121 fHPtLTrig = event.fHPtLTrig;
122 fLPtSTrig = event.fLPtSTrig;
123 fHPtSTrig = event.fHPtSTrig;
125 fReset = event.fReset;
127 for (Int_t i = 0; i < 5; i++)
128 fData[i] = event.fData[i];
130 for (Int_t i = 0; i < 8*4; i++)
131 fScaler[i] = event.fScaler[i];
136 //___________________________________________
137 void AliMUONLocalStruct::GetXPattern(TArrayS& array) const
139 /// return array of X pattern
140 Short_t vec[4] = {GetX1(), GetX2(), GetX3(), GetX4()};
144 //___________________________________________
145 void AliMUONLocalStruct::GetYPattern(TArrayS& array) const
147 /// return array of Y pattern
148 Short_t vec[4] = {GetY1(), GetY2(), GetY3(), GetY4()};
152 //___________________________________________
153 void AliMUONLocalStruct::SetScalersNumbers()
155 /// set numbers for scaler events for local structure
156 /// crasy numbers for scaler words, while no beam is coming
173 for (Int_t i = 0; i < 8*4; i++)