2
0

FileHandleStream.h 649 B

1234567891011121314151617181920212223242526272829303132333435
  1. #pragma once
  2. #include "Common.h"
  3. #include "DataStream.h"
  4. NS_BF_BEGIN;
  5. class FileHandleStream : public DataStream
  6. {
  7. public:
  8. HANDLE mFileHandle;
  9. uint8* mCacheBuffer;
  10. int mCacheReadPos;
  11. int mCacheSize;
  12. int mVFilePos;
  13. public:
  14. FileHandleStream();
  15. ~FileHandleStream();
  16. void SetCacheSize(int size);
  17. bool Eof() override;
  18. int GetSize() override;
  19. using DataStream::Read;
  20. int Read(void* ptr, int size) override;
  21. using DataStream::Write;
  22. int Write(void* ptr, int size) override;
  23. int GetPos() override;
  24. void Seek(int size) override;
  25. void SetPos(int pos) override;
  26. };
  27. NS_BF_END;