[AI] A wrapper for low-level file I/O, abstracting MMIOINFO functionality, and providing additional buffer and chunk management geared toward wave and RIFF file manipulation.
More...
|
| MXIOINFO () |
| [AI] Constructs a new MXIOINFO instance and initializes all struct members to zero. More...
|
|
| ~MXIOINFO () |
| [AI] Destructor, closes the file and releases all memory associated with buffers if necessary. More...
|
|
MxU16 | Open (const char *p_filename, MxULong p_flags) |
| [AI] Opens a file for buffered/unbuffered I/O, initializing MMIOINFO and (optionally) internal buffer based on flags. More...
|
|
MxU16 | Close (MxLong p_unused) |
| [AI] Closes the file and releases its resources, including buffer memory if owned. More...
|
|
MxLong | Read (void *p_buf, MxLong p_len) |
| [AI] Reads a number of bytes from the file or buffer into the destination buffer. More...
|
|
MxLong | Write (void *p_buf, MxLong p_len) |
| [AI] Writes data to the file or internal buffer. More...
|
|
MxLong | Seek (MxLong p_offset, MxLong p_origin) |
| [AI] Seeks to a specific position in the file (or file buffer). More...
|
|
MxU16 | SetBuffer (char *p_buf, MxLong p_len, MxLong p_unused) |
| [AI] Changes the buffer used for internal I/O (applies and releases old buffer if owned). More...
|
|
MxU16 | Flush (MxU16 p_unused) |
| [AI] Flushes contents of the buffer to disk if necessary (e.g., if data is dirty). More...
|
|
MxU16 | Advance (MxU16 p_option) |
| [AI] Advances the buffer state for reading/writing the next block, committing dirty writes and loading/refreshing as necessary. More...
|
|
MxU16 | Descend (MMCKINFO *p_chunkInfo, const MMCKINFO *p_parentInfo, MxU16 p_descend) |
| [AI] Descends into a specific RIFF or LIST chunk in a hierarchical file, reading chunk headers and updating MMCKINFO accordingly. More...
|
|
MxU16 | Ascend (MMCKINFO *p_chunkInfo, MxU16 p_ascend) |
| [AI] Ascends from a chunk in a hierarchical file, correcting chunk size and finishing the chunk correctly. More...
|
|
MxU16 | CreateChunk (MMCKINFO *p_chunkInfo, MxU16 p_create) |
| [AI] Creates a new hierarchical chunk (RIFF or LIST or other type), writing initial chunk header. More...
|
|
[AI] A wrapper for low-level file I/O, abstracting MMIOINFO functionality, and providing additional buffer and chunk management geared toward wave and RIFF file manipulation.
[AI] MXIOINFO manages opening, reading, writing, seeking, and closing files at a low level, optionally using an internal buffer for efficiency. It also provides chunk-based access, suitable for managing hierarchical file formats like RIFF (common for audio/video assets). This class also manages chunk and pad byte considerations when traversing file structures.
Definition at line 22 of file mxio.h.