]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIMUONDDLTRACKER_H | |
2 | #define ALIMUONDDLTRACKER_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 | ||
8 | /// \ingroup rec | |
9 | /// \class AliMUONDDLTracker | |
10 | /// \brief MUON DDL tracker | |
11 | ||
12 | #include <TObject.h> | |
13 | #include "AliRawDataHeader.h" | |
14 | ||
15 | ||
16 | class AliMUONDDLTracker : public TObject { | |
17 | ||
18 | public: | |
19 | AliMUONDDLTracker(); | |
20 | virtual ~AliMUONDDLTracker(){;} | |
21 | ||
22 | // Block header | |
23 | Int_t GetTotalBlkLength() const {return fTotalBlkLength;} | |
24 | Int_t GetBlkLength() const {return fBlkLength;} | |
25 | Int_t GetDspId() const {return fDSPId;} | |
26 | Int_t GetBlkTriggerWord(Int_t n) const {return fBlkTriggerWord[n];} | |
27 | Int_t GetPadding() const {return fPadding;} | |
28 | Int_t GetBlkHeaderLength() const {return fgkBlkHeaderLength;} | |
29 | ||
30 | void SetTotalBlkLength(Int_t l) {fTotalBlkLength = l;} | |
31 | void SetBlkLength(Int_t l) {fBlkLength = l;} | |
32 | void SetDSPId(Int_t d) {fDSPId = d;} | |
33 | void SetBlkTriggerWord(Int_t w, Int_t n) {fBlkTriggerWord[n] = w;} | |
34 | ||
35 | // DSP header | |
36 | Int_t GetTotalDspLength() const {return fTotalDspLength;} | |
37 | Int_t GetDspLength() const {return fDspLength;} | |
38 | Int_t GetDspId1() const {return fDSPId1;} | |
39 | Int_t GetDspTriggerWord(Int_t n) const {return fDspTriggerWord[n];} | |
40 | Int_t GetEventWord() const {return fEventWord;} | |
41 | ||
42 | void SetTotalDspLength(Int_t l) {fTotalDspLength = l;} | |
43 | void SetDspLength(Int_t l) {fDspLength = l;} | |
44 | void SetDSPId1(Int_t d) {fDSPId1 = d;} | |
45 | void SetDspTriggerWord(Int_t w, Int_t n) {fDspTriggerWord[n] = w;} | |
46 | void SetEventWord(Int_t w) {fEventWord = w;} | |
47 | Int_t GetDspHeaderLength() const {return fgkDspHeaderLength;} | |
48 | ||
49 | Int_t* GetBlkHeader() {return &fTotalBlkLength;} | |
50 | Int_t* GetDspHeader() {return &fTotalDspLength;} | |
51 | ||
52 | AliRawDataHeader GetHeader(){return fHeader;} | |
53 | Int_t GetHeaderSize() {return sizeof(AliRawDataHeader)/4;} // in words | |
54 | ||
55 | Int_t GetEoD() const {return fgkEndOfDDL;} | |
56 | ||
57 | private: | |
58 | ||
59 | // block header | |
60 | Int_t fTotalBlkLength; // total length of block structure | |
61 | Int_t fBlkLength; // length of raw data | |
62 | Int_t fDSPId; // Dsp id | |
63 | Int_t fBlkTriggerWord[4]; // counter trigger word | |
64 | Int_t fPadding; // padding dummy word for 64 bits transfer | |
65 | static const Int_t fgkBlkHeaderLength; // header length in word | |
66 | ||
67 | // Dsp header | |
68 | Int_t fTotalDspLength; // total length of block structure | |
69 | Int_t fDspLength; // length of raw data | |
70 | Int_t fDSPId1; // Dsp id ?? | |
71 | Int_t fDspTriggerWord[4]; // counter trigger word ? | |
72 | Int_t fEventWord; // nb word odd = 1, even = 0 | |
73 | static const Int_t fgkDspHeaderLength; // header length | |
74 | ||
75 | static const Int_t fgkEndOfDDL; // end of DDL | |
76 | ||
77 | ||
78 | AliRawDataHeader fHeader; // header of DDL | |
79 | ||
80 | ||
81 | ClassDef(AliMUONDDLTracker,1) // MUON DDL Tracker | |
82 | }; | |
83 | #endif |