1#ifndef MXDISKSTREAMCONTROLLER_H
2#define MXDISKSTREAMCONTROLLER_H
41 return "MxDiskStreamController";
126 list<MxDSBuffer*> m_list0x74;
[AI] Provides a critical section object for mutual exclusion with optional use of OS mutex.
[AI] Represents an action deserialized from SI chunks, holding key animation or script parameters suc...
[AI] Buffer for managing streamed DS (Data Stream) chunks and actions.
[AI] Utility list for managing dynamic sequence (DS) objects, provides search and removal by pointer ...
[AI] Represents an action that streams data from a buffer within a DirectScript (DS) media timeline.
[AI] Controller for streaming from disk-based SI resources, manages buffers and streaming actions.
virtual MxResult VTable0x34(undefined4)
[AI] Cleans up/aborts all queued streaming actions associated with the specified action.
~MxDiskStreamController() override
[AI] Destructor. Cleans up streaming actions, buffers, and provider. Unregisters from tickle manager.
void FUN_100c7f40(MxDSStreamingAction *p_streamingaction)
[AI] Adds a streaming action to m_list0x64 for processing.
MxResult VTable0x18(undefined4, undefined4) override
[AI] Opens the given resource file for streaming.
MxBool IsA(const char *p_name) const override
[AI] Checks whether the provided string matches the class name or any ancestor's class name.
MxResult VTable0x30(MxDSAction *p_action) override
[AI] Pops a queued (ready) streaming action and prepares it for buffer assignment....
MxDiskStreamController()
[AI] Constructor. Initializes internal state and buffer counters.
void FUN_100c8120(MxDSAction *p_action)
[AI] Cleans up an action and all associated resources, notifies provider.
MxResult VTable0x24(MxDSAction *p_action) override
[AI] Start or queue the streaming action for the given action, potentially using buffer reuse and str...
void FUN_100c7cb0(MxDSStreamingAction *p_action)
[AI] Destroys the given streaming action and any associated buffers.
const char * ClassName() const override
[AI] Update the controller, handling buffer processing and queued actions.
void FUN_100c8670(MxDSStreamingAction *p_streamingAction)
[AI] Pushes an action to a private list (m_list0xb8) for later cleanup.
MxResult Tickle() override
[AI] Called by tickle managers to allow the object to update itself.
MxResult Open(const char *p_filename) override
[AI] Opens a data stream with the specified resource filename.
MxBool GetUnk0xc4() const
[AI] Placeholder/overridden method—purpose unknown from context.
MxResult VTable0x20(MxDSAction *p_action) override
[AI] Placeholder/overridden method—purpose unknown from context.
MxResult FUN_100c7890(MxDSStreamingAction *p_action)
[AI] Adds a streaming action to the list (m_list0x80) and possibly processes buffer allocation.
MxDSStreamingAction * VTable0x28() override
[AI] Marks an action as completed and cleans up associated resources.
void InsertToList74(MxDSBuffer *p_buffer)
[AI] Inserts a buffer to the buffer reuse list (m_list0x74).
[AI] Controller for streaming and managing multimedia resources and actions during gameplay.
MxBool IsA(const char *p_name) const override
[AI] Performs runtime type checking, matching the given name with this or any parent class.
unsigned short undefined2
[AI] STL compatibility layer header to provide consistent STL (Standard Template Library) types and a...