![]() |
V-Gears 0
Free Final Fantasy VII engine.
|
Represents a file. More...
#include <File.h>
Public Member Functions | |
File (const Ogre::String &file) | |
Opens a file. More... | |
File (const File *file) | |
Opens a file. More... | |
File (const File *file, u32 offset, u32 length) | |
Loads a file fragment. More... | |
File (const u8 *buffer, u32 offset, u32 length) | |
Loads a file fragment from a buffer. More... | |
virtual | ~File () |
Destructor. More... | |
void | WriteFile (const Ogre::String &file) const |
Writes the contents of the buffer to a file. More... | |
const Ogre::String & | GetFileName () const |
Retrieves the file name. More... | |
u32 | GetFileSize () const |
Retrieves the file size. More... | |
void | GetFileBuffer (u8 *buffer, const u32 &start, const u32 &length) const |
Loads a buffer with the file data. More... | |
u8 | GetU8 (u32 offset) const |
Retrieves a pointer to a byte address in the file. More... | |
u16 | GetU16LE (u32 offset) const |
Retrieves a pointer to a two-byte address in the file. More... | |
u32 | GetU32LE (u32 offset) const |
Retrieves a pointer to a four-byte address in the file. More... | |
u8 | readU8 () |
Reads a byte from the file. More... | |
u16 | readU16LE () |
Reads two bytes from the file (little endian). More... | |
u32 | readU32LE () |
Reads four bytes from the file (little endian). More... | |
u32 | GetCurrentOffset () |
Checks the current offset of the file. More... | |
void | SetOffset (u32 offset) |
Sets the file offset for reading. More... | |
Protected Attributes | |
Ogre::String | file_name_ |
The file name. More... | |
u32 | offset_ = 0 |
Current offset of the file. More... | |
u8 * | buffer_ |
The file buffer. More... | |
u32 | buffer_size_ |
The allocated size of {. More... | |
Represents a file.
File::File | ( | const Ogre::String & | file | ) |
Opens a file.
[in] | file | Path to the file. |
File::File | ( | const File * | file | ) |
Opens a file.
[in] | file | Pointer to the file. |
Loads a file fragment.
[in] | file | Pointer to the file. |
[in] | offset | Offset to the data to load. |
[in] | length | Length of the data to load. |
Loads a file fragment from a buffer.
[in] | buffer | Pointer to the buffer to load from. |
[in] | offset | Offset to the data to load. |
[in] | length | Length of the data to load. |
|
virtual |
Destructor.
u32 File::GetCurrentOffset | ( | ) |
Checks the current offset of the file.
Default is 0. Can be set on instantiation with {
Loads a buffer with the file data.
[out] | buffer | Pointer to the buffer to load. |
[in] | start | Offset to the data to load. |
[in] | length | Length of the data to load. |
const Ogre::String & File::GetFileName | ( | ) | const |
Retrieves the file name.
Retrieves a pointer to a two-byte address in the file.
The data must b considered to be in little endian.
[in] | offset | The offset to the requested address. |
Retrieves a pointer to a four-byte address in the file.
The data must b considered to be in little endian.
[in] | offset | The offset to the requested address. |
Retrieves a pointer to a byte address in the file.
[in] | offset | The offset to the requested address. |
u16 File::readU16LE | ( | ) |
Reads two bytes from the file (little endian).
Advances the current offset by two bytes.
u32 File::readU32LE | ( | ) |
Reads four bytes from the file (little endian).
Advances the current offset by four byte.
u8 File::readU8 | ( | ) |
Reads a byte from the file.
Advances the current offset by one byte.
void File::SetOffset | ( | u32 | offset | ) |
Sets the file offset for reading.
If the offset is larger than the file size, the offset will be set to the end of the file
[in] | offset | The new offset. |
void File::WriteFile | ( | const Ogre::String & | file | ) | const |
Writes the contents of the buffer to a file.
[in] | file | Path of the file to save |
|
protected |
The file buffer.
It contains the file data.
|
protected |
The file name.
|
protected |
Current offset of the file.
Default is 0. Can be set on instantiation with {