| Irrlicht 3D Engine |

Public Member Functions
irr::io::IFileList Class Reference

Provides a list of files and folders. More...

`#include <IFileList.h>`

Inheritance diagram for irr::io::IFileList:

List of all members.

## Public Member Functions

- virtual u32 addItem (const io::path &fullPath, u32 offset, u32 size, bool isDirectory, u32 id=0)=0
    Add as a file or folder to the list.
- virtual s32 findFile (const io::path &filename, bool isFolder=false) const =0
    Searches for a file or folder in the list.
- virtual u32 getFileCount () const =0
    Get the number of files in the filelist.
- virtual const io::path & getFileName (u32 index) const =0
    Gets the name of a file in the list, based on an index.
- virtual u32 getFileOffset (u32 index) const =0
    Returns the file offset of a file in the file list, based on an index.
- virtual u32 getFileSize (u32 index) const =0
    Returns the size of a file in the file list, based on an index.
- virtual const io::path & getFullFileName (u32 index) const =0
    Gets the full name of a file in the list including the path, based on an index.
- virtual u32 getID (u32 index) const =0
    Returns the ID of a file in the file list, based on an index.
- virtual const io::path & getPath () const =0
    Returns the base path of the file list.
- virtual bool isDirectory (u32 index) const =0
    Check if the file is a directory.
- virtual void sort ()=0
    Sorts the file list. You should call this after adding any items to the file list.

## Detailed Description

Provides a list of files and folders.

File lists usually contain a list of all files in a given folder, but can also contain a complete directory structure.

Definition at line 19 of file IFileList.h.

## Member Function Documentation

virtual u32 irr::io::IFileList::addItem | ( | const io::path & | fullPath,
|  | u32 | offset,
|  | u32 | size,
|  | bool | isDirectory,
|  | u32 | id = `0`
| ) |  | `[pure virtual]`

Add as a file or folder to the list.

Parameters:

  fullPath | The file name including path, from the root of the file list.
  isDirectory | True if this is a directory rather than a file.
  offset | The file offset inside an archive
  size | The size of the file in bytes.
  id | The ID of the file in the archive which owns it

virtual s32 irr::io::IFileList::findFile | ( | const io::path & | filename,
|  | bool | isFolder = `false`
| ) |  | const`[pure virtual]`

Searches for a file or folder in the list.

Searches for a file by name

Parameters:

  filename | The name of the file to search for.
  isFolder | True if you are searching for a directory path, false if you are searching for a file

Returns:
  Returns the index of the file in the file list, or -1 if no matching name name was found.

virtual u32 irr::io::IFileList::getFileCount | ( |  | ) | const`[pure virtual]`

Get the number of files in the filelist.

Returns:
  Amount of files and directories in the file list.

virtual const io::path& irr::io::IFileList::getFileName | ( | u32 | index | ) | const`[pure virtual]`

Gets the name of a file in the list, based on an index.

The path is not included in this name. Use getFullFileName for this.

Parameters:

  index | is the zero based index of the file which name should be returned. The index must be less than the amount getFileCount() returns.

Returns:
  File name of the file. Returns 0, if an error occured.

virtual u32 irr::io::IFileList::getFileOffset | ( | u32 | index | ) | const`[pure virtual]`

Returns the file offset of a file in the file list, based on an index.

Parameters:

  index | is the zero based index of the file which should be returned. The index must be less than the amount getFileCount() returns.

Returns:
  The offset of the file in bytes.

virtual u32 irr::io::IFileList::getFileSize | ( | u32 | index | ) | const`[pure virtual]`

Returns the size of a file in the file list, based on an index.

Parameters:

  index | is the zero based index of the file which should be returned. The index must be less than the amount getFileCount() returns.

Returns:
  The size of the file in bytes.

virtual const io::path& irr::io::IFileList::getFullFileName | ( | u32 | index | ) | const`[pure virtual]`

Gets the full name of a file in the list including the path, based on an index.

Parameters:

  index | is the zero based index of the file which name should be returned. The index must be less than the amount getFileCount() returns.

Returns:
  File name of the file. Returns 0 if an error occured.

virtual u32 irr::io::IFileList::getID | ( | u32 | index | ) | const`[pure virtual]`

Returns the ID of a file in the file list, based on an index.

This optional ID can be used to link the file list entry to information held elsewhere. For example this could be an index in an IFileArchive, linking the entry to its data offset, uncompressed size and CRC.

Parameters:

  index | is the zero based index of the file which should be returned. The index must be less than the amount getFileCount() returns.

Returns:
  The ID of the file.

virtual const io::path& irr::io::IFileList::getPath | ( |  | ) | const`[pure virtual]`

Returns the base path of the file list.

virtual bool irr::io::IFileList::isDirectory | ( | u32 | index | ) | const`[pure virtual]`

Check if the file is a directory.

Parameters:

  index | The zero based index which will be checked. The index must be less than the amount getFileCount() returns.

Returns:
  True if the file is a directory, else false.

virtual void irr::io::IFileList::sort | ( |  | ) | `[pure virtual]`

Sorts the file list. You should call this after adding any items to the file list.

The documentation for this class was generated from the following file:

- IFileList.h