|
IrrlichtEngine
|
00001 // Copyright (C) 2002-2011 Nikolaus Gebhardt 00002 // This file is part of the "Irrlicht Engine". 00003 // For conditions of distribution and use, see copyright notice in irrlicht.h 00004 00005 #ifndef __I_WRITE_FILE_H_INCLUDED__ 00006 #define __I_WRITE_FILE_H_INCLUDED__ 00007 00008 #include "IReferenceCounted.h" 00009 #include "path.h" 00010 00011 namespace irr 00012 { 00013 namespace io 00014 { 00015 00017 class IWriteFile : public virtual IReferenceCounted 00018 { 00019 public: 00021 00024 virtual s32 write(const void* buffer, u32 sizeToWrite) = 0; 00025 00027 00032 virtual bool seek(long finalPos, bool relativeMovement = false) = 0; 00033 00035 00036 virtual long getPos() const = 0; 00037 00039 00040 virtual const path& getFileName() const = 0; 00041 }; 00042 00044 IWriteFile* createWriteFile(const io::path& fileName, bool append); 00045 00046 } // end namespace io 00047 } // end namespace irr 00048 00049 #endif 00050