+ (MUIDataspace *) dataspace

Default constructor

- (BOOL) add:(APTR)data len:(LONG)len id:(ULONG)id

This method adds a new entry to the dataspace. If an entry with the same ID already exists, it will be replaced with the new entry.

- (void) clear

This method clears all the contents of a dataspace. Depending on the state of the memory pool that the dataspace object uses, this may or may not result in more free memory.

- (ULONG) count
- (OBData *) dataForID:(ULONG)id
- (APTR) find:(ULONG)id
- (APTR) get:(ULONG)id size:(ULONG *)size
- (IPTR) merge:(MUIDataspace *)dataspace

This method adds all the contents of the merge dataspace specified as parameter to the objects dataspace. As with MUIM_Dataspace_Add, entries with equal IDs will be replaced.

- (ULONG) readIFF:(struct IFFHandle *)handle

Adds the contents of an IFF handle from iffparse.library to the dataspace. As always, objects with the same ID that are already in the dataspace will be replaced.

This method does not look for any chunk types and chunk ids itself. Instead, it expects that you have already located the chunk which contains your data and does nothing but ReadChunkBytes() until all dataspace entries of the current chunk are read.

- (void) remove:(ULONG)id

This method removes an entry from the dataspace.

- (void) setData:(OBData *)data forID:(ULONG)id

Sets the raw bytes for a given ID, removes the ID if data is empty/nil

- (void) setPool:(APTR)pool

CAUTION: this is an initializer attribute, meaning it cannot be changed after the underlying MUI object is instantiated

- (ULONG) writeIFF:(struct IFFHandle *)handle type:(ULONG)type id:(ULONG)id

Writes the contents of a dataspace to an IFF handle of iffparse.library.

In detail, a chunk with the specified type and id is created with PushChunk(), the contents of the dataspace are written with WriteChunkBytes() and the chunk is terminated with PopChunk().