| File-Format-RIFF documentation | view source | Contained in the File-Format-RIFF distribution. |
File::Format::RIFF::Container - RIFF Container (Lists and RIFFs)
You should not instantiate a File::Format::RIFF::Container directly;
instead, you should instantiate one of its subclasses: either a
File::Format::RIFF object, or a File::Format::RIFF::List object.
File::Format::RIFF::Container is a base class for both RIFF objects
and RIFF lists. It is, essentially, an array of other RIFF lists and/or
RIFF chunks, and you can add, change, delete, and read them.
Returns the type of $container.
Sets the type of $container. $type must be a four character code, which
represents what data will be found in $container.
Returns the id of $container. $container must be either a RIFF object
or a List object, so $id will be 'RIFF' or 'LIST', respectively.
Returns the RIFF chunks and/or RIFF lists contained by $container.
Clears out any existing RIFF chunks contained by $container and replaces
them with $data. $data must be an array reference containing some
number of RIFF lists and/or RIFF chunks.
Returns the number of RIFF lists and/or RIFF chunks contained by
$container.
Returns the size (in bytes) of $container's data, when written to a file.
Returns the total size (in bytes) that $container will take up when
written out to a file. Total size is the size of the data, plus 12 bytes
for the header.
splice, push, pop, unshift, and shift operate analogously
to the same-named functions in core perl, acting on $container's array
of RIFF lists and/or RIFF chunks. All items added must be RIFF lists or
RIFF chunks.
Returns the RIFF list or RIFF chunk at the $ith position in
$container's array.
Sets the $ith position in $container's array to $chunk, replacing
the previous item. $chunk must be a RIFF list or a RIFF chunk.
Creates a new RIFF chunk object with the given $id and $data, appending
it to $container's array. Returns the just-created RIFF chunk.
Creates a new List object with the given $type and $data, appending
it to $container's array. Returns the just-created RIFF list.
Prints a string representation of $container to STDOUT, recursively
printing contained items. If a RIFF chunk's data is larger than $max bytes,
prints '[...]' instead of the actual data. If $max is not specified or
undef, it defaults to 64.
A RIFF chunk is rendered as:
id: <id> size: <size> (<total size>): <data>
A RIFF container is rendered as:
id: <id> (<type>) size: <size> (<total size>)
Items contained in the RIFF list are recursively printed on subsequent lines, and are indented in one additional tab level.
Paul Sturm <sturm@branewave.com>
| File-Format-RIFF documentation | view source | Contained in the File-Format-RIFF distribution. |