--- /dev/null
+#ifndef ALITOFRAWDATAFORMAT_H
+#define ALITOFRAWDATAFORMAT_H
+
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+///////////////////////////////////////////////////////////////
+// //
+// This classes provide the TOF raw data bit fields. //
+// //
+///////////////////////////////////////////////////////////////
+
+#include "TROOT.h"
+
+//TRM global header
+class AliTOFTRMGlobalHeader
+{
+ public:
+ UInt_t GetSlotID() {return fSlotID;};
+ UInt_t GetEventWords() {return fEventWords;};
+ UInt_t GetACQBits() {return fACQBits;};
+ UInt_t GetLBit() {return fLBit;};
+ UInt_t GetMBZ() {return fMBZ;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fSlotID: 4;
+ UInt_t fEventWords: 13;
+ UInt_t fACQBits: 2;
+ UInt_t fLBit: 1;
+ UInt_t fMBZ: 8;
+ UInt_t fWordType: 4;
+};
+
+//TRM global trailer
+class AliTOFTRMGlobalTrailer
+{
+ public:
+ UInt_t GetSlotID() {return fSlotID;};
+ UInt_t GetEventCRC() {return fEventCRC;};
+ UInt_t GetEventCounter() {return fEventCounter;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fSlotID: 4;
+ UInt_t fEventCRC: 12;
+ UInt_t fEventCounter: 12;
+ UInt_t fWordType: 4;
+};
+
+//TRM chain header
+class AliTOFTRMChainHeader
+{
+ public:
+ UInt_t GetSlotID() {return fSlotID;};
+ UInt_t GetBunchID() {return fBunchID;};
+ UInt_t GetPB24Temp() {return fPB24Temp;};
+ UInt_t GetPB24ID() {return fPB24ID;};
+ UInt_t GetTSBit() {return fTSBit;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fSlotID: 4;
+ UInt_t fBunchID: 12;
+ UInt_t fPB24Temp: 8;
+ UInt_t fPB24ID: 3;
+ UInt_t fTSBit: 1;
+ UInt_t fWordType: 4;
+};
+
+//TRM chain trailer
+class AliTOFTRMChainTrailer
+{
+ public:
+ UInt_t GetStatus() {return fStatus;};
+ UInt_t GetMBZ() {return fMBZ;};
+ UInt_t GetEventCounter() {return fEventCounter;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fStatus: 4;
+ UInt_t fMBZ: 12;
+ UInt_t fEventCounter: 12;
+ UInt_t fWordType: 4;
+};
+
+//TDC packed hit
+class AliTOFTDCPackedHit
+{
+ public:
+ UInt_t GetHitTime() {return fHitTime;};
+ UInt_t GetTOTWidth() {return fTOTWidth;};
+ UInt_t GetChan() {return fChan;};
+ UInt_t GetTDCID() {return fTDCID;};
+ UInt_t GetEBit() {return fEBit;};
+ UInt_t GetPSBits() {return fPSBits;};
+ UInt_t GetMBO() {return fMBO;};
+ private:
+ UInt_t fHitTime: 13;
+ UInt_t fTOTWidth: 8;
+ UInt_t fChan: 3;
+ UInt_t fTDCID: 4;
+ UInt_t fEBit: 1;
+ UInt_t fPSBits: 2;
+ UInt_t fMBO: 1;
+};
+
+//TDC unpacked hit
+class AliTOFTDCUnpackedHit
+{
+ public:
+ UInt_t GetHitTime() {return fHitTime;};
+ UInt_t GetChan() {return fChan;};
+ UInt_t GetTDCID() {return fTDCID;};
+ UInt_t GetEBit() {return fEBit;};
+ UInt_t GetPSBits() {return fPSBits;};
+ UInt_t GetMBO() {return fMBO;};
+ private:
+ UInt_t fHitTime: 21;
+ UInt_t fChan: 3;
+ UInt_t fTDCID: 4;
+ UInt_t fEBit: 1;
+ UInt_t fPSBits: 2;
+ UInt_t fMBO: 1;
+};
+
+//TRM TDC error
+class AliTOFTRMTDCError
+{
+ public:
+ UInt_t GetErrorFlags() {return fErrorFlags;};
+ UInt_t GetMBZ() {return fMBZ;};
+ UInt_t GetTDCID () {return fTDCID;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fErrorFlags: 15;
+ UInt_t fMBZ: 9;
+ UInt_t fTDCID: 4;
+ UInt_t fWordType: 4;
+};
+
+//TRM diagnostic error word 1
+class AliTOFTRMDiagnosticErrorWord1
+{
+ public:
+ UInt_t GetFaultChipFlagID() {return fFaultChipFlagID;};
+ UInt_t GetCBit() {return fCBit;};
+ UInt_t GetMBZ() {return fMBZ;};
+ UInt_t GetMBO() {return fMBO;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fFaultChipFlagID: 15;
+ UInt_t fCBit: 1;
+ UInt_t fMBZ: 8;
+ UInt_t fMBO: 4;
+ UInt_t fWordType: 4;
+};
+
+//TRM diagnostic error word 2
+class AliTOFTRMDiagnosticErrorWord2
+{
+ public:
+ UInt_t GetJtagErrorCode() {return fJtagErrorCode;};
+ UInt_t GetTDCID() {return fTDCID;};
+ UInt_t GetCBit() {return fCBit;};
+ UInt_t GetMBZ() {return fMBZ;};
+ UInt_t GetMBO() {return fMBO;};
+ UInt_t GetWordType() {return fWordType;};
+ private:
+ UInt_t fJtagErrorCode: 11;
+ UInt_t fTDCID: 4;
+ UInt_t fCBit: 1;
+ UInt_t fMBZ: 8;
+ UInt_t fMBO: 4;
+ UInt_t fWordType: 4;
+};
+
+#endif /* ALITOFRAWDATAFORMAT_H */