#ifndef ALIRAWEVENT_H
#define ALIRAWEVENT_H
-// @(#)alimdc:$Name$:$Id$
+// @(#) $Id$
// Author: Fons Rademakers 26/11/99
// Updated: Dario Favretto 15/04/2003
#include <TObject.h>
#endif
+#ifndef ROOT_TObjArray
+#include <TObjArray.h>
+#endif
+
// Forward class declarations
-class AliRawEventHeader;
-class AliRawEquipmentHeader;
-class AliRawData;
+class AliRawEventHeaderBase;
+#include "AliRawVEvent.h"
-class AliRawEvent : public TObject {
+class AliRawEvent : public AliRawVEvent {
public:
AliRawEvent();
virtual ~AliRawEvent();
- AliRawEventHeader *GetHeader();
- AliRawEquipmentHeader *GetEquipmentHeader();
- AliRawData *GetRawData();
- Int_t GetNSubEvents() const { return fNSubEvents; }
- AliRawEvent *NextSubEvent();
- AliRawEvent *GetSubEvent(Int_t index) const;
- void Reset();
+ virtual AliRawEventHeaderBase *GetHeader();
+ virtual Int_t GetNEquipments() const { return fNEquipments; }
+ virtual AliRawVEquipment *GetEquipment(Int_t index) const;
+ virtual Int_t GetNSubEvents() const { return fNSubEvents; }
+ virtual AliRawVEvent *GetSubEvent(Int_t index);
private:
+ Int_t fNEquipments; // number of valid equipments
Int_t fNSubEvents; // number of valid sub-events
- AliRawEventHeader *fEvtHdr; // event header object
- AliRawEquipmentHeader *fEqpHdr; // equipment header
- AliRawData *fRawData; // raw data container
+ AliRawEventHeaderBase *fEvtHdr; // event header object
+ TObjArray *fEquipments; // AliRawEquipment's
TObjArray *fSubEvents; // sub AliRawEvent's
AliRawEvent(const AliRawEvent& rawEvent);
AliRawEvent& operator = (const AliRawEvent& rawEvent);
- ClassDef(AliRawEvent,1) // ALICE raw event object
+ ClassDef(AliRawEvent,3) // ALICE raw event object
};
#endif