diff --git a/LEGO1/mxstreamer.cpp b/LEGO1/mxstreamer.cpp index c9b29441..e8928003 100644 --- a/LEGO1/mxstreamer.cpp +++ b/LEGO1/mxstreamer.cpp @@ -1,5 +1,7 @@ #include "mxstreamer.h" +#include + #include "legoomni.h" DECOMP_SIZE_ASSERT(MxStreamer, 0x2c); @@ -90,6 +92,18 @@ MxStreamController *MxStreamer::GetOpenStream(const char *p_name) return NULL; } + +// OFFSET: LEGO1 0x100b9930 +MxResult MxStreamer::AddStreamControllerToOpenList(MxStreamController *stream) +{ + if (find(m_openStreams.begin(), m_openStreams.end(), stream) == m_openStreams.end()) { + m_openStreams.push_back(stream); + return SUCCESS; + } + + return FAILURE; +} + // OFFSET: LEGO1 0x100b9b60 MxLong MxStreamer::Notify(MxParam &p) { diff --git a/LEGO1/mxstreamer.h b/LEGO1/mxstreamer.h index 48bd804e..b87b8405 100644 --- a/LEGO1/mxstreamer.h +++ b/LEGO1/mxstreamer.h @@ -67,6 +67,8 @@ class MxStreamer : public MxCore MxStreamController *GetOpenStream(const char *p_name); + MxResult AddStreamControllerToOpenList(MxStreamController *p_stream); + private: list m_openStreams; // 0x8 MxStreamerSubClass2 m_subclass1; // 0x14