ImplementationData methods and typedefs

This commit is contained in:
disinvite 2025-04-18 15:59:29 -04:00
parent 451fd63eee
commit e84abc3fe4

View File

@ -95,7 +95,11 @@ class RendererImpl : public Renderer {
return m_data->CreateTextureFromSurface(pSurface, pTexture2); return m_data->CreateTextureFromSurface(pSurface, pTexture2);
} }
IDirect3DRM2* ImplementationData() const { return m_data; } typedef IDirect3DRM2* RendererDataType;
const RendererDataType& ImplementationData() const { return m_data; }
RendererDataType& ImplementationData() { return m_data; }
public: public:
inline Result Create(); inline Result Create();
@ -103,7 +107,7 @@ class RendererImpl : public Renderer {
inline Result CreateLight(LightType type, float r, float g, float b, LightImpl& rLight); inline Result CreateLight(LightType type, float r, float g, float b, LightImpl& rLight);
private: private:
IDirect3DRM2* m_data; RendererDataType m_data;
}; };
extern IDirect3DRM2* g_pD3DRM; extern IDirect3DRM2* g_pD3DRM;
@ -154,7 +158,14 @@ class DeviceImpl : public Device {
void HandleActivate(WORD) override; void HandleActivate(WORD) override;
void HandlePaint(HDC) override; void HandlePaint(HDC) override;
IDirect3DRMDevice2* ImplementationData() const { return m_data; } typedef IDirect3DRMDevice2* DeviceDataType;
// FUNCTION: BETA10 0x101708e0
const DeviceDataType& ImplementationData() const { return m_data; }
// FUNCTION: BETA10 0x100d95
DeviceDataType& ImplementationData() { return m_data; }
void SetImplementationData(IDirect3DRMDevice2* device) { m_data = device; } void SetImplementationData(IDirect3DRMDevice2* device) { m_data = device; }
inline void Destroy(); inline void Destroy();
@ -162,7 +173,7 @@ class DeviceImpl : public Device {
friend class RendererImpl; friend class RendererImpl;
private: private:
IDirect3DRMDevice2* m_data; DeviceDataType m_data;
}; };
// FUNCTION: BETA10 0x101708c0 // FUNCTION: BETA10 0x101708c0
@ -220,7 +231,12 @@ class ViewImpl : public View {
int& rPickedGroupCount int& rPickedGroupCount
) override; ) override;
IDirect3DRMViewport* ImplementationData() const { return m_data; } typedef IDirect3DRMViewport* ViewDataType;
// FUNCTION: BETA10 0x101711c0
const ViewDataType& ImplementationData() const { return m_data; }
ViewDataType& ImplementationData() { return m_data; }
void SetImplementationData(IDirect3DRMViewport* viewport) { m_data = viewport; } void SetImplementationData(IDirect3DRMViewport* viewport) { m_data = viewport; }
static Result ViewportCreateAppData(IDirect3DRM2*, IDirect3DRMViewport*, IDirect3DRMFrame2*); static Result ViewportCreateAppData(IDirect3DRM2*, IDirect3DRMViewport*, IDirect3DRMFrame2*);
@ -242,7 +258,7 @@ class ViewImpl : public View {
friend class RendererImpl; friend class RendererImpl;
private: private:
IDirect3DRMViewport* m_data; ViewDataType m_data;
}; };
// FUNCTION: BETA10 0x101711a0 // FUNCTION: BETA10 0x101711a0
@ -275,14 +291,20 @@ class CameraImpl : public Camera {
// vtable+0x08 // vtable+0x08
Result SetTransformation(FloatMatrix4&) override; Result SetTransformation(FloatMatrix4&) override;
IDirect3DRMFrame2* ImplementationData() const { return m_data; } typedef IDirect3DRMFrame2* CameraDataType;
// FUNCTION: BETA10 0x10170960
const CameraDataType& ImplementationData() const { return m_data; }
// FUNCTION: BETA10 0x10170980
CameraDataType& ImplementationData() { return m_data; }
inline void Destroy(); inline void Destroy();
friend class RendererImpl; friend class RendererImpl;
private: private:
IDirect3DRMFrame2* m_data; CameraDataType m_data;
}; };
// FUNCTION: BETA10 0x10170940 // FUNCTION: BETA10 0x10170940
@ -318,7 +340,10 @@ class LightImpl : public Light {
typedef IDirect3DRMFrame2* LightDataType; typedef IDirect3DRMFrame2* LightDataType;
// FUNCTION: BETA10 0x10171b90
const LightDataType& ImplementationData() const { return m_data; } const LightDataType& ImplementationData() const { return m_data; }
// FUNCTION: BETA10 0x10171240
LightDataType& ImplementationData() { return m_data; } LightDataType& ImplementationData() { return m_data; }
inline void Destroy(); inline void Destroy();
@ -376,7 +401,10 @@ class MeshImpl : public Mesh {
typedef MeshData* MeshDataType; typedef MeshData* MeshDataType;
// FUNCTION: BETA10 0x10170420
const MeshDataType& ImplementationData() const { return m_data; } const MeshDataType& ImplementationData() const { return m_data; }
// FUNCTION: BETA10 0x10170440
MeshDataType& ImplementationData() { return m_data; } MeshDataType& ImplementationData() { return m_data; }
inline void Destroy(); inline void Destroy();
@ -433,14 +461,20 @@ class GroupImpl : public Group {
// vtable+0x30 // vtable+0x30
Result Bounds(D3DVECTOR* p_min, D3DVECTOR* p_max) override; Result Bounds(D3DVECTOR* p_min, D3DVECTOR* p_max) override;
IDirect3DRMFrame2* ImplementationData() const { return m_data; } typedef IDirect3DRMFrame2* GroupDataType;
// FUNCTION: BETA10 0x1016fc20
const GroupDataType& ImplementationData() const { return m_data; }
// FUNCTION: BETA10 0x1016fce0
GroupDataType& ImplementationData() { return m_data; }
inline void Destroy(); inline void Destroy();
friend class RendererImpl; friend class RendererImpl;
private: private:
IDirect3DRMFrame2* m_data; GroupDataType m_data;
}; };
// FUNCTION: BETA10 0x1016c2b0 // FUNCTION: BETA10 0x1016c2b0
@ -486,7 +520,10 @@ class MeshBuilderImpl : public MeshBuilder {
// vtable+0x10 // vtable+0x10
MeshBuilder* Clone() override; MeshBuilder* Clone() override;
IDirect3DRMMesh* ImplementationData() const { return m_data; } typedef IDirect3DRMMesh* MeshBuilderDataType;
const MeshBuilderDataType& ImplementationData() const { return m_data; }
MeshBuilderDataType& ImplementationData() { return m_data; }
inline void Destroy(); inline void Destroy();
@ -505,7 +542,7 @@ class MeshBuilderImpl : public MeshBuilder {
ShadingModel shadingModel ShadingModel shadingModel
); );
IDirect3DRMMesh* m_data; MeshBuilderDataType m_data;
}; };
// FUNCTION: BETA10 0x10170390 // FUNCTION: BETA10 0x10170390
@ -574,7 +611,14 @@ class TextureImpl : public Texture {
) override; ) override;
Result SetPalette(int entryCount, PaletteEntry* entries) override; Result SetPalette(int entryCount, PaletteEntry* entries) override;
IDirect3DRMTexture* ImplementationData() const { return m_data; } typedef IDirect3DRMTexture* TextureDataType;
// FUNCTION: BETA10 0x1016fd60
const TextureDataType& ImplementationData() const { return m_data; }
// FUNCTION: BETA10 0x1016fe20
TextureDataType& ImplementationData() { return m_data; }
void SetImplementation(IDirect3DRMTexture* pData) { m_data = pData; } void SetImplementation(IDirect3DRMTexture* pData) { m_data = pData; }
inline void Destroy(); inline void Destroy();
@ -584,7 +628,7 @@ class TextureImpl : public Texture {
static Result SetImage(IDirect3DRMTexture* pSelf, TglD3DRMIMAGE* pImage); static Result SetImage(IDirect3DRMTexture* pSelf, TglD3DRMIMAGE* pImage);
private: private:
IDirect3DRMTexture* m_data; TextureDataType m_data;
}; };
// FUNCTION: BETA10 0x1016fd40 // FUNCTION: BETA10 0x1016fd40