]>
Commit | Line | Data |
---|---|---|
18de460b | 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> | |
840f6973 | 17 | using std::fstream; |
18de460b | 18 | |
19 | class AliFstream : public TObject { | |
20 | public: | |
21 | AliFstream(); | |
22 | AliFstream(const char *fileName); | |
18de460b | 23 | virtual ~AliFstream(); |
24 | ||
41008432 | 25 | void Seekp(UInt_t position); |
26 | UInt_t Tellp(); | |
18de460b | 27 | void WriteBuffer(const char *buffer, UInt_t size, Bool_t force = kFALSE); |
28 | ||
29 | private: | |
30 | ||
f3c1e83c | 31 | AliFstream(const AliFstream &source); |
32 | AliFstream &operator =(const AliFstream& source); | |
33 | ||
e3adf4cb | 34 | UInt_t Swap(UInt_t x); |
35 | ||
18de460b | 36 | fstream *fFile; // Output file stream |
e3adf4cb | 37 | UInt_t *fBuffer; // Pointer to the internal buffer |
18de460b | 38 | UInt_t fBufferSize; // Internal buffer size |
18de460b | 39 | |
40 | ClassDef(AliFstream,0) | |
41 | }; | |
42 | ||
43 | #endif |