| Irrlicht 3D Engine |

IFileList.h
Go to the documentation of this file.

    00001 // Copyright (C) 2002-2012 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_FILE_LIST_H_INCLUDED__
    00006 #define __I_FILE_LIST_H_INCLUDED__
    00007
    00008 #include "IReferenceCounted.h"
    00009 #include "path.h"
    00010
    00011 namespace irr
    00012 {
    00013 namespace io
    00014 {
    00015
    00017
    00019 class IFileList : public virtual IReferenceCounted
    00020 {
    00021 public:
    00023
    00024     virtual u32 getFileCount() const = 0;
    00025
    00027
    00031     virtual const io::path& getFileName(u32 index) const = 0;
    00032
    00034
    00037     virtual const io::path& getFullFileName(u32 index) const = 0;
    00038
    00040
    00043     virtual u32 getFileSize(u32 index) const = 0;
    00044
    00046
    00049     virtual u32 getFileOffset(u32 index) const = 0;
    00050
    00052
    00058     virtual u32 getID(u32 index) const = 0;
    00059
    00061
    00064     virtual bool isDirectory(u32 index) const = 0;
    00065
    00067
    00072     virtual s32 findFile(const io::path& filename, bool isFolder=false) const = 0;
    00073
    00075     virtual const io::path& getPath() const = 0;
    00076
    00078
    00083     virtual u32 addItem(const io::path& fullPath, u32 offset, u32 size, bool isDirectory, u32 id=0) = 0;
    00084
    00086     virtual void sort() = 0;
    00087 };
    00088
    00089 } // end namespace irr
    00090 } // end namespace io
    00091
    00092
    00093 #endif
    00094