27 struct WriteBufferInfo {
37 WriteBufferInfo& operator=(WriteBufferInfo
const&);
38 WriteBufferInfo(WriteBufferInfo
const&);
53 FileImpl& operator=(FileImpl
const&);
54 FileImpl(FileImpl
const&);
62 virtual ::Core::PathBuffer<::std::string> _getPath()
const = 0;
64 virtual uint64 _getBlockSize()
const = 0;
66 virtual bool _isOpen() = 0;
68 virtual ::Core::Result _close() = 0;
70 virtual ::Core::Result _read(
void*, uint64, uint64*) = 0;
72 virtual ::Core::Result _readExactly(
void*, uint64) = 0;
74 virtual ::Core::Result _skip(uint64) = 0;
76 virtual ::Core::Result _readAtPosition(uint64,
void*, uint64, uint64*) = 0;
78 virtual ::Core::Result _getPosition(uint64*) = 0;
80 virtual ::Core::Result _setPosition(uint64) = 0;
82 virtual ::Core::Result _write(
void const*, uint64) = 0;
84 virtual ::Core::Result _flush() = 0;
86 virtual ::Core::Result _getSize(uint64*) = 0;
88 virtual ::Core::Result _getRemainingSize(uint64*) = 0;
106 MCNAPI ::Core::Result
read(
void* buf, uint64 numBytes, uint64* pNumBytesRead);
108 MCNAPI ::Core::Result
readAtPosition(uint64 position,
void* pBuf, uint64 numBytes, uint64* pNumBytesRead);
114 MCNAPI ::Core::Result
skip(uint64 numBytes);
116 MCNAPI ::Core::Result
write(
void const* pBuf, uint64 numBytes);
122 MCNAPI static ::std::vector<::Core::FileImpl*>&
sAllFiles();