]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/Monitor/AliTPCMonitorDateFormat.h
Move Monitor event display classes to extra subfolder
[u/mrichter/AliRoot.git] / TPC / Monitor / AliTPCMonitorDateFormat.h
diff --git a/TPC/Monitor/AliTPCMonitorDateFormat.h b/TPC/Monitor/AliTPCMonitorDateFormat.h
new file mode 100755 (executable)
index 0000000..2c33460
--- /dev/null
@@ -0,0 +1,99 @@
+#ifndef ALITPCMONITORDATEFORMAT_H
+#define ALITPCMONITORDATEFORMAT_H
+
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
+/* $Id$ */
+
+
+////////////////////////////////////////////////////////////////////////
+////
+//// AliTPCMonitorDateFormat class
+////
+//// Class for decoding raw data headers in DATE format
+//// 
+//// Authors: Roland Bramm, 
+////          Stefan Kniege, IKF, Frankfurt
+////       
+/////////////////////////////////////////////////////////////////////////
+
+struct eventHeaderStruct;
+struct equipmentHeaderStruct;
+
+#define long32 int
+#include "TNamed.h"
+using namespace std;
+
+class AliTPCMonitorDateFormat : public TNamed {
+ public:
+    AliTPCMonitorDateFormat(Char_t* data);
+    AliTPCMonitorDateFormat(const  AliTPCMonitorDateFormat &dateformat);
+    AliTPCMonitorDateFormat& operator= (const AliTPCMonitorDateFormat& dateformat); 
+    ~AliTPCMonitorDateFormat(); 
+
+    //Super Event Header
+    Int_t   GetEventSize() const;
+    Int_t   GetEventHeaderSize() const;
+    Int_t   GetEventHeaderBaseSize() const; 
+    Int_t   GetEventID() const;
+    Int_t   GetEventLDC() const;
+    Int_t   GetEventGDC() const;
+
+    Int_t   GetEventRunID() const;
+    Int_t   GetEventVersion() const;
+    Int_t   GetEventVersionMajor() const;
+    Int_t   GetEventVersionMinor() const;
+    Bool_t  IsEventSuperEvent() const;
+    Bool_t  IsEventStartOfRun() const;
+    Bool_t  IsEventEndOfRun() const;
+    Bool_t  IsEventPhysicsEvent() const;
+    Bool_t  IsEventSwapped() const;
+    Bool_t  IsEventWrongEndian() const;
+    //Sub Event Header
+    void    GotoSubEventHeader();
+    void    GotoNextSubEventHeader();
+    Bool_t  IsLastSubEventHeader() const;
+
+    Int_t   GetSubEventSize() const;
+    Int_t   GetSubEventHeaderSize() const;
+    Int_t   GetSubEventLDC() const;
+    Int_t   GetSubEventGDC() const;
+
+    Bool_t  IsSubEventSuperEvent();
+    Bool_t  IsSubEventStartOfRun() const;
+    Bool_t  IsSubEventEndOfRun() const;
+    Bool_t  IsSubEventPhysicsEvent() const;
+
+    //Eqipments
+    void    GotoFirstEquipment();
+    void    GotoNextEquipment();
+    Bool_t  IsLastEquipment() const;
+
+    Int_t   GetEquipmentSize() const;
+    Int_t   GetEquipmentType() const;
+    Int_t   GetEquipmentID() const; 
+    Int_t*  GetEquipmentTypeAttribute();
+    Int_t   GetEquipmentBasicSize()  const;
+    Int_t   GetEquipmentHeaderSize() const; 
+    Int_t   GetPayloadSize() const;
+
+    //DATA
+    Char_t* GetFirstDataPointer();
+    Int_t   GetPosition() const;
+    Int_t   GetPositionSubEvent() const;
+    
+ private:
+    Char_t*                fdataPtr;       // pointer to data array (start, will not be changed in event) 
+    Char_t*                fsubEventPtr;   // pointer to SubEvent
+    Char_t*                fcurrentPtr;    // pointer to current data position (header or data)
+    eventHeaderStruct*     fevent;         // event and
+    eventHeaderStruct*     fsubEvent;      // subevent structure
+    equipmentHeaderStruct* fequipment;     // equipmemnt structure
+  
+    ClassDef(AliTPCMonitorDateFormat,1);
+};
+
+#endif