22 #ifndef LASTEXPRESS_CVCRFILE_H 23 #define LASTEXPRESS_CVCRFILE_H 25 #include "lastexpress/lastexpress.h" 26 #include "lastexpress/shared.h" 29 class MemorySeekableReadWriteStream;
30 class SeekableReadStream;
37 #define CVCRMODE_RWB 2 44 int32 lastIsTemporary;
56 int32 latestGameEvent;
66 bool open(
const char *filename,
int mode);
67 uint32 read(
void *dstBuf, uint32 elementSize, uint32 elementCount,
bool forceSimpleReadOnRle,
bool checkSize);
68 uint32 write(
void *srcBuf, uint32 elementSize, uint32 elementCount,
bool forceSimpleReadOnRle);
69 uint32 readRLE(
void *dstBuf, uint32 elementSize, uint32 elementCount);
70 uint32 writeRLE(
void *srcBuf, uint32 elementSize, uint32 elementCount);
71 void writeToRLEBuffer(uint8 operation, uint8 flag);
73 uint32 seek(int32 offset,
int mode);
77 bool fileIsOpen() {
return _virtualFileIsOpen; }
83 bool _virtualFileIsOpen =
false;
84 uint32 _virtualFileSize = 0;
85 uint32 _rwStreamSize = 0;
86 uint8 _rleDstBuf[256];
87 int32 _rleBufferPosition = -1;
91 int32 _bytesProcessed = 0;
98 #endif // LASTEXPRESS_CVCRFILE_H
Definition: cvcrfile.h:61
Definition: lastexpress.h:523
Definition: memstream.h:394
Definition: algorithm.h:29