]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliFstream.h
Fixing in/out tags in documentation
[u/mrichter/AliRoot.git] / STEER / AliFstream.h
1 #ifndef ALIFSTREAM_H
2 #define ALIFSTREAM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 //-------------------------------------------------------------------------
7 // This is the class which is to be used during the writing of
8 // simulated raw data (DDL files format).
9 // It is using the root functionality in order to deal correctly
10 // with little/big endian issue. By convention the detector raw
11 // data payload is stored always with little endian (this corresponds
12 // to the real life situation when the detector data is coming from
13 // the hardware).
14 //-------------------------------------------------------------------------
15
16 #include <TObject.h>
17
18 class AliFstream : public TObject {
19 public:
20   AliFstream();
21   AliFstream(const char *fileName);
22   virtual ~AliFstream();
23
24   void   Seekp(UInt_t position);
25   UInt_t Tellp();
26   void   WriteBuffer(const char *buffer, UInt_t size, Bool_t force = kFALSE);
27
28 private:
29
30   AliFstream(const AliFstream &source);
31   AliFstream &operator =(const AliFstream& source);
32
33   UInt_t Swap(UInt_t x);
34
35   fstream *fFile;       // Output file stream
36   UInt_t  *fBuffer;     // Pointer to the internal buffer
37   UInt_t   fBufferSize; // Internal buffer size
38
39   ClassDef(AliFstream,0)
40 };
41
42 #endif