mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-07 19:18:19 +02:00
35 lines
No EOL
630 B
C++
35 lines
No EOL
630 B
C++
#pragma once
|
|
|
|
#include "DataStream.h"
|
|
|
|
NS_BF_BEGIN
|
|
|
|
class CachedDataStream : public DataStream
|
|
{
|
|
public:
|
|
const static int CHUNK_SIZE = 8192;
|
|
|
|
DataStream* mStream;
|
|
uint8 mChunk[CHUNK_SIZE];
|
|
|
|
uint8* mDataPtr;
|
|
uint8* mDataEnd;
|
|
|
|
public:
|
|
void Flush();
|
|
|
|
public:
|
|
CachedDataStream(DataStream* stream);
|
|
~CachedDataStream();
|
|
|
|
virtual bool Eof() override;
|
|
virtual int GetSize() override;
|
|
virtual int Read(void* ptr, int size) override;
|
|
virtual int Write(void* ptr, int size) override;
|
|
|
|
virtual int GetPos() override;
|
|
virtual void Seek(int size) override;
|
|
virtual void SetPos(int pos) override;
|
|
};
|
|
|
|
NS_BF_END |