Implement a few LegoVideoManager/MxDisplaySurface functions (#364)

* implement a few functions

* fixes

* Fixes

* Add annotations

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
Misha
2023-12-26 17:20:20 -05:00
committed by GitHub
parent e824e321e8
commit ceca2aac31
5 changed files with 123 additions and 9 deletions

View File

@@ -2,6 +2,7 @@
#define LEGO3DVIEW_H
#include "mxtypes.h"
#include "tgl/d3drm/impl.h"
#include "viewmanager/viewmanager.h"
class LegoROI;
@@ -9,11 +10,18 @@ class LegoROI;
class Lego3DView {
public:
inline ViewManager* GetViewManager() { return this->m_viewManager; }
inline TglImpl::ViewImpl* GetViewPort() { return this->m_viewPort; }
LegoROI* PickROI(MxLong p_a, MxLong p_b);
private:
char m_pad[0x88];
ViewManager* m_viewManager;
// TODO: all of these fields are in various base classes
undefined4 m_vtable; // 0x0 (TODO: remove once virtual function added)
undefined4 m_unk0x4; // 0x4
TglImpl::RendererImpl* m_renderImpl; // 0x8
TglImpl::DeviceImpl* m_deviceImpl; // 0xc
TglImpl::ViewImpl* m_viewPort; // 0x10
char m_pad[0x78]; // 0x14
ViewManager* m_viewManager; // 0x88
};
#endif // LEGO3DVIEW_H