AliRoot Core  edcc906 (edcc906)
AliMUONBlockHeader.h
Go to the documentation of this file.
1 #ifndef ALIMUONBLOCKHEADER_H
2 #define ALIMUONBLOCKHEADER_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 /*$Id$*/
7 
12 // Author Christian Finck
13 
14 #include <TObject.h>
15 #include <TClonesArray.h>
16 
17 class AliMUONDspHeader;
18 
19 class AliMUONBlockHeader : public TObject {
20 
21 public:
23  AliMUONBlockHeader(TRootIOCtor* dummy);
26 
27  virtual ~AliMUONBlockHeader();
28 
29  //
30  // Block header
31  //
33  Int_t GetDataKey() const {return fDataKey;}
35  Int_t GetTotalLength() const {return fTotalLength;}
37  Int_t GetLength() const {return fLength;}
39  Int_t GetDspId() const {return fDspId;}
41  Int_t GetL0Trigger() const {return fL0Trigger;}
43  Int_t GetMiniEventId() const {return fMiniEventId;}
45  Int_t GetEventId1() const {return fEventId1;}
47  Int_t GetEventId2() const {return fEventId2;}
48 
50  Int_t GetHeaderLength() const {return fgkHeaderLength;}
52  UInt_t GetDefaultDataKey() const {return fgkDefaultDataKey;}
54  UInt_t GetDdlDataKey() const {return fgkDdlDataKey;}
55 
57  void SetDataKey(Int_t d) {fDataKey = d;}
59  void SetTotalLength(Int_t l) {fTotalLength = l;}
61  void SetLength(Int_t l) {fLength = l;}
63  void SetDspId(Int_t d) {fDspId = d;}
65  void SetL0Trigger(Int_t l) {fL0Trigger = l;}
67  void SetMiniEventId(Int_t e) {fMiniEventId = e;}
69  void SetEventId1(Int_t e) {fEventId1 = e;}
71  void SetEventId2(Int_t e) {fEventId2 = e;}
72 
73 
75  Int_t* GetHeader() {return &fDataKey;}
76 
77  void AddDspHeader(const AliMUONDspHeader& dspHeader);
78 
80  TClonesArray* GetDspHeaderArray() const {return fDspHeaderArray;}
81 
83  Int_t GetDspHeaderEntries() const {return fDspHeaderArray->GetEntriesFast();}
84 
87  return (AliMUONDspHeader*)fDspHeaderArray->At(i);}
88 
89  // clear
90  void Clear(Option_t* opt);
91 
92  // print out
93  void Print(Option_t* /*opt*/) const;
94 
95  private:
96 
97  // block header
98  Int_t fDataKey;
99  Int_t fTotalLength;
100  Int_t fLength;
101  Int_t fDspId;
102  Int_t fL0Trigger;
103  Int_t fMiniEventId;
104  Int_t fEventId1;
105  Int_t fEventId2;
106 
107 
108  static const Int_t fgkHeaderLength;
109  static const UInt_t fgkDefaultDataKey;
110  static const UInt_t fgkDdlDataKey;
111 
112  TClonesArray* fDspHeaderArray;
113 
114  ClassDef(AliMUONBlockHeader,3) // MUON block header for Tracker event
115 };
116 #endif
Int_t GetDspHeaderEntries() const
get entries
Int_t GetDspId() const
Return Dsp id.
UInt_t GetDdlDataKey() const
Return data key end word for CRT header.
Int_t fDataKey
Data key word for CRT header.
Int_t GetEventId2() const
Return Event Id in orbit number.
void SetEventId2(Int_t e)
Set Event Id in orbit number.
MUON DSP header for tracker event.
Int_t GetDataKey() const
Return data key word for CRT header.
static const UInt_t fgkDdlDataKey
data key end word for CRT header
Int_t fEventId2
Event Id in orbit number.
Int_t GetLength() const
Return length of raw data.
Int_t fL0Trigger
L0 trigger word.
Int_t GetMiniEventId() const
Return Bunch Crossing for mini-event id (see TDR chapter 8)
Int_t * GetHeader()
Return header.
TClonesArray * fDspHeaderArray
array of block header
AliMUONDspHeader * GetDspHeaderEntry(Int_t i) const
get entry
void Print(Option_t *) const
void SetDspId(Int_t d)
Set Dsp id.
Int_t fTotalLength
total length of block structure (w/o padding word)
Int_t fLength
length of raw data
static const UInt_t fgkDefaultDataKey
default data key word for CRT header
Int_t fEventId1
Event Id in bunch crossing.
Int_t GetHeaderLength() const
Return header length in word.
void SetMiniEventId(Int_t e)
Set Bunch Crossing for mini-event id (see TDR chapter 8)
Int_t GetL0Trigger() const
Return L0 trigger word.
Int_t GetTotalLength() const
Return total length of block structure (w/o padding word)
static const Int_t fgkHeaderLength
header length in word
void AddDspHeader(const AliMUONDspHeader &dspHeader)
void SetTotalLength(Int_t l)
Set total length of block structure (w/o padding word)
void SetDataKey(Int_t d)
Set data key word for CRT header.
MUON block (Crocus CRT) header for tracker event.
AliMUONBlockHeader & operator=(const AliMUONBlockHeader &event)
void SetEventId1(Int_t e)
Set Event Id in bunch crossing.
Int_t fMiniEventId
Bunch Crossing for mini-event id (see TDR chapter 8)
UInt_t GetDefaultDataKey() const
Return default data key word for CRT header.
void SetL0Trigger(Int_t l)
Set L0 trigger word.
TClonesArray * GetDspHeaderArray() const
get TClonesArray
void SetLength(Int_t l)
Set length of raw data.
void Clear(Option_t *opt)
Int_t GetEventId1() const
Return Event Id in bunch crossing.