21 #include <Riostream.h>
53 fBufSize(43*fgkManuNofChannels),
56 fData(new UInt_t[fBufSize]),
108 UInt_t* newData =
new UInt_t[
fBufSize];
109 for (Int_t i = 0; i <
fLength; i++)
110 newData[i] =
fData[i];
118 fDataKey(event.fDataKey),
119 fTotalLength(event.fTotalLength),
120 fLength(event.fLength),
121 fBusPatchId(event.fBusPatchId),
122 fBufSize(event.fBufSize),
123 fData(new UInt_t[event.fBufSize]),
124 fDspId(event.fDspId),
131 for (
int i = 0; i <
event.fBufSize; i++)
141 if (
this == &event)
return *
this;
152 fData =
new UInt_t[
event.fBufSize];
153 for (
int i = 0; i <
event.fLength; i++)
166 return (
fBusPatchId > event->GetBusPatchId()) ? 1 : -1;
185 AliError(
"Index outside limits.");
195 if ( n>=0 && n<
fLength )
return (Char_t)(
fData[n] >> 31) & 0x1;
197 AliError(
"Index outside limits.");
207 if ( n>=0 && n<
fLength )
return (UShort_t)(
fData[n] >> 18) & 0x7FF;
209 AliError(
"Index outside limits.");
219 if ( n>=0 && n<
fLength )
return (Char_t)(
fData[n] >> 12) & 0x3F;
221 AliError(
"Index outside limits.");
231 if ( n>=0 && n<
fLength )
return (UShort_t)(
fData[n] & 0xFFF);
233 AliError(
"Index outside limits.");
242 cout <<
"Bus patch info" << endl;
243 cout <<
"DataKey: " <<
fDataKey << endl;
245 cout <<
"fLength: " <<
fLength << endl;
247 cout <<
"fBufSize: " <<
fBufSize << endl;
249 if (strstr(opt,
"all")) {
250 for (Int_t i = 0; i <
fLength; ++i)
251 cout <<
"Data["<< i <<
"] = " <<
fData[i] << endl;
Int_t fLength
length of raw data
UShort_t GetCharge(Int_t n) const
Int_t fBlkId
block numer for monitoring
Int_t fBufSize
initial size for data array
UInt_t * GetData() const
Return data.
Int_t fTotalLength
total length of buspatch structure
static const Int_t fgkHeaderLength
header length in word
Int_t fDataKey
Data key word for bus patch header.
void Clear(Option_t *opt)
void Print(Option_t *opt) const
Int_t Compare(const TObject *obj) const
AliMUONBusStruct & operator=(const AliMUONBusStruct &rhs)
UShort_t GetManuId(Int_t n) const
Int_t fDspId
Dsp number for monitoring.
Int_t fBusPatchId
bus patch id
Char_t GetParity(Int_t n) const
void SetAlloc(Int_t size)
void ResizeData(Int_t size=0)
virtual ~AliMUONBusStruct()
UChar_t GetChannelId(Int_t n) const
MUON buspatch structure for tracker.