#include <lwoGroupChunk.h>
Inheritance diagram for LwoGroupChunk:
Public Member Functions | |
int | get_num_chunks () const |
Returns the number of child chunks of this group. | |
IffChunk * | get_chunk (int n) const |
Returns the nth child chunk of this group. | |
virtual TypeHandle | get_type () const |
virtual TypeHandle | force_init_type () |
IffId | get_id () const |
Returns the ID associated with this chunk. | |
void | set_id (IffId id) |
Changes the ID associated with this chunk. | |
virtual bool | read_iff (IffInputFile *in, size_t stop_at)=0 |
virtual void | output (ostream &out) const |
virtual void | write (ostream &out, int indent_level=0) const |
virtual IffChunk * | make_new_chunk (IffInputFile *in, IffId id) |
Allocates and returns a new chunk of the appropriate type based on the given ID, according to the context given by this chunk itself. | |
int | get_type_index () const |
bool | is_of_type (TypeHandle handle) const |
bool | is_exact_type (TypeHandle handle) const |
int | get_ref_count () const |
int | ref () const |
int | unref () const |
void | test_ref_count_integrity () const |
Static Public Member Functions | |
TypeHandle | get_class_type () |
void | init_type () |
Protected Types | |
typedef pvector< PointerTo< IffChunk > > | Chunks |
Protected Member Functions | |
bool | read_chunks_iff (IffInputFile *in, size_t stop_at) |
Reads a sequence of child chunks, until byte stop_at has been been reached, and stores them as the children. | |
bool | read_subchunks_iff (IffInputFile *in, size_t stop_at) |
Similar to read_chunks_iff(), but reads them as subchunks. | |
void | write_chunks (ostream &out, int indent_level) const |
Formats the list of chunks for output to the user (primarily for debugging), one per line. | |
Protected Attributes | |
Chunks | _chunks |
int | _ref_count |
Static Private Attributes | |
TypeHandle | _type_handle |
Definition at line 43 of file lwoGroupChunk.h.
|
Definition at line 53 of file lwoGroupChunk.h. |
|
Reimplemented from LwoChunk. Reimplemented in LwoClip, LwoHeader, LwoSurface, LwoSurfaceBlockHeader, and LwoSurfaceBlockTMap. Definition at line 60 of file lwoGroupChunk.h. |
|
Returns the nth child chunk of this group.
Definition at line 51 of file lwoGroupChunk.cxx. References _chunks, IffInputFile::get_bytes_read(), IffInputFile::get_chunk(), IffInputFile::is_eof(), NULL, and PT. |
|
Reimplemented from LwoChunk. Reimplemented in LwoClip, LwoHeader, LwoSurface, LwoSurfaceBlockHeader, and LwoSurfaceBlockTMap. Definition at line 61 of file lwoGroupChunk.h. |
|
|
Returns the number of child chunks of this group.
Definition at line 38 of file lwoGroupChunk.cxx. |
|
Reimplemented from LwoChunk. Reimplemented in LwoClip, LwoHeader, LwoSurface, LwoSurfaceBlockHeader, and LwoSurfaceBlockTMap. Definition at line 57 of file lwoGroupChunk.h. References _type_handle, LwoChunk::init_type(), and register_type(). |
|
Reimplemented from LwoChunk. Reimplemented in LwoClip, LwoHeader, LwoSurface, LwoSurfaceBlockHeader, and LwoSurfaceBlockTMap. Definition at line 64 of file lwoGroupChunk.h. References _type_handle. Referenced by LwoClip::get_type(). |
|
Allocates and returns a new chunk of the appropriate type based on the given ID, according to the context given by this chunk itself.
Reimplemented in LwoClip, LwoSurface, LwoSurfaceBlock, LwoSurfaceBlockHeader, and LwoSurfaceBlockTMap. Definition at line 66 of file iffChunk.cxx. Referenced by IffInputFile::get_chunk(), LwoSurfaceBlockTMap::write(), and LwoClip::write(). |
|
Definition at line 37 of file iffChunk.cxx. References IffChunk::_id, and indent(). |
|
Reads a sequence of child chunks, until byte stop_at has been been reached, and stores them as the children. Returns true if successful (and exactly the correct number of bytes were read), or false otherwise. Definition at line 73 of file lwoGroupChunk.cxx. References _chunks, IffInputFile::get_bytes_read(), IffInputFile::get_subchunk(), IffInputFile::is_eof(), NULL, and PT. |
|
|
Similar to read_chunks_iff(), but reads them as subchunks.
Definition at line 96 of file lwoGroupChunk.cxx. References _chunks. |
|
Changes the ID associated with this chunk.
Definition at line 56 of file iffChunk.I. |
|
|
Formats the list of chunks for output to the user (primarily for debugging), one per line.
Definition at line 119 of file lwoGroupChunk.cxx. Referenced by LwoSurfaceBlockTMap::read_iff(), LwoSurface::read_iff(), and LwoClip::read_iff(). |
|
Definition at line 54 of file lwoGroupChunk.h. Referenced by get_chunk(), get_num_chunks(), read_chunks_iff(), and read_subchunks_iff(). |
|
Reimplemented from LwoChunk. Reimplemented in LwoClip, LwoHeader, LwoSurface, LwoSurfaceBlock, LwoSurfaceBlockHeader, and LwoSurfaceBlockTMap. Definition at line 27 of file lwoGroupChunk.cxx. Referenced by get_type(), and init_type(). |