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