]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCMonitorDateFormat.h
The package was overwriting the rootcint flags. This was fixed by applying the necess...
[u/mrichter/AliRoot.git] / TPC / AliTPCMonitorDateFormat.h
1 #ifndef ALITPCMONITORDATEFORMAT_H
2 #define ALITPCMONITORDATEFORMAT_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
9
10 ////////////////////////////////////////////////////////////////////////
11 //
12 // AliTPCMonitorDateFormat class
13 //
14 // Class for decoding and reading raw data headers in DATE format
15 // 
16 // Authors: Roland Bramm, 
17 //          Stefan Kniege, IKF, Frankfurt
18 //       
19 /////////////////////////////////////////////////////////////////////////
20
21 struct eventHeaderStruct;
22 struct equipmentHeaderStruct;
23
24 #define long32 int
25 #include "TNamed.h"
26 using namespace std;
27
28 class AliTPCMonitorDateFormat : public TNamed {
29  public:
30     AliTPCMonitorDateFormat(Char_t* data);
31     ~AliTPCMonitorDateFormat();
32
33     //Super Event Header
34     Int_t   GetEventSize();
35     Int_t   GetEventHeaderSize();
36     Int_t   GetEventHeaderBaseSize();
37     Int_t   GetEventID();
38     Int_t   GetEventLDC();
39     Int_t   GetEventGDC();
40
41     Int_t   GetEventRunID();
42     Int_t   GetEventVersion();
43     Int_t   GetEventVersionMajor();
44     Int_t   GetEventVersionMinor();
45     Bool_t  IsEventSuperEvent();
46     Bool_t  IsEventStartOfRun();
47     Bool_t  IsEventEndOfRun();
48     Bool_t  IsEventPhysicsEvent();
49     Bool_t  IsEventSwapped();
50     Bool_t  IsEventWrongEndian();
51  
52     //Sub Event Header
53     void    GotoSubEventHeader();
54     void    GotoNextSubEventHeader();
55     Bool_t  IsLastSubEventHeader();
56
57     Int_t   GetSubEventSize();
58     Int_t   GetSubEventHeaderSize();
59     Int_t   GetSubEventLDC();
60     Int_t   GetSubEventGDC();
61
62     Bool_t  IsSubEventSuperEvent();
63     Bool_t  IsSubEventStartOfRun();
64     Bool_t  IsSubEventEndOfRun();
65     Bool_t  IsSubEventPhysicsEvent();
66
67     //Eqipments
68     void    GotoFirstEquipment();
69     void    GotoNextEquipment();
70     Bool_t  IsLastEquipment();
71
72     Int_t   GetEquipmentSize();
73     Int_t   GetEquipmentType();
74     Int_t   GetEquipmentID();
75     Int_t*  GetEquipmentTypeAttribute();
76     Int_t   GetEquipmentBasicSize();
77     Int_t   GetEquipmentHeaderSize();
78     Int_t   GetPayloadSize();
79
80     //DATA
81     Char_t* GetFirstDataPointer();
82     Int_t   GetPosition();
83     Int_t   GetPositionSubEvent();
84     
85  private:
86     Char_t*                       fdataPtr;       // pointer to data array (start, will not be changed in event) 
87     Char_t*                       fsubEventPtr;   // pointer to SubEvent
88     Char_t*                       fcurrentPtr;    // pointer to current data position (header or data)
89     eventHeaderStruct*     event;          // event and
90     eventHeaderStruct*     subEvent;       // subevent structure
91     equipmentHeaderStruct* equipment;      // equipmemnt structure
92   
93     ClassDef(AliTPCMonitorDateFormat,1);
94 };
95
96 #endif
97