struct Core::Platform::IFileStream

#include <coreplatformfilesystem.h>

struct IFileStream: public Core::IO::Stream
{
    // methods

    virtual bool open(CStringPtr filename, int mode = IO::kReadMode|IO::kWriteMode) = 0;
    virtual bool create(CStringPtr filename) = 0;
    virtual void close() = 0;
    virtual bool isOpen() const = 0;
    virtual int64 getFileSize() = 0;
};

// direct descendants

class FileStreamStub;
class PosixFileStream;

Inherited Members

public:
    // fields

    static const InterfaceID kIID = FOUR_CHAR_ID('B','S','t','r');

    // methods

    virtual int64 getPosition() = 0;
    virtual int64 setPosition(int64 pos, int mode) = 0;
    virtual int readBytes(void* buffer, int size) = 0;
    virtual int writeBytes(const void* buffer, int size) = 0;
    virtual BufferProvider* getBufferProvider();