1#ifndef MXDSSUBSCRIBER_H
2#define MXDSSUBSCRIBER_H
39 return "MxDSSubscriber";
[AI] Base virtual class for all Mindscape engine (Mx) objects.
virtual MxBool IsA(const char *p_name) const
[AI] Checks whether this object's class type or parents match the given name.
[AI] Base class for any object deserialized from an SI (script/data) file in the LEGO Island engine.
[AI] List container for pointers to MxDSSubscriber objects, with utility methods.
MxDSSubscriber * Find(MxDSObject *p_object)
[AI] Searches for a subscriber corresponding to the provided MxDSObject.
[AI] Handles the receipt, queuing, and batch management of data chunks streamed by a MxStreamControll...
MxBool IsA(const char *p_name) const override
[AI] Checks if this object is of the provided type name or is derived from it.
MxResult Create(MxStreamController *p_controller, MxU32 p_objectId, MxS16 p_unk0x48)
[AI] Initializes subscription to a streaming controller, sets identifiers, and establishes chunk curs...
MxResult AddData(MxStreamChunk *p_chunk, MxBool p_append)
[AI] Appends or prepends a new data chunk to the pending stream buffer.
const char * ClassName() const override
[AI] Returns the class name as a string ("MxDSSubscriber").
MxStreamChunk * PopData()
[AI] Pops the next available pending data chunk for consumption, moving it to the consumed list.
MxDSSubscriber()
[AI] Initializes internal member pointers and state.
void DestroyData()
[AI] Frees and detaches all currently managed/pending/consumed data chunks from both lists; intended ...
~MxDSSubscriber() override
[AI] Destructor, unregisters and frees associated memory/buffers.
MxS16 GetUnknown48()
[AI] Returns the member field sometimes used for disambiguating media (purpose context-specific).
void FreeDataChunk(MxStreamChunk *p_chunk)
[AI] Frees (deletes) a data chunk if it's found in the consumed data list; also forcibly deletes sing...
MxU32 GetObjectId()
[AI] Returns the object identifier associated with this subscriber.
MxStreamChunk * PeekData()
[AI] Returns but does not remove the first pending data chunk ("peek" operation).
[AI] Cursor for iterating over a MxStreamChunkList.
[AI] A list for managing collections of pointers to MxStreamChunk objects, used for organizing and ma...
[AI] Represents a streamable chunk of data, typically sourced from a media buffer and designed for no...
[AI] Controller for streaming and managing multimedia resources and actions during gameplay.
[AI] A utility list extending the STL list<T>, providing simplified PushBack, Remove,...