mirror of
https://github.com/isledecomp/isle-portable.git
synced 2025-09-26 22:21:50 -04:00
BETA matches for SoundManagers (#1646)
--------- Co-authored-by: jonschz <jonschz@users.noreply.github.com>
This commit is contained in:
parent
fd299137ff
commit
36f6d963dc
@ -240,7 +240,7 @@ function(add_lego_libraries NAME)
|
|||||||
LEGO1/omni/src/common/mxutilities.cpp
|
LEGO1/omni/src/common/mxutilities.cpp
|
||||||
LEGO1/omni/src/common/mxvariabletable.cpp
|
LEGO1/omni/src/common/mxvariabletable.cpp
|
||||||
LEGO1/omni/src/stream/mxdssubscriber.cpp
|
LEGO1/omni/src/stream/mxdssubscriber.cpp
|
||||||
LEGO1/omni/src/common/mxmediamanager.cpp
|
LEGO1/omni/src/common/mxpresentationmanager.cpp
|
||||||
LEGO1/omni/src/system/mxticklethread.cpp
|
LEGO1/omni/src/system/mxticklethread.cpp
|
||||||
LEGO1/omni/src/audio/mxaudiomanager.cpp
|
LEGO1/omni/src/audio/mxaudiomanager.cpp
|
||||||
LEGO1/omni/src/system/mxautolock.cpp
|
LEGO1/omni/src/system/mxautolock.cpp
|
||||||
|
@ -46,10 +46,13 @@ typedef set<LegoCacheSoundEntry, Set100d6b4cComparator> Set100d6b4c;
|
|||||||
typedef list<LegoCacheSoundEntry> List100d6b4c;
|
typedef list<LegoCacheSoundEntry> List100d6b4c;
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100d6b4c
|
// VTABLE: LEGO1 0x100d6b4c
|
||||||
|
// VTABLE: BETA10 0x101becac
|
||||||
// SIZE 0x20
|
// SIZE 0x20
|
||||||
class LegoCacheSoundManager {
|
class LegoCacheSoundManager {
|
||||||
public:
|
public:
|
||||||
|
// FUNCTION: BETA10 0x100d0a60
|
||||||
LegoCacheSoundManager() {}
|
LegoCacheSoundManager() {}
|
||||||
|
|
||||||
~LegoCacheSoundManager();
|
~LegoCacheSoundManager();
|
||||||
|
|
||||||
virtual MxResult Tickle(); // vtable+0x00
|
virtual MxResult Tickle(); // vtable+0x00
|
||||||
@ -66,6 +69,9 @@ private:
|
|||||||
List100d6b4c m_list; // 0x14
|
List100d6b4c m_list; // 0x14
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// SYNTHETIC: BETA10 0x100d06b0
|
||||||
|
// LegoCacheSoundManager::`scalar deleting destructor'
|
||||||
|
|
||||||
// TODO: Function names subject to change.
|
// TODO: Function names subject to change.
|
||||||
|
|
||||||
// clang-format off
|
// clang-format off
|
||||||
|
@ -17,15 +17,15 @@ public:
|
|||||||
void Destroy() override; // vtable+0x18
|
void Destroy() override; // vtable+0x18
|
||||||
MxResult Create(MxU32 p_frequencyMS, MxBool p_createThread) override; // vtable+0x30
|
MxResult Create(MxU32 p_frequencyMS, MxBool p_createThread) override; // vtable+0x30
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x10029920
|
|
||||||
// SYNTHETIC: BETA10 0x100d0660
|
|
||||||
// LegoSoundManager::`scalar deleting destructor'
|
|
||||||
|
|
||||||
void UpdateListener(const float* p_position, const float* p_direction, const float* p_up, const float* p_velocity);
|
void UpdateListener(const float* p_position, const float* p_direction, const float* p_up, const float* p_velocity);
|
||||||
|
|
||||||
// FUNCTION: BETA10 0x1000f350
|
// FUNCTION: BETA10 0x1000f350
|
||||||
LegoCacheSoundManager* GetCacheSoundManager() { return m_cacheSoundManager; }
|
LegoCacheSoundManager* GetCacheSoundManager() { return m_cacheSoundManager; }
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x10029920
|
||||||
|
// SYNTHETIC: BETA10 0x100d0660
|
||||||
|
// LegoSoundManager::`scalar deleting destructor'
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void Init();
|
void Init();
|
||||||
void Destroy(MxBool p_fromDestructor);
|
void Destroy(MxBool p_fromDestructor);
|
||||||
|
@ -7,6 +7,7 @@ DECOMP_SIZE_ASSERT(LegoCacheSoundEntry, 0x08)
|
|||||||
DECOMP_SIZE_ASSERT(LegoCacheSoundManager, 0x20)
|
DECOMP_SIZE_ASSERT(LegoCacheSoundManager, 0x20)
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1003cf20
|
// FUNCTION: LEGO1 0x1003cf20
|
||||||
|
// STUB: BETA10 0x100d0700
|
||||||
LegoCacheSoundManager::~LegoCacheSoundManager()
|
LegoCacheSoundManager::~LegoCacheSoundManager()
|
||||||
{
|
{
|
||||||
LegoCacheSound* sound;
|
LegoCacheSound* sound;
|
||||||
@ -28,6 +29,7 @@ LegoCacheSoundManager::~LegoCacheSoundManager()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1003d050
|
// FUNCTION: LEGO1 0x1003d050
|
||||||
|
// STUB: BETA10 0x100652f0
|
||||||
MxResult LegoCacheSoundManager::Tickle()
|
MxResult LegoCacheSoundManager::Tickle()
|
||||||
{
|
{
|
||||||
#ifdef COMPAT_MODE
|
#ifdef COMPAT_MODE
|
||||||
|
@ -9,18 +9,21 @@
|
|||||||
DECOMP_SIZE_ASSERT(LegoSoundManager, 0x44)
|
DECOMP_SIZE_ASSERT(LegoSoundManager, 0x44)
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100298a0
|
// FUNCTION: LEGO1 0x100298a0
|
||||||
|
// FUNCTION: BETA10 0x100cffb0
|
||||||
LegoSoundManager::LegoSoundManager()
|
LegoSoundManager::LegoSoundManager()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10029940
|
// FUNCTION: LEGO1 0x10029940
|
||||||
|
// FUNCTION: BETA10 0x100d0027
|
||||||
LegoSoundManager::~LegoSoundManager()
|
LegoSoundManager::~LegoSoundManager()
|
||||||
{
|
{
|
||||||
Destroy(TRUE);
|
Destroy(TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100299a0
|
// FUNCTION: LEGO1 0x100299a0
|
||||||
|
// FUNCTION: BETA10 0x100d0099
|
||||||
void LegoSoundManager::Init()
|
void LegoSoundManager::Init()
|
||||||
{
|
{
|
||||||
m_cacheSoundManager = NULL;
|
m_cacheSoundManager = NULL;
|
||||||
@ -28,6 +31,7 @@ void LegoSoundManager::Init()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100299b0
|
// FUNCTION: LEGO1 0x100299b0
|
||||||
|
// FUNCTION: BETA10 0x100d00c9
|
||||||
void LegoSoundManager::Destroy(MxBool p_fromDestructor)
|
void LegoSoundManager::Destroy(MxBool p_fromDestructor)
|
||||||
{
|
{
|
||||||
delete m_cacheSoundManager;
|
delete m_cacheSoundManager;
|
||||||
@ -42,10 +46,13 @@ void LegoSoundManager::Destroy(MxBool p_fromDestructor)
|
|||||||
// FUNCTION: BETA10 0x100d0129
|
// FUNCTION: BETA10 0x100d0129
|
||||||
MxResult LegoSoundManager::Create(MxU32 p_frequencyMS, MxBool p_createThread)
|
MxResult LegoSoundManager::Create(MxU32 p_frequencyMS, MxBool p_createThread)
|
||||||
{
|
{
|
||||||
MxBool locked = FALSE;
|
|
||||||
MxResult result = FAILURE;
|
MxResult result = FAILURE;
|
||||||
|
MxBool locked = FALSE;
|
||||||
|
|
||||||
|
if (MxSoundManager::Create(10, FALSE) != SUCCESS) {
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
if (MxSoundManager::Create(10, FALSE) == SUCCESS) {
|
|
||||||
ENTER(m_criticalSection);
|
ENTER(m_criticalSection);
|
||||||
locked = TRUE;
|
locked = TRUE;
|
||||||
|
|
||||||
@ -54,6 +61,10 @@ MxResult LegoSoundManager::Create(MxU32 p_frequencyMS, MxBool p_createThread)
|
|||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef BETA10
|
||||||
|
m_listener->SetDistanceFactor(0.026315790f, 0);
|
||||||
|
m_listener->SetRolloffFactor(10, 0);
|
||||||
|
#else
|
||||||
MxOmni* omni = MxOmni::GetInstance();
|
MxOmni* omni = MxOmni::GetInstance();
|
||||||
LPDIRECTSOUND sound;
|
LPDIRECTSOUND sound;
|
||||||
|
|
||||||
@ -67,12 +78,12 @@ MxResult LegoSoundManager::Create(MxU32 p_frequencyMS, MxBool p_createThread)
|
|||||||
m_listener->SetRolloffFactor(10, 0);
|
m_listener->SetRolloffFactor(10, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
m_cacheSoundManager = new LegoCacheSoundManager;
|
m_cacheSoundManager = new LegoCacheSoundManager;
|
||||||
assert(m_cacheSoundManager);
|
assert(m_cacheSoundManager);
|
||||||
result = SUCCESS;
|
result = SUCCESS;
|
||||||
}
|
|
||||||
|
|
||||||
done:
|
done:
|
||||||
if (result != SUCCESS) {
|
if (result != SUCCESS) {
|
||||||
@ -112,21 +123,17 @@ void LegoSoundManager::UpdateListener(
|
|||||||
const float* p_velocity
|
const float* p_velocity
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
if (m_listener != NULL) {
|
if (!m_listener) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (p_position != NULL) {
|
if (p_position != NULL) {
|
||||||
m_listener->SetPosition(p_position[0], p_position[1], p_position[2], DS3D_DEFERRED);
|
m_listener->SetPosition(p_position[0], p_position[1], p_position[2], DS3D_DEFERRED);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p_direction != NULL && p_up != NULL) {
|
if (p_direction != NULL && p_up != NULL) {
|
||||||
m_listener->SetOrientation(
|
m_listener
|
||||||
p_direction[0],
|
->SetOrientation(p_direction[0], p_direction[1], p_direction[2], p_up[0], p_up[1], p_up[2], DS3D_DEFERRED);
|
||||||
p_direction[1],
|
|
||||||
p_direction[2],
|
|
||||||
p_up[0],
|
|
||||||
p_up[1],
|
|
||||||
p_up[2],
|
|
||||||
DS3D_DEFERRED
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p_velocity != NULL) {
|
if (p_velocity != NULL) {
|
||||||
@ -136,5 +143,4 @@ void LegoSoundManager::UpdateListener(
|
|||||||
if (p_position != NULL || (p_direction != NULL && p_up != NULL) || p_velocity != NULL) {
|
if (p_position != NULL || (p_direction != NULL && p_up != NULL) || p_velocity != NULL) {
|
||||||
m_listener->CommitDeferredSettings();
|
m_listener->CommitDeferredSettings();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -2,11 +2,12 @@
|
|||||||
#define MXAUDIOMANAGER_H
|
#define MXAUDIOMANAGER_H
|
||||||
|
|
||||||
#include "decomp.h"
|
#include "decomp.h"
|
||||||
#include "mxmediamanager.h"
|
#include "mxpresentationmanager.h"
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100dc6e0
|
// VTABLE: LEGO1 0x100dc6e0
|
||||||
|
// VTABLE: BETA10 0x101c2348
|
||||||
// SIZE 0x30
|
// SIZE 0x30
|
||||||
class MxAudioManager : public MxMediaManager {
|
class MxAudioManager : public MxPresentationManager {
|
||||||
public:
|
public:
|
||||||
MxAudioManager();
|
MxAudioManager();
|
||||||
~MxAudioManager() override;
|
~MxAudioManager() override;
|
||||||
@ -15,11 +16,13 @@ public:
|
|||||||
void Destroy() override; // vtable+18
|
void Destroy() override; // vtable+18
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10029910
|
// FUNCTION: LEGO1 0x10029910
|
||||||
|
// FUNCTION: BETA10 0x100d0630
|
||||||
virtual MxS32 GetVolume() { return m_volume; } // vtable+28
|
virtual MxS32 GetVolume() { return m_volume; } // vtable+28
|
||||||
|
|
||||||
virtual void SetVolume(MxS32 p_volume); // vtable+2c
|
virtual void SetVolume(MxS32 p_volume); // vtable+2c
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x100b8d70
|
// SYNTHETIC: LEGO1 0x100b8d70
|
||||||
|
// SYNTHETIC: BETA10 0x10145110
|
||||||
// MxAudioManager::`scalar deleting destructor'
|
// MxAudioManager::`scalar deleting destructor'
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
#define MXEVENTMANAGER_H
|
#define MXEVENTMANAGER_H
|
||||||
|
|
||||||
#include "decomp.h"
|
#include "decomp.h"
|
||||||
#include "mxmediamanager.h"
|
#include "mxpresentationmanager.h"
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100dc900
|
// VTABLE: LEGO1 0x100dc900
|
||||||
// SIZE 0x2c
|
// SIZE 0x2c
|
||||||
class MxEventManager : public MxMediaManager {
|
class MxEventManager : public MxPresentationManager {
|
||||||
public:
|
public:
|
||||||
MxEventManager();
|
MxEventManager();
|
||||||
~MxEventManager() override;
|
~MxEventManager() override;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#ifndef MXMEDIAMANGER_H
|
#ifndef MXPRESENTATIONMANAGER_H
|
||||||
#define MXMEDIAMANGER_H
|
#define MXPRESENTATIONMANAGER_H
|
||||||
|
|
||||||
#include "mxcore.h"
|
#include "mxcore.h"
|
||||||
#include "mxcriticalsection.h"
|
#include "mxcriticalsection.h"
|
||||||
@ -9,11 +9,12 @@
|
|||||||
class MxThread;
|
class MxThread;
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100dc6b0
|
// VTABLE: LEGO1 0x100dc6b0
|
||||||
|
// VTABLE: BETA10 0x101c2318
|
||||||
// SIZE 0x2c
|
// SIZE 0x2c
|
||||||
class MxMediaManager : public MxCore {
|
class MxPresentationManager : public MxCore {
|
||||||
public:
|
public:
|
||||||
MxMediaManager();
|
MxPresentationManager();
|
||||||
~MxMediaManager() override;
|
~MxPresentationManager() override;
|
||||||
|
|
||||||
MxResult Tickle() override; // vtable+08
|
MxResult Tickle() override; // vtable+08
|
||||||
virtual MxResult Create(); // vtable+14
|
virtual MxResult Create(); // vtable+14
|
||||||
@ -25,7 +26,8 @@ public:
|
|||||||
MxResult Init();
|
MxResult Init();
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x100b8540
|
// SYNTHETIC: LEGO1 0x100b8540
|
||||||
// MxMediaManager::`scalar deleting destructor'
|
// SYNTHETIC: BETA10 0x10144db0
|
||||||
|
// MxPresentationManager::`scalar deleting destructor'
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
MxPresenterList* m_presenters; // 0x08
|
MxPresenterList* m_presenters; // 0x08
|
||||||
@ -33,4 +35,4 @@ protected:
|
|||||||
MxCriticalSection m_criticalSection; // 0x10
|
MxCriticalSection m_criticalSection; // 0x10
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MXMEDIAMANGER_H
|
#endif // MXPRESENTATIONMANAGER_H
|
@ -5,12 +5,15 @@
|
|||||||
#include "mxpresenter.h"
|
#include "mxpresenter.h"
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100d62f0
|
// VTABLE: LEGO1 0x100d62f0
|
||||||
|
// VTABLE: BETA10 0x101bf070
|
||||||
// class MxPtrList<MxPresenter>
|
// class MxPtrList<MxPresenter>
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100d6308
|
// VTABLE: LEGO1 0x100d6308
|
||||||
|
// VTABLE: BETA10 0x101bf050
|
||||||
// SIZE 0x18
|
// SIZE 0x18
|
||||||
class MxPresenterList : public MxPtrList<MxPresenter> {
|
class MxPresenterList : public MxPtrList<MxPresenter> {
|
||||||
public:
|
public:
|
||||||
|
// FUNCTION: BETA10 0x100dc900
|
||||||
MxPresenterList(MxBool p_ownership = FALSE) : MxPtrList<MxPresenter>(p_ownership) {}
|
MxPresenterList(MxBool p_ownership = FALSE) : MxPtrList<MxPresenter>(p_ownership) {}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1001cd00
|
// FUNCTION: LEGO1 0x1001cd00
|
||||||
@ -35,6 +38,13 @@ class MxPresenterListCursor : public MxPtrListCursor<MxPresenter> {
|
|||||||
public:
|
public:
|
||||||
// FUNCTION: BETA10 0x1007d130
|
// FUNCTION: BETA10 0x1007d130
|
||||||
MxPresenterListCursor(MxPresenterList* p_list) : MxPtrListCursor<MxPresenter>(p_list) {}
|
MxPresenterListCursor(MxPresenterList* p_list) : MxPtrListCursor<MxPresenter>(p_list) {}
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x1001eed0
|
||||||
|
// MxPresenterListCursor::`scalar deleting destructor'
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x1001f0c0
|
||||||
|
// SYNTHETIC: BETA10 0x1007d510
|
||||||
|
// MxPresenterListCursor::~MxPresenterListCursor
|
||||||
};
|
};
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100d6350
|
// VTABLE: LEGO1 0x100d6350
|
||||||
@ -58,7 +68,11 @@ public:
|
|||||||
// TEMPLATE: LEGO1 0x1001ce20
|
// TEMPLATE: LEGO1 0x1001ce20
|
||||||
// MxList<MxPresenter *>::~MxList<MxPresenter *>
|
// MxList<MxPresenter *>::~MxList<MxPresenter *>
|
||||||
|
|
||||||
|
// TEMPLATE: BETA10 0x100dc9f0
|
||||||
|
// MxPtrList<MxPresenter>::MxPtrList<MxPresenter>
|
||||||
|
|
||||||
// TEMPLATE: LEGO1 0x1001cf20
|
// TEMPLATE: LEGO1 0x1001cf20
|
||||||
|
// TEMPLATE: BETA10 0x100dce70
|
||||||
// MxPtrList<MxPresenter>::~MxPtrList<MxPresenter>
|
// MxPtrList<MxPresenter>::~MxPtrList<MxPresenter>
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x1001cf70
|
// SYNTHETIC: LEGO1 0x1001cf70
|
||||||
@ -73,10 +87,8 @@ public:
|
|||||||
// SYNTHETIC: LEGO1 0x1001d100
|
// SYNTHETIC: LEGO1 0x1001d100
|
||||||
// MxPresenterList::~MxPresenterList
|
// MxPresenterList::~MxPresenterList
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x1001eed0
|
|
||||||
// MxPresenterListCursor::`scalar deleting destructor'
|
|
||||||
|
|
||||||
// TEMPLATE: LEGO1 0x1001ef40
|
// TEMPLATE: LEGO1 0x1001ef40
|
||||||
|
// TEMPLATE: BETA10 0x1007d370
|
||||||
// MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter>
|
// MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter>
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x1001ef90
|
// SYNTHETIC: LEGO1 0x1001ef90
|
||||||
@ -86,11 +98,9 @@ public:
|
|||||||
// MxPtrListCursor<MxPresenter>::`scalar deleting destructor'
|
// MxPtrListCursor<MxPresenter>::`scalar deleting destructor'
|
||||||
|
|
||||||
// TEMPLATE: LEGO1 0x1001f070
|
// TEMPLATE: LEGO1 0x1001f070
|
||||||
|
// TEMPLATE: BETA10 0x1007d490
|
||||||
// MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *>
|
// MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *>
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1001f0c0
|
|
||||||
// MxPresenterListCursor::~MxPresenterListCursor
|
|
||||||
|
|
||||||
// TEMPLATE: LEGO1 0x10020760
|
// TEMPLATE: LEGO1 0x10020760
|
||||||
// MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *>
|
// MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *>
|
||||||
|
|
||||||
@ -106,6 +116,18 @@ public:
|
|||||||
// TEMPLATE: BETA10 0x1007d270
|
// TEMPLATE: BETA10 0x1007d270
|
||||||
// MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *>
|
// MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *>
|
||||||
|
|
||||||
|
// TEMPLATE: BETA10 0x1007dc60
|
||||||
|
// MxListCursor<MxPresenter *>::Next
|
||||||
|
|
||||||
|
// TEMPLATE: BETA10 0x100d8f20
|
||||||
|
// MxListCursor<MxPresenter *>::Reset
|
||||||
|
|
||||||
|
// TEMPLATE: BETA10 0x1007e070
|
||||||
|
// MxListEntry<MxPresenter *>::GetNext
|
||||||
|
|
||||||
|
// TEMPLATE: BETA10 0x1007e0a0
|
||||||
|
// MxListEntry<MxPresenter *>::GetValue
|
||||||
|
|
||||||
// TEMPLATE: BETA10 0x100d9420
|
// TEMPLATE: BETA10 0x100d9420
|
||||||
// ?Prev@?$MxListCursor@PAVMxPresenter@@@@QAEEAAPAVMxPresenter@@@Z
|
// ?Prev@?$MxListCursor@PAVMxPresenter@@@@QAEEAAPAVMxPresenter@@@Z
|
||||||
|
|
||||||
|
@ -27,6 +27,10 @@ public:
|
|||||||
|
|
||||||
MxPresenter* FindPresenter(const MxAtomId& p_atomId, MxU32 p_objectId);
|
MxPresenter* FindPresenter(const MxAtomId& p_atomId, MxU32 p_objectId);
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x100ae7b0
|
||||||
|
// SYNTHETIC: BETA10 0x10133460
|
||||||
|
// MxSoundManager::`scalar deleting destructor'
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void Init();
|
void Init();
|
||||||
void Destroy(MxBool p_fromDestructor);
|
void Destroy(MxBool p_fromDestructor);
|
||||||
@ -36,7 +40,4 @@ protected:
|
|||||||
undefined m_unk0x38[4];
|
undefined m_unk0x38[4];
|
||||||
};
|
};
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x100ae7b0
|
|
||||||
// MxSoundManager::`scalar deleting destructor'
|
|
||||||
|
|
||||||
#endif // MXSOUNDMANAGER_H
|
#endif // MXSOUNDMANAGER_H
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#ifndef MXVIDEOMANAGER_H
|
#ifndef MXVIDEOMANAGER_H
|
||||||
#define MXVIDEOMANAGER_H
|
#define MXVIDEOMANAGER_H
|
||||||
|
|
||||||
#include "mxmediamanager.h"
|
#include "mxpresentationmanager.h"
|
||||||
#include "mxvideoparam.h"
|
#include "mxvideoparam.h"
|
||||||
|
|
||||||
#include <d3d.h>
|
#include <d3d.h>
|
||||||
@ -11,8 +11,9 @@ class MxRect32;
|
|||||||
class MxRegion;
|
class MxRegion;
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100dc810
|
// VTABLE: LEGO1 0x100dc810
|
||||||
|
// VTABLE: BETA10 0x101c1bf8
|
||||||
// SIZE 0x64
|
// SIZE 0x64
|
||||||
class MxVideoManager : public MxMediaManager {
|
class MxVideoManager : public MxPresentationManager {
|
||||||
public:
|
public:
|
||||||
MxVideoManager();
|
MxVideoManager();
|
||||||
~MxVideoManager() override;
|
~MxVideoManager() override;
|
||||||
@ -48,6 +49,7 @@ public:
|
|||||||
MxRegion* GetRegion() { return this->m_region; }
|
MxRegion* GetRegion() { return this->m_region; }
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x100be280
|
// SYNTHETIC: LEGO1 0x100be280
|
||||||
|
// SYNTHETIC: BETA10 0x1012de00
|
||||||
// MxVideoManager::`scalar deleting destructor'
|
// MxVideoManager::`scalar deleting destructor'
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
@ -3,27 +3,32 @@
|
|||||||
DECOMP_SIZE_ASSERT(MxAudioManager, 0x30);
|
DECOMP_SIZE_ASSERT(MxAudioManager, 0x30);
|
||||||
|
|
||||||
// GLOBAL: LEGO1 0x10102108
|
// GLOBAL: LEGO1 0x10102108
|
||||||
|
// GLOBAL: BETA10 0x10203a60
|
||||||
MxS32 MxAudioManager::g_count = 0;
|
MxS32 MxAudioManager::g_count = 0;
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8d00
|
// FUNCTION: LEGO1 0x100b8d00
|
||||||
|
// FUNCTION: BETA10 0x10144e90
|
||||||
MxAudioManager::MxAudioManager()
|
MxAudioManager::MxAudioManager()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8d90
|
// FUNCTION: LEGO1 0x100b8d90
|
||||||
|
// STUB: BETA10 0x10144f07
|
||||||
MxAudioManager::~MxAudioManager()
|
MxAudioManager::~MxAudioManager()
|
||||||
{
|
{
|
||||||
Destroy(TRUE);
|
Destroy(TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8df0
|
// FUNCTION: LEGO1 0x100b8df0
|
||||||
|
// FUNCTION: BETA10 0x10144f79
|
||||||
void MxAudioManager::Init()
|
void MxAudioManager::Init()
|
||||||
{
|
{
|
||||||
m_volume = 100;
|
m_volume = 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8e00
|
// FUNCTION: LEGO1 0x100b8e00
|
||||||
|
// FUNCTION: BETA10 0x10144f9c
|
||||||
void MxAudioManager::Destroy(MxBool p_fromDestructor)
|
void MxAudioManager::Destroy(MxBool p_fromDestructor)
|
||||||
{
|
{
|
||||||
ENTER(m_criticalSection);
|
ENTER(m_criticalSection);
|
||||||
@ -32,17 +37,49 @@ void MxAudioManager::Destroy(MxBool p_fromDestructor)
|
|||||||
m_criticalSection.Leave();
|
m_criticalSection.Leave();
|
||||||
|
|
||||||
if (!p_fromDestructor) {
|
if (!p_fromDestructor) {
|
||||||
MxMediaManager::Destroy();
|
MxPresentationManager::Destroy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef BETA10
|
||||||
|
// FUNCTION: BETA10 0x10144ffe
|
||||||
|
MxResult MxAudioManager::Create()
|
||||||
|
{
|
||||||
|
MxResult result = FAILURE;
|
||||||
|
MxBool success = FALSE;
|
||||||
|
|
||||||
|
if (MxPresentationManager::Create() != SUCCESS) {
|
||||||
|
goto exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
ENTER(m_criticalSection);
|
||||||
|
success = TRUE;
|
||||||
|
|
||||||
|
if (!g_count++) {
|
||||||
|
// This is correct. It was likely refactored later.
|
||||||
|
}
|
||||||
|
|
||||||
|
exit:
|
||||||
|
result = SUCCESS;
|
||||||
|
|
||||||
|
if (result) {
|
||||||
|
Destroy();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (success) {
|
||||||
|
m_criticalSection.Leave();
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
#else
|
||||||
// FUNCTION: LEGO1 0x100b8e40
|
// FUNCTION: LEGO1 0x100b8e40
|
||||||
MxResult MxAudioManager::Create()
|
MxResult MxAudioManager::Create()
|
||||||
{
|
{
|
||||||
MxResult result = FAILURE;
|
MxResult result = FAILURE;
|
||||||
MxBool success = FALSE;
|
MxBool success = FALSE;
|
||||||
|
|
||||||
if (MxMediaManager::Create() == SUCCESS) {
|
if (MxPresentationManager::Create() == SUCCESS) {
|
||||||
ENTER(m_criticalSection);
|
ENTER(m_criticalSection);
|
||||||
success = TRUE;
|
success = TRUE;
|
||||||
result = SUCCESS;
|
result = SUCCESS;
|
||||||
@ -59,14 +96,17 @@ MxResult MxAudioManager::Create()
|
|||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8e90
|
// FUNCTION: LEGO1 0x100b8e90
|
||||||
|
// FUNCTION: BETA10 0x101450a7
|
||||||
void MxAudioManager::Destroy()
|
void MxAudioManager::Destroy()
|
||||||
{
|
{
|
||||||
Destroy(FALSE);
|
Destroy(FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8ea0
|
// FUNCTION: LEGO1 0x100b8ea0
|
||||||
|
// FUNCTION: BETA10 0x101450c7
|
||||||
void MxAudioManager::SetVolume(MxS32 p_volume)
|
void MxAudioManager::SetVolume(MxS32 p_volume)
|
||||||
{
|
{
|
||||||
ENTER(m_criticalSection);
|
ENTER(m_criticalSection);
|
||||||
|
@ -23,18 +23,21 @@ MxS32 g_volumeAttenuation[100] = {-6643, -5643, -5058, -4643, -4321, -4058, -383
|
|||||||
-43, -29, -14, 0};
|
-43, -29, -14, 0};
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100ae740
|
// FUNCTION: LEGO1 0x100ae740
|
||||||
|
// FUNCTION: BETA10 0x10132c70
|
||||||
MxSoundManager::MxSoundManager()
|
MxSoundManager::MxSoundManager()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100ae7d0
|
// FUNCTION: LEGO1 0x100ae7d0
|
||||||
|
// FUNCTION: BETA10 0x10132ce7
|
||||||
MxSoundManager::~MxSoundManager()
|
MxSoundManager::~MxSoundManager()
|
||||||
{
|
{
|
||||||
Destroy(TRUE);
|
Destroy(TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100ae830
|
// FUNCTION: LEGO1 0x100ae830
|
||||||
|
// FUNCTION: BETA10 0x10132d59
|
||||||
void MxSoundManager::Init()
|
void MxSoundManager::Init()
|
||||||
{
|
{
|
||||||
m_directSound = NULL;
|
m_directSound = NULL;
|
||||||
@ -42,6 +45,7 @@ void MxSoundManager::Init()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100ae840
|
// FUNCTION: LEGO1 0x100ae840
|
||||||
|
// FUNCTION: BETA10 0x10132d89
|
||||||
void MxSoundManager::Destroy(MxBool p_fromDestructor)
|
void MxSoundManager::Destroy(MxBool p_fromDestructor)
|
||||||
{
|
{
|
||||||
if (m_thread) {
|
if (m_thread) {
|
||||||
@ -156,12 +160,14 @@ done:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100aeab0
|
// FUNCTION: LEGO1 0x100aeab0
|
||||||
|
// FUNCTION: BETA10 0x101331e3
|
||||||
void MxSoundManager::Destroy()
|
void MxSoundManager::Destroy()
|
||||||
{
|
{
|
||||||
Destroy(FALSE);
|
Destroy(FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100aeac0
|
// FUNCTION: LEGO1 0x100aeac0
|
||||||
|
// FUNCTION: BETA10 0x10133203
|
||||||
void MxSoundManager::SetVolume(MxS32 p_volume)
|
void MxSoundManager::SetVolume(MxS32 p_volume)
|
||||||
{
|
{
|
||||||
MxAudioManager::SetVolume(p_volume);
|
MxAudioManager::SetVolume(p_volume);
|
||||||
@ -179,6 +185,7 @@ void MxSoundManager::SetVolume(MxS32 p_volume)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100aebd0
|
// FUNCTION: LEGO1 0x100aebd0
|
||||||
|
// FUNCTION: BETA10 0x101332cf
|
||||||
MxPresenter* MxSoundManager::FindPresenter(const MxAtomId& p_atomId, MxU32 p_objectId)
|
MxPresenter* MxSoundManager::FindPresenter(const MxAtomId& p_atomId, MxU32 p_objectId)
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
@ -187,8 +194,7 @@ MxPresenter* MxSoundManager::FindPresenter(const MxAtomId& p_atomId, MxU32 p_obj
|
|||||||
MxPresenterListCursor cursor(m_presenters);
|
MxPresenterListCursor cursor(m_presenters);
|
||||||
|
|
||||||
while (cursor.Next(presenter)) {
|
while (cursor.Next(presenter)) {
|
||||||
if (presenter->GetAction()->GetAtomId().GetInternal() == p_atomId.GetInternal() &&
|
if (presenter->GetAction()->GetAtomId() == p_atomId && presenter->GetAction()->GetObjectId() == p_objectId) {
|
||||||
presenter->GetAction()->GetObjectId() == p_objectId) {
|
|
||||||
return presenter;
|
return presenter;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -131,6 +131,7 @@ done:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b5bc0
|
// FUNCTION: LEGO1 0x100b5bc0
|
||||||
|
// STUB: BETA10 0x1013623c
|
||||||
void MxMediaPresenter::EndAction()
|
void MxMediaPresenter::EndAction()
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#include "mxmediamanager.h"
|
#include "mxpresentationmanager.h"
|
||||||
|
|
||||||
#include "decomp.h"
|
#include "decomp.h"
|
||||||
#include "mxautolock.h"
|
#include "mxautolock.h"
|
||||||
@ -6,24 +6,27 @@
|
|||||||
#include "mxpresenter.h"
|
#include "mxpresenter.h"
|
||||||
#include "mxticklemanager.h"
|
#include "mxticklemanager.h"
|
||||||
|
|
||||||
DECOMP_SIZE_ASSERT(MxMediaManager, 0x2c);
|
DECOMP_SIZE_ASSERT(MxPresentationManager, 0x2c);
|
||||||
DECOMP_SIZE_ASSERT(MxPresenterList, 0x18);
|
DECOMP_SIZE_ASSERT(MxPresenterList, 0x18);
|
||||||
DECOMP_SIZE_ASSERT(MxPresenterListCursor, 0x10);
|
DECOMP_SIZE_ASSERT(MxPresenterListCursor, 0x10);
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b84c0
|
// FUNCTION: LEGO1 0x100b84c0
|
||||||
MxMediaManager::MxMediaManager()
|
// FUNCTION: BETA10 0x10144680
|
||||||
|
MxPresentationManager::MxPresentationManager()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8560
|
// FUNCTION: LEGO1 0x100b8560
|
||||||
MxMediaManager::~MxMediaManager()
|
// FUNCTION: BETA10 0x10144712
|
||||||
|
MxPresentationManager::~MxPresentationManager()
|
||||||
{
|
{
|
||||||
Destroy();
|
Destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b85d0
|
// FUNCTION: LEGO1 0x100b85d0
|
||||||
MxResult MxMediaManager::Init()
|
// FUNCTION: BETA10 0x1014479b
|
||||||
|
MxResult MxPresentationManager::Init()
|
||||||
{
|
{
|
||||||
this->m_presenters = NULL;
|
this->m_presenters = NULL;
|
||||||
this->m_thread = NULL;
|
this->m_thread = NULL;
|
||||||
@ -31,8 +34,10 @@ MxResult MxMediaManager::Init()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b85e0
|
// FUNCTION: LEGO1 0x100b85e0
|
||||||
MxResult MxMediaManager::Create()
|
// FUNCTION: BETA10 0x101447c5
|
||||||
|
MxResult MxPresentationManager::Create()
|
||||||
{
|
{
|
||||||
|
// This validates the name of the source code file (and hence also the name of the class)
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
|
|
||||||
this->m_presenters = new MxPresenterList;
|
this->m_presenters = new MxPresenterList;
|
||||||
@ -46,7 +51,8 @@ MxResult MxMediaManager::Create()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8710
|
// FUNCTION: LEGO1 0x100b8710
|
||||||
void MxMediaManager::Destroy()
|
// FUNCTION: BETA10 0x101448e4
|
||||||
|
void MxPresentationManager::Destroy()
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
|
|
||||||
@ -58,7 +64,8 @@ void MxMediaManager::Destroy()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8790
|
// FUNCTION: LEGO1 0x100b8790
|
||||||
MxResult MxMediaManager::Tickle()
|
// FUNCTION: BETA10 0x10144993
|
||||||
|
MxResult MxPresentationManager::Tickle()
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
MxPresenter* presenter;
|
MxPresenter* presenter;
|
||||||
@ -78,7 +85,8 @@ MxResult MxMediaManager::Tickle()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b88c0
|
// FUNCTION: LEGO1 0x100b88c0
|
||||||
void MxMediaManager::RegisterPresenter(MxPresenter& p_presenter)
|
// FUNCTION: BETA10 0x10144a8b
|
||||||
|
void MxPresentationManager::RegisterPresenter(MxPresenter& p_presenter)
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
|
|
||||||
@ -86,7 +94,8 @@ void MxMediaManager::RegisterPresenter(MxPresenter& p_presenter)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8980
|
// FUNCTION: LEGO1 0x100b8980
|
||||||
void MxMediaManager::UnregisterPresenter(MxPresenter& p_presenter)
|
// FUNCTION: BETA10 0x10144b0c
|
||||||
|
void MxPresentationManager::UnregisterPresenter(MxPresenter& p_presenter)
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
MxPresenterListCursor cursor(this->m_presenters);
|
MxPresenterListCursor cursor(this->m_presenters);
|
||||||
@ -97,7 +106,8 @@ void MxMediaManager::UnregisterPresenter(MxPresenter& p_presenter)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100b8ac0
|
// FUNCTION: LEGO1 0x100b8ac0
|
||||||
void MxMediaManager::StopPresenters()
|
// FUNCTION: BETA10 0x10144bc3
|
||||||
|
void MxPresentationManager::StopPresenters()
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
MxPresenter* presenter;
|
MxPresenter* presenter;
|
@ -35,7 +35,7 @@ void MxEventManager::Destroy(MxBool p_fromDestructor)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!p_fromDestructor) {
|
if (!p_fromDestructor) {
|
||||||
MxMediaManager::Destroy();
|
MxPresentationManager::Destroy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,7 +45,7 @@ MxResult MxEventManager::Create(MxU32 p_frequencyMS, MxBool p_createThread)
|
|||||||
MxResult status = FAILURE;
|
MxResult status = FAILURE;
|
||||||
MxBool locked = FALSE;
|
MxBool locked = FALSE;
|
||||||
|
|
||||||
MxResult result = MxMediaManager::Create();
|
MxResult result = MxPresentationManager::Create();
|
||||||
if (result == SUCCESS) {
|
if (result == SUCCESS) {
|
||||||
if (p_createThread) {
|
if (p_createThread) {
|
||||||
ENTER(this->m_criticalSection);
|
ENTER(this->m_criticalSection);
|
||||||
|
@ -19,17 +19,20 @@ MxVideoManager::MxVideoManager()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100be270
|
// FUNCTION: LEGO1 0x100be270
|
||||||
|
// FUNCTION: BETA10 0x1012dde0
|
||||||
void MxVideoManager::UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height)
|
void MxVideoManager::UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100be2a0
|
// FUNCTION: LEGO1 0x100be2a0
|
||||||
|
// FUNCTION: BETA10 0x1012cad8
|
||||||
MxVideoManager::~MxVideoManager()
|
MxVideoManager::~MxVideoManager()
|
||||||
{
|
{
|
||||||
Destroy(TRUE);
|
Destroy(TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100be320
|
// FUNCTION: LEGO1 0x100be320
|
||||||
|
// FUNCTION: BETA10 0x1012cb66
|
||||||
MxResult MxVideoManager::Init()
|
MxResult MxVideoManager::Init()
|
||||||
{
|
{
|
||||||
m_pDirectDraw = NULL;
|
m_pDirectDraw = NULL;
|
||||||
@ -42,6 +45,7 @@ MxResult MxVideoManager::Init()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100be340
|
// FUNCTION: LEGO1 0x100be340
|
||||||
|
// FUNCTION: BETA10 0x1012cbca
|
||||||
void MxVideoManager::Destroy(MxBool p_fromDestructor)
|
void MxVideoManager::Destroy(MxBool p_fromDestructor)
|
||||||
{
|
{
|
||||||
if (m_thread) {
|
if (m_thread) {
|
||||||
@ -79,7 +83,7 @@ void MxVideoManager::Destroy(MxBool p_fromDestructor)
|
|||||||
m_criticalSection.Leave();
|
m_criticalSection.Leave();
|
||||||
|
|
||||||
if (!p_fromDestructor) {
|
if (!p_fromDestructor) {
|
||||||
MxMediaManager::Destroy();
|
MxPresentationManager::Destroy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -132,6 +136,7 @@ void MxVideoManager::SortPresenterList()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100be600
|
// FUNCTION: LEGO1 0x100be600
|
||||||
|
// STUB: BETA10 0x1012cfbc
|
||||||
MxResult MxVideoManager::VTable0x28(
|
MxResult MxVideoManager::VTable0x28(
|
||||||
MxVideoParam& p_videoParam,
|
MxVideoParam& p_videoParam,
|
||||||
LPDIRECTDRAW p_pDirectDraw,
|
LPDIRECTDRAW p_pDirectDraw,
|
||||||
@ -148,7 +153,7 @@ MxResult MxVideoManager::VTable0x28(
|
|||||||
|
|
||||||
m_unk0x60 = FALSE;
|
m_unk0x60 = FALSE;
|
||||||
|
|
||||||
if (MxMediaManager::Create() != SUCCESS) {
|
if (MxPresentationManager::Create() != SUCCESS) {
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -214,6 +219,7 @@ done:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100be820
|
// FUNCTION: LEGO1 0x100be820
|
||||||
|
// STUB: BETA10 0x1012d3f1
|
||||||
MxResult MxVideoManager::Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread)
|
MxResult MxVideoManager::Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread)
|
||||||
{
|
{
|
||||||
MxBool locked = FALSE;
|
MxBool locked = FALSE;
|
||||||
@ -221,7 +227,7 @@ MxResult MxVideoManager::Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS,
|
|||||||
|
|
||||||
m_unk0x60 = TRUE;
|
m_unk0x60 = TRUE;
|
||||||
|
|
||||||
if (MxMediaManager::Create() != SUCCESS) {
|
if (MxPresentationManager::Create() != SUCCESS) {
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -292,6 +298,7 @@ done:
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100bea50
|
// FUNCTION: LEGO1 0x100bea50
|
||||||
|
// FUNCTION: BETA10 0x1012d85f
|
||||||
void MxVideoManager::Destroy()
|
void MxVideoManager::Destroy()
|
||||||
{
|
{
|
||||||
Destroy(FALSE);
|
Destroy(FALSE);
|
||||||
@ -310,6 +317,7 @@ void MxVideoManager::InvalidateRect(MxRect32& p_rect)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100bea90
|
// FUNCTION: LEGO1 0x100bea90
|
||||||
|
// FUNCTION: BETA10 0x1012d8e3
|
||||||
MxResult MxVideoManager::Tickle()
|
MxResult MxVideoManager::Tickle()
|
||||||
{
|
{
|
||||||
AUTOLOCK(m_criticalSection);
|
AUTOLOCK(m_criticalSection);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user