3 // @(#)alimdc:$Name$:$Id$
4 // Author: Fons Rademakers 26/11/99
6 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
9 //////////////////////////////////////////////////////////////////////////
13 //////////////////////////////////////////////////////////////////////////
20 class AliRawData : public TObject {
23 AliRawData() { fSize = fBufSize = 0; fRawData = 0; fOwner = kTRUE; }
24 virtual ~AliRawData() { if (fOwner) delete [] fRawData; }
26 inline void SetSize(Int_t size);
27 inline void SetBuffer(void *buf, Int_t size);
28 Int_t GetSize() const { return fSize; }
29 void *GetBuffer() { return fRawData; }
32 Int_t fSize; // number of raw data bytes
33 Int_t fBufSize; //!actual size of fRawData
34 char *fRawData; //[fSize] raw event data
35 Bool_t fOwner; //!if true object owns fRawData buffer
37 AliRawData(const AliRawData &); // not implemented, usage causes
38 AliRawData &operator=(const AliRawData &); // link time error
40 ClassDef(AliRawData,1) // Alice raw event buffer
43 void AliRawData::SetSize(Int_t size)
45 if (size > fBufSize) {
46 if (fOwner) delete [] fRawData;
47 fRawData = new char [size];
54 void AliRawData::SetBuffer(void *buf, Int_t size)
56 if (fOwner) delete [] fRawData;
57 fRawData = (char *) buf;