mirror of
https://github.com/isledecomp/isle-portable.git
synced 2025-03-26 22:49:41 -04:00
Add support for building x64 executables (#29)
* d3drm: store LPVOID data instead of DWORD * m_extraCharacterId is an integer, not a pointer * cmake: look for iniparser using config file first, then try our custom module file Our custom module file is still useful. My linux distro does not package the cmake files. * x86's stdcall becomes MS's x64 calling canvention * Fix 64-bit mxdsbuffer pointer arithmetic * Casting from void* to a smaller-sized integer needs an intermediate equally-sized integer * Don't cast address to scalar (this is fishy) * Add mingw64 build to the ci matrix * Ignore -Wdiscarded-qualifiers warning with const vtables * Ignore different 'const' qualifiers with MSVC * Create d3dxof import library for MSVC * DESCRIPTION in .def file(s) is deprecated * Assume mmx is supported on x64, require a test for x86 and disabled on other archs * 32- and 64-bit LEGO1.dll export different symbol names * Introduce d3drm_guid containing the guids of d3drm * Disable __wine_dbg_cdecl * Include d3drm directory with EXCLUDE_FROM_ALL * lego1 leaks d3drm headers * Add dxfile.h * Add 64-bit MSVC to the build matrix * cmake: using ISLE_USE_DX5 means going all-in * Load d3dxof.dll dynamically * cmake: don't emit a warning about bitness anymore
This commit is contained in:
parent
554a679dc0
commit
659a54b221
35 changed files with 844 additions and 154 deletions
.github/workflows
3rdparty/d3drm
CMakeLists.txtd3drm.cd3drm32.defd3drm64.defd3drm_guid.cd3drm_private.hd3drmwin.hd3dxof32.defd3dxof64.defdevice.cdyn_d3dxof.cdyn_d3dxof.hface.cframe.c
CMakeLists.txtinclude
light.cmaterial.cmeshbuilder.ctexture.cviewport.cwine
ISLE
LEGO1
23
.github/workflows/build.yml
vendored
23
.github/workflows/build.yml
vendored
|
@ -13,12 +13,18 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
toolchain:
|
||||
- { name: 'MSVC', shell: 'sh', setup-cmake: true, setup-ninja: true, setup-msvc: true }
|
||||
# TODO: Add back eventually, but exclude 3rdparty code from warnings as errors
|
||||
- { name: 'msys2 mingw32', shell: 'msys2 {0}', msystem: mingw32, msys-env: mingw-w64-i686, clang-tidy: true, werror: true, no-dx5-libs: true }
|
||||
# - { name: 'msys2 clang32', shell: 'msys2 {0}', msystem: clang32, msys-env: mingw-w64-clang-i686, clang-tidy: true, werror: true, no-dx5-libs: true }
|
||||
- { name: 'MSVC (32-bit)', shell: 'sh', setup-cmake: true, setup-ninja: true, setup-msvc: true, vc-arch: 'amd64_x86', dx5-libs: true, d3drm-from-wine: false }
|
||||
- { name: 'MSVC (64-bit)', shell: 'sh', setup-cmake: true, setup-ninja: true, setup-msvc: true, vc-arch: 'amd64', dx5-libs: false, d3drm-from-wine: true }
|
||||
- { name: 'msys2 mingw32', shell: 'msys2 {0}', msystem: mingw32, msys-env: mingw-w64-i686, clang-tidy: true, werror: true, dx5-libs: false, d3drm-from-wine: true }
|
||||
- { name: 'msys2 mingw64', shell: 'msys2 {0}', msystem: mingw64, msys-env: mingw-w64-x86_64, clang-tidy: true, werror: true, dx5-libs: false, d3drm-from-wine: true }
|
||||
# - { name: 'msys2 clang32', shell: 'msys2 {0}', msystem: clang32, msys-env: mingw-w64-clang-i686, clang-tidy: true, werror: true, dx5-libs: true, d3drm-from-wine: true }
|
||||
|
||||
steps:
|
||||
- name: Setup vcvars
|
||||
if: matrix.toolchain.setup-msvc
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: ${{ matrix.toolchain.vc-arch }}
|
||||
# Figure out how to build for 32-bit arch
|
||||
# - name: Set up SDL
|
||||
# id: sdl
|
||||
|
@ -45,12 +51,6 @@ jobs:
|
|||
if: matrix.toolchain.setup-ninja
|
||||
uses: ashutoshvarma/setup-ninja@master
|
||||
|
||||
- name: Setup vcvars
|
||||
if: matrix.toolchain.setup-msvc
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: amd64_x86 # Use the 64-bit x64-native cross tools to build 32-bit x86 code
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
|
@ -60,7 +60,8 @@ jobs:
|
|||
run: |
|
||||
cmake -S . -B build -GNinja \
|
||||
-DCMAKE_BUILD_TYPE=Debug \
|
||||
-DISLE_USE_DX5_LIBS=${{ !matrix.toolchain.no-dx5-libs }} \
|
||||
-DISLE_USE_DX5=${{ matrix.toolchain.dx5-libs }} \
|
||||
-DISLE_D3DRM_FROM_WINE=${{ matrix.toolchain.d3drm-from-wine }} \
|
||||
-DENABLE_CLANG_TIDY=${{ !!matrix.toolchain.clang-tidy }} \
|
||||
-DISLE_WERROR=${{ !!matrix.toolchain.werror }} \
|
||||
-Werror=dev
|
||||
|
|
49
3rdparty/d3drm/CMakeLists.txt
vendored
49
3rdparty/d3drm/CMakeLists.txt
vendored
|
@ -2,7 +2,35 @@ project(wine_d3drm LANGUAGES C)
|
|||
|
||||
set(CMAKE_C_CLANG_TIDY)
|
||||
|
||||
add_library(d3drm-wine SHARED EXCLUDE_FROM_ALL
|
||||
if(MSVC)
|
||||
# FIXME: this is wrong.
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
set(def "${CMAKE_CURRENT_SOURCE_DIR}/d3dxof32.def")
|
||||
else()
|
||||
set(def "${CMAKE_CURRENT_SOURCE_DIR}/d3dxof64.def")
|
||||
endif()
|
||||
set(imp "${CMAKE_CURRENT_BINARY_DIR}/d3dxof.lib")
|
||||
set(exp "${CMAKE_CURRENT_BINARY_DIR}/d3dxof.exp")
|
||||
add_custom_command(OUTPUT "${imp}" "${exp}"
|
||||
COMMAND "${CMAKE_AR}" "${CMAKE_STATIC_LINKER_FLAGS}" "/NOLOGO" "/DEF:${def}" "/OUT:${imp}"
|
||||
DEPENDS "${def}"
|
||||
)
|
||||
add_custom_target(d3dxof-implib DEPENDS "${imp}")
|
||||
target_sources(d3dxof-implib PRIVATE "${def}")
|
||||
add_library(d3dxof INTERFACE)
|
||||
target_link_libraries(d3dxof INTERFACE "${imp}")
|
||||
add_dependencies(d3dxof "d3dxof-implib")
|
||||
|
||||
add_library(d3drm_guid STATIC d3drm_guid.c)
|
||||
target_include_directories(d3drm_guid PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
||||
else()
|
||||
set(d3drm_guid)
|
||||
add_library(d3drm_guid INTERFACE)
|
||||
endif()
|
||||
|
||||
option(WINE_D3DRM_DYNAMIC_D3DXOF "Dynamic d3dxof" ON)
|
||||
|
||||
add_library(d3drm-wine SHARED
|
||||
d3drm.c
|
||||
d3drm_main.c
|
||||
d3drm_private.h
|
||||
|
@ -17,11 +45,22 @@ add_library(d3drm-wine SHARED EXCLUDE_FROM_ALL
|
|||
texture.c
|
||||
version.rc
|
||||
viewport.c
|
||||
|
||||
d3drm.def
|
||||
)
|
||||
target_include_directories(d3drm-wine SYSTEM INTERFACE "${CMAKE_CURRENT_LIST_DIR}/include")
|
||||
target_link_libraries(d3drm-wine PRIVATE d3dxof ddraw)
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
target_sources(d3drm-wine PRIVATE d3drm32.def)
|
||||
else()
|
||||
target_sources(d3drm-wine PRIVATE d3drm64.def)
|
||||
endif()
|
||||
if(WINE_D3DRM_DYNAMIC_D3DXOF)
|
||||
target_sources(d3drm-wine PRIVATE dyn_d3dxof.c dyn_d3dxof.h)
|
||||
target_compile_definitions(d3drm-wine PRIVATE DYNAMIC_D3DXOF)
|
||||
endif()
|
||||
|
||||
target_include_directories(d3drm-wine SYSTEM PUBLIC "${CMAKE_CURRENT_LIST_DIR}/include")
|
||||
if(NOT WINE_D3DRM_DYNAMIC_D3DXOF)
|
||||
target_link_libraries(d3drm-wine PRIVATE d3dxof)
|
||||
endif()
|
||||
target_link_libraries(d3drm-wine PRIVATE ddraw)
|
||||
set_property(TARGET d3drm-wine PROPERTY PREFIX "")
|
||||
set_property(TARGET d3drm-wine PROPERTY OUTPUT_NAME "d3drm")
|
||||
target_compile_definitions(d3drm-wine PRIVATE "__WINESRC__")
|
||||
|
|
16
3rdparty/d3drm/d3drm.c
vendored
16
3rdparty/d3drm/d3drm.c
vendored
|
@ -2145,7 +2145,11 @@ static HRESULT WINAPI d3drm3_Load(IDirect3DRM3 *iface, void *source, void *objec
|
|||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
#ifdef DYNAMIC_D3DXOF
|
||||
hr = DynamicDirectXFileCreate(&file);
|
||||
#else
|
||||
hr = DirectXFileCreate(&file);
|
||||
#endif
|
||||
if (hr != DXFILE_OK)
|
||||
goto end;
|
||||
|
||||
|
@ -2328,9 +2332,21 @@ HRESULT WINAPI Direct3DRMCreate(IDirect3DRM **d3drm)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRM_iface.lpVtbl = &d3drm1_vtbl;
|
||||
object->IDirect3DRM2_iface.lpVtbl = &d3drm2_vtbl;
|
||||
object->IDirect3DRM3_iface.lpVtbl = &d3drm3_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref1 = 1;
|
||||
object->iface_count = 1;
|
||||
|
||||
|
|
22
3rdparty/d3drm/d3drm64.def
vendored
Normal file
22
3rdparty/d3drm/d3drm64.def
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
EXPORTS
|
||||
D3DRMColorGetAlpha
|
||||
D3DRMColorGetBlue
|
||||
D3DRMColorGetGreen
|
||||
D3DRMColorGetRed
|
||||
D3DRMCreateColorRGB
|
||||
D3DRMCreateColorRGBA
|
||||
D3DRMMatrixFromQuaternion
|
||||
D3DRMQuaternionFromRotation
|
||||
D3DRMQuaternionMultiply
|
||||
D3DRMQuaternionSlerp
|
||||
D3DRMVectorAdd
|
||||
D3DRMVectorCrossProduct
|
||||
D3DRMVectorDotProduct
|
||||
D3DRMVectorModulus
|
||||
D3DRMVectorNormalize
|
||||
D3DRMVectorRandom
|
||||
D3DRMVectorReflect
|
||||
D3DRMVectorRotate
|
||||
D3DRMVectorScale
|
||||
D3DRMVectorSubtract
|
||||
Direct3DRMCreate
|
3
3rdparty/d3drm/d3drm_guid.c
vendored
Normal file
3
3rdparty/d3drm/d3drm_guid.c
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
#define INITGUID
|
||||
#include <d3drm.h>
|
||||
#include <d3drmwin.h>
|
6
3rdparty/d3drm/d3drm_private.h
vendored
6
3rdparty/d3drm/d3drm_private.h
vendored
|
@ -30,6 +30,10 @@
|
|||
#include "wine/debug.h"
|
||||
#include "wine/list.h"
|
||||
|
||||
#ifdef DYNAMIC_D3DXOF
|
||||
#include "dyn_d3dxof.h"
|
||||
#endif
|
||||
|
||||
struct d3drm_matrix
|
||||
{
|
||||
float _11, _12, _13, _14;
|
||||
|
@ -46,7 +50,7 @@ static inline struct d3drm_matrix *d3drm_matrix(D3DRMMATRIX4D m)
|
|||
struct d3drm_object
|
||||
{
|
||||
LONG ref;
|
||||
DWORD appdata;
|
||||
LPVOID appdata;
|
||||
struct list destroy_callbacks;
|
||||
const char *classname;
|
||||
char *name;
|
||||
|
|
4
3rdparty/d3drm/d3drmwin.h
vendored
4
3rdparty/d3drm/d3drmwin.h
vendored
|
@ -49,8 +49,8 @@ DECLARE_INTERFACE_(IDirect3DRMWinDevice,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
|
4
3rdparty/d3drm/d3dxof32.def
vendored
Normal file
4
3rdparty/d3drm/d3dxof32.def
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
LIBRARY d3dxof.dll
|
||||
|
||||
EXPORTS
|
||||
DirectXFileCreate@4
|
4
3rdparty/d3drm/d3dxof64.def
vendored
Normal file
4
3rdparty/d3drm/d3dxof64.def
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
LIBRARY d3dxof.dll
|
||||
|
||||
EXPORTS
|
||||
DirectXFileCreate
|
28
3rdparty/d3drm/device.c
vendored
28
3rdparty/d3drm/device.c
vendored
|
@ -471,7 +471,7 @@ static HRESULT WINAPI d3drm_device1_DeleteDestroyCallback(IDirect3DRMDevice *ifa
|
|||
return d3drm_device3_DeleteDestroyCallback(&device->IDirect3DRMDevice3_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_device3_SetAppData(IDirect3DRMDevice3 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_device3_SetAppData(IDirect3DRMDevice3 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMDevice3(iface);
|
||||
|
||||
|
@ -482,7 +482,7 @@ static HRESULT WINAPI d3drm_device3_SetAppData(IDirect3DRMDevice3 *iface, DWORD
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_device2_SetAppData(IDirect3DRMDevice2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_device2_SetAppData(IDirect3DRMDevice2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMDevice2(iface);
|
||||
|
||||
|
@ -491,7 +491,7 @@ static HRESULT WINAPI d3drm_device2_SetAppData(IDirect3DRMDevice2 *iface, DWORD
|
|||
return d3drm_device3_SetAppData(&device->IDirect3DRMDevice3_iface, data);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_device1_SetAppData(IDirect3DRMDevice *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_device1_SetAppData(IDirect3DRMDevice *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMDevice(iface);
|
||||
|
||||
|
@ -500,7 +500,7 @@ static HRESULT WINAPI d3drm_device1_SetAppData(IDirect3DRMDevice *iface, DWORD d
|
|||
return d3drm_device3_SetAppData(&device->IDirect3DRMDevice3_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_device3_GetAppData(IDirect3DRMDevice3 *iface)
|
||||
static LPVOID WINAPI d3drm_device3_GetAppData(IDirect3DRMDevice3 *iface)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMDevice3(iface);
|
||||
|
||||
|
@ -509,7 +509,7 @@ static DWORD WINAPI d3drm_device3_GetAppData(IDirect3DRMDevice3 *iface)
|
|||
return device->obj.appdata;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_device2_GetAppData(IDirect3DRMDevice2 *iface)
|
||||
static LPVOID WINAPI d3drm_device2_GetAppData(IDirect3DRMDevice2 *iface)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMDevice2(iface);
|
||||
|
||||
|
@ -518,7 +518,7 @@ static DWORD WINAPI d3drm_device2_GetAppData(IDirect3DRMDevice2 *iface)
|
|||
return d3drm_device3_GetAppData(&device->IDirect3DRMDevice3_iface);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_device1_GetAppData(IDirect3DRMDevice *iface)
|
||||
static LPVOID WINAPI d3drm_device1_GetAppData(IDirect3DRMDevice *iface)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMDevice(iface);
|
||||
|
||||
|
@ -1568,7 +1568,7 @@ static HRESULT WINAPI d3drm_device_win_DeleteDestroyCallback(IDirect3DRMWinDevic
|
|||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_device_win_SetAppData(IDirect3DRMWinDevice *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_device_win_SetAppData(IDirect3DRMWinDevice *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMWinDevice(iface);
|
||||
|
||||
|
@ -1577,7 +1577,7 @@ static HRESULT WINAPI d3drm_device_win_SetAppData(IDirect3DRMWinDevice *iface, D
|
|||
return d3drm_device3_SetAppData(&device->IDirect3DRMDevice3_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_device_win_GetAppData(IDirect3DRMWinDevice *iface)
|
||||
static LPVOID WINAPI d3drm_device_win_GetAppData(IDirect3DRMWinDevice *iface)
|
||||
{
|
||||
struct d3drm_device *device = impl_from_IDirect3DRMWinDevice(iface);
|
||||
|
||||
|
@ -1663,10 +1663,22 @@ HRESULT d3drm_device_create(struct d3drm_device **device, IDirect3DRM *d3drm)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMDevice_iface.lpVtbl = &d3drm_device1_vtbl;
|
||||
object->IDirect3DRMDevice2_iface.lpVtbl = &d3drm_device2_vtbl;
|
||||
object->IDirect3DRMDevice3_iface.lpVtbl = &d3drm_device3_vtbl;
|
||||
object->IDirect3DRMWinDevice_iface.lpVtbl = &d3drm_device_win_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->d3drm = d3drm;
|
||||
d3drm_object_init(&object->obj, classname);
|
||||
|
||||
|
|
32
3rdparty/d3drm/dyn_d3dxof.c
vendored
Normal file
32
3rdparty/d3drm/dyn_d3dxof.c
vendored
Normal file
|
@ -0,0 +1,32 @@
|
|||
#include "dyn_d3dxof.h"
|
||||
|
||||
static enum {
|
||||
DYN_D3DXOF_INIT = 0,
|
||||
DYN_D3DXOF_SUCCESS = 1,
|
||||
} g_dyn_d3dxof_state = DYN_D3DXOF_INIT;
|
||||
static HMODULE g_d3dxof;
|
||||
static HRESULT (STDAPICALLTYPE * g_DynamicDirectXFileCreate)(LPDIRECTXFILE *lplpDirectXFile);
|
||||
|
||||
static void init_dyn_d3d(void) {
|
||||
if (g_dyn_d3dxof_state == DYN_D3DXOF_SUCCESS) {
|
||||
return;
|
||||
}
|
||||
g_d3dxof = LoadLibraryA("d3dxof.dll");
|
||||
if (g_d3dxof == NULL) {
|
||||
MessageBoxA(NULL, "Cannot find d3dxof.dll", "Cannot find d3dxof.dll", MB_ICONERROR);
|
||||
abort();
|
||||
}
|
||||
g_DynamicDirectXFileCreate = (void*)GetProcAddress(g_d3dxof, "DirectXFileCreate");
|
||||
if (g_d3dxof == NULL) {
|
||||
MessageBoxA(NULL, "Missing symbols", "d3dxof.dll misses DirectXFileCreate", MB_ICONERROR);
|
||||
abort();
|
||||
}
|
||||
g_dyn_d3dxof_state = DYN_D3DXOF_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
STDAPI DynamicDirectXFileCreate(LPDIRECTXFILE *lplpDirectXFile)
|
||||
{
|
||||
init_dyn_d3d();
|
||||
return g_DynamicDirectXFileCreate(lplpDirectXFile);
|
||||
}
|
8
3rdparty/d3drm/dyn_d3dxof.h
vendored
Normal file
8
3rdparty/d3drm/dyn_d3dxof.h
vendored
Normal file
|
@ -0,0 +1,8 @@
|
|||
#ifndef __DYN_D3DXOF_H__
|
||||
#define __DYN_D3DXOF_H__
|
||||
|
||||
#include <dxfile.h>
|
||||
|
||||
STDAPI DynamicDirectXFileCreate(LPDIRECTXFILE *lplpDirectXFile);
|
||||
|
||||
#endif /* __DYN_D3DXOF_H__ */
|
20
3rdparty/d3drm/face.c
vendored
20
3rdparty/d3drm/face.c
vendored
|
@ -113,7 +113,7 @@ static HRESULT WINAPI d3drm_face1_DeleteDestroyCallback(IDirect3DRMFace *iface,
|
|||
return IDirect3DRMFace2_DeleteDestroyCallback(&face->IDirect3DRMFace2_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_face2_SetAppData(IDirect3DRMFace2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_face2_SetAppData(IDirect3DRMFace2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_face *face = impl_from_IDirect3DRMFace2(iface);
|
||||
|
||||
|
@ -124,7 +124,7 @@ static HRESULT WINAPI d3drm_face2_SetAppData(IDirect3DRMFace2 *iface, DWORD data
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_face1_SetAppData(IDirect3DRMFace *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_face1_SetAppData(IDirect3DRMFace *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_face *face = impl_from_IDirect3DRMFace(iface);
|
||||
|
||||
|
@ -133,7 +133,7 @@ static HRESULT WINAPI d3drm_face1_SetAppData(IDirect3DRMFace *iface, DWORD data)
|
|||
return d3drm_face2_SetAppData(&face->IDirect3DRMFace2_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_face2_GetAppData(IDirect3DRMFace2 *iface)
|
||||
static LPVOID WINAPI d3drm_face2_GetAppData(IDirect3DRMFace2 *iface)
|
||||
{
|
||||
struct d3drm_face *face = impl_from_IDirect3DRMFace2(iface);
|
||||
|
||||
|
@ -142,7 +142,7 @@ static DWORD WINAPI d3drm_face2_GetAppData(IDirect3DRMFace2 *iface)
|
|||
return face->obj.appdata;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_face1_GetAppData(IDirect3DRMFace *iface)
|
||||
static LPVOID WINAPI d3drm_face1_GetAppData(IDirect3DRMFace *iface)
|
||||
{
|
||||
struct d3drm_face *face = impl_from_IDirect3DRMFace(iface);
|
||||
|
||||
|
@ -627,8 +627,20 @@ HRESULT d3drm_face_create(struct d3drm_face **face)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMFace_iface.lpVtbl = &d3drm_face1_vtbl;
|
||||
object->IDirect3DRMFace2_iface.lpVtbl = &d3drm_face2_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref = 1;
|
||||
|
||||
d3drm_object_init(&object->obj, classname);
|
||||
|
|
80
3rdparty/d3drm/frame.c
vendored
80
3rdparty/d3drm/frame.c
vendored
|
@ -261,7 +261,19 @@ static struct d3drm_frame_array *d3drm_frame_array_create(unsigned int frame_cou
|
|||
if (!(array = calloc(1, sizeof(*array))))
|
||||
return NULL;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
array->IDirect3DRMFrameArray_iface.lpVtbl = &d3drm_frame_array_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
array->ref = 1;
|
||||
array->size = frame_count;
|
||||
|
||||
|
@ -379,7 +391,19 @@ static struct d3drm_visual_array *d3drm_visual_array_create(unsigned int visual_
|
|||
if (!(array = calloc(1, sizeof(*array))))
|
||||
return NULL;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
array->IDirect3DRMVisualArray_iface.lpVtbl = &d3drm_visual_array_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
array->ref = 1;
|
||||
array->size = visual_count;
|
||||
|
||||
|
@ -498,7 +522,19 @@ static struct d3drm_light_array *d3drm_light_array_create(unsigned int light_cou
|
|||
if (!(array = calloc(1, sizeof(*array))))
|
||||
return NULL;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
array->IDirect3DRMLightArray_iface.lpVtbl = &d3drm_light_array_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
array->ref = 1;
|
||||
array->size = light_count;
|
||||
|
||||
|
@ -733,7 +769,7 @@ static HRESULT WINAPI d3drm_frame1_DeleteDestroyCallback(IDirect3DRMFrame *iface
|
|||
return IDirect3DRMFrame3_DeleteDestroyCallback(&frame->IDirect3DRMFrame3_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_frame3_SetAppData(IDirect3DRMFrame3 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_frame3_SetAppData(IDirect3DRMFrame3 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface);
|
||||
|
||||
|
@ -744,7 +780,7 @@ static HRESULT WINAPI d3drm_frame3_SetAppData(IDirect3DRMFrame3 *iface, DWORD da
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_frame2_SetAppData(IDirect3DRMFrame2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_frame2_SetAppData(IDirect3DRMFrame2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface);
|
||||
|
||||
|
@ -753,7 +789,7 @@ static HRESULT WINAPI d3drm_frame2_SetAppData(IDirect3DRMFrame2 *iface, DWORD da
|
|||
return d3drm_frame3_SetAppData(&frame->IDirect3DRMFrame3_iface, data);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_frame1_SetAppData(IDirect3DRMFrame *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_frame1_SetAppData(IDirect3DRMFrame *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_frame *frame = impl_from_IDirect3DRMFrame(iface);
|
||||
|
||||
|
@ -762,7 +798,7 @@ static HRESULT WINAPI d3drm_frame1_SetAppData(IDirect3DRMFrame *iface, DWORD dat
|
|||
return d3drm_frame3_SetAppData(&frame->IDirect3DRMFrame3_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_frame3_GetAppData(IDirect3DRMFrame3 *iface)
|
||||
static LPVOID WINAPI d3drm_frame3_GetAppData(IDirect3DRMFrame3 *iface)
|
||||
{
|
||||
struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface);
|
||||
|
||||
|
@ -771,7 +807,7 @@ static DWORD WINAPI d3drm_frame3_GetAppData(IDirect3DRMFrame3 *iface)
|
|||
return frame->obj.appdata;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_frame2_GetAppData(IDirect3DRMFrame2 *iface)
|
||||
static LPVOID WINAPI d3drm_frame2_GetAppData(IDirect3DRMFrame2 *iface)
|
||||
{
|
||||
struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface);
|
||||
|
||||
|
@ -780,7 +816,7 @@ static DWORD WINAPI d3drm_frame2_GetAppData(IDirect3DRMFrame2 *iface)
|
|||
return d3drm_frame3_GetAppData(&frame->IDirect3DRMFrame3_iface);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_frame1_GetAppData(IDirect3DRMFrame *iface)
|
||||
static LPVOID WINAPI d3drm_frame1_GetAppData(IDirect3DRMFrame *iface)
|
||||
{
|
||||
struct d3drm_frame *frame = impl_from_IDirect3DRMFrame(iface);
|
||||
|
||||
|
@ -3137,9 +3173,21 @@ HRESULT d3drm_frame_create(struct d3drm_frame **frame, IUnknown *parent_frame, I
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMFrame_iface.lpVtbl = &d3drm_frame1_vtbl;
|
||||
object->IDirect3DRMFrame2_iface.lpVtbl = &d3drm_frame2_vtbl;
|
||||
object->IDirect3DRMFrame3_iface.lpVtbl = &d3drm_frame3_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->d3drm = d3drm;
|
||||
object->ref = 1;
|
||||
d3drm_set_color(&object->scenebackground, 0.0f, 0.0f, 0.0f, 1.0f);
|
||||
|
@ -3302,7 +3350,7 @@ static HRESULT WINAPI d3drm_animation1_DeleteDestroyCallback(IDirect3DRMAnimatio
|
|||
return IDirect3DRMAnimation2_DeleteDestroyCallback(&animation->IDirect3DRMAnimation2_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_animation2_SetAppData(IDirect3DRMAnimation2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_animation2_SetAppData(IDirect3DRMAnimation2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_animation *animation = impl_from_IDirect3DRMAnimation2(iface);
|
||||
|
||||
|
@ -3313,7 +3361,7 @@ static HRESULT WINAPI d3drm_animation2_SetAppData(IDirect3DRMAnimation2 *iface,
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_animation1_SetAppData(IDirect3DRMAnimation *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_animation1_SetAppData(IDirect3DRMAnimation *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_animation *animation = impl_from_IDirect3DRMAnimation(iface);
|
||||
|
||||
|
@ -3322,7 +3370,7 @@ static HRESULT WINAPI d3drm_animation1_SetAppData(IDirect3DRMAnimation *iface, D
|
|||
return d3drm_animation2_SetAppData(&animation->IDirect3DRMAnimation2_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_animation2_GetAppData(IDirect3DRMAnimation2 *iface)
|
||||
static LPVOID WINAPI d3drm_animation2_GetAppData(IDirect3DRMAnimation2 *iface)
|
||||
{
|
||||
struct d3drm_animation *animation = impl_from_IDirect3DRMAnimation2(iface);
|
||||
|
||||
|
@ -3331,7 +3379,7 @@ static DWORD WINAPI d3drm_animation2_GetAppData(IDirect3DRMAnimation2 *iface)
|
|||
return animation->obj.appdata;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_animation1_GetAppData(IDirect3DRMAnimation *iface)
|
||||
static LPVOID WINAPI d3drm_animation1_GetAppData(IDirect3DRMAnimation *iface)
|
||||
{
|
||||
struct d3drm_animation *animation = impl_from_IDirect3DRMAnimation(iface);
|
||||
|
||||
|
@ -3889,8 +3937,20 @@ HRESULT d3drm_animation_create(struct d3drm_animation **animation, IDirect3DRM *
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMAnimation_iface.lpVtbl = &d3drm_animation1_vtbl;
|
||||
object->IDirect3DRMAnimation2_iface.lpVtbl = &d3drm_animation2_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->d3drm = d3drm;
|
||||
object->ref = 1;
|
||||
object->options = D3DRMANIMATION_CLOSED | D3DRMANIMATION_LINEARPOSITION;
|
||||
|
|
4
3rdparty/d3drm/include/d3drmdef.h
vendored
4
3rdparty/d3drm/include/d3drmdef.h
vendored
|
@ -28,6 +28,10 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef __MSABI_LONG
|
||||
#define __MSABI_LONG(X) (X)
|
||||
#endif
|
||||
|
||||
typedef struct _D3DRMVECTOR4D
|
||||
{
|
||||
D3DVALUE x;
|
||||
|
|
136
3rdparty/d3drm/include/d3drmobj.h
vendored
136
3rdparty/d3drm/include/d3drmobj.h
vendored
|
@ -29,6 +29,10 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef INTERFACE
|
||||
#undef INTERFACE
|
||||
#endif
|
||||
|
||||
/* Direct3DRM object CLSIDs */
|
||||
|
||||
DEFINE_GUID(CLSID_CDirect3DRMDevice, 0x4fa3568e, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1);
|
||||
|
@ -205,8 +209,8 @@ DECLARE_INTERFACE_(IDirect3DRMObject,IUnknown)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -315,8 +319,8 @@ DECLARE_INTERFACE_(IDirect3DRMVisual,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -370,8 +374,8 @@ DECLARE_INTERFACE_(IDirect3DRMDevice,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -497,8 +501,8 @@ DECLARE_INTERFACE_(IDirect3DRMDevice2,IDirect3DRMDevice)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -642,8 +646,8 @@ DECLARE_INTERFACE_(IDirect3DRMDevice3,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -802,8 +806,8 @@ DECLARE_INTERFACE_(IDirect3DRMViewport,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -942,8 +946,8 @@ DECLARE_INTERFACE_(IDirect3DRMViewport2,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -1090,8 +1094,8 @@ DECLARE_INTERFACE_(IDirect3DRMFrame,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -1323,8 +1327,8 @@ DECLARE_INTERFACE_(IDirect3DRMFrame2,IDirect3DRMFrame)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -1605,8 +1609,8 @@ DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -1903,8 +1907,8 @@ DECLARE_INTERFACE_(IDirect3DRMMesh,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2018,8 +2022,8 @@ DECLARE_INTERFACE_(IDirect3DRMProgressiveMesh,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2128,8 +2132,8 @@ DECLARE_INTERFACE_(IDirect3DRMShadow,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2187,8 +2191,8 @@ DECLARE_INTERFACE_(IDirect3DRMShadow2,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2275,8 +2279,8 @@ DECLARE_INTERFACE_(IDirect3DRMFace,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2385,8 +2389,8 @@ DECLARE_INTERFACE_(IDirect3DRMFace2,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2495,8 +2499,8 @@ DECLARE_INTERFACE_(IDirect3DRMMeshBuilder,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2667,8 +2671,8 @@ DECLARE_INTERFACE_(IDirect3DRMMeshBuilder2,IDirect3DRMMeshBuilder)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -2848,8 +2852,8 @@ DECLARE_INTERFACE_(IDirect3DRMMeshBuilder3,IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3085,8 +3089,8 @@ DECLARE_INTERFACE_(IDirect3DRMLight,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3197,8 +3201,8 @@ DECLARE_INTERFACE_(IDirect3DRMTexture, IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3309,8 +3313,8 @@ DECLARE_INTERFACE_(IDirect3DRMTexture2, IDirect3DRMTexture)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3433,8 +3437,8 @@ DECLARE_INTERFACE_(IDirect3DRMTexture3, IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3569,8 +3573,8 @@ DECLARE_INTERFACE_(IDirect3DRMWrap, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3635,8 +3639,8 @@ DECLARE_INTERFACE_(IDirect3DRMMaterial, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3708,8 +3712,8 @@ DECLARE_INTERFACE_(IDirect3DRMMaterial2, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3787,8 +3791,8 @@ DECLARE_INTERFACE_(IDirect3DRMAnimation, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3866,8 +3870,8 @@ DECLARE_INTERFACE_(IDirect3DRMAnimation2, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -3960,8 +3964,8 @@ DECLARE_INTERFACE_(IDirect3DRMAnimationSet, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -4028,8 +4032,8 @@ DECLARE_INTERFACE_(IDirect3DRMAnimationSet2, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -4099,8 +4103,8 @@ DECLARE_INTERFACE_(IDirect3DRMUserVisual, IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -4560,8 +4564,8 @@ DECLARE_INTERFACE_(IDirect3DRMInterpolator, IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
@ -4633,8 +4637,8 @@ DECLARE_INTERFACE_(IDirect3DRMClippedVisual, IDirect3DRMVisual)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
|
4
3rdparty/d3drm/include/d3drmwin.h
vendored
4
3rdparty/d3drm/include/d3drmwin.h
vendored
|
@ -49,8 +49,8 @@ DECLARE_INTERFACE_(IDirect3DRMWinDevice,IDirect3DRMObject)
|
|||
STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE;
|
||||
STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
|
||||
STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetAppData)(THIS_ LPVOID data) PURE;
|
||||
STDMETHOD_(LPVOID, GetAppData)(THIS) PURE;
|
||||
STDMETHOD(SetName)(THIS_ const char *name) PURE;
|
||||
STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE;
|
||||
STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE;
|
||||
|
|
303
3rdparty/d3drm/include/dxfile.h
vendored
Normal file
303
3rdparty/d3drm/include/dxfile.h
vendored
Normal file
|
@ -0,0 +1,303 @@
|
|||
/*
|
||||
* Copyright 2004 Christian Costa
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#ifndef __WINE_DXFILE_H
|
||||
#define __WINE_DXFILE_H
|
||||
|
||||
#include <objbase.h>
|
||||
//#include <winnt.h>
|
||||
|
||||
#ifdef INTERFACE
|
||||
#undef INTERFACE
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* defined(__cplusplus) */
|
||||
|
||||
typedef DWORD DXFILEFORMAT;
|
||||
|
||||
#define DXFILEFORMAT_BINARY 0
|
||||
#define DXFILEFORMAT_TEXT 1
|
||||
#define DXFILEFORMAT_COMPRESSED 2
|
||||
|
||||
typedef DWORD DXFILELOADOPTIONS;
|
||||
|
||||
#define DXFILELOAD_FROMFILE __MSABI_LONG(0x00)
|
||||
#define DXFILELOAD_FROMRESOURCE __MSABI_LONG(0x01)
|
||||
#define DXFILELOAD_FROMMEMORY __MSABI_LONG(0x02)
|
||||
#define DXFILELOAD_FROMSTREAM __MSABI_LONG(0x04)
|
||||
#define DXFILELOAD_FROMURL __MSABI_LONG(0x08)
|
||||
|
||||
typedef struct _DXFILELOADRESOURCE {
|
||||
HMODULE hModule;
|
||||
LPCSTR /*LPCTSTR*/ lpName;
|
||||
LPCSTR /*LPCTSTR*/ lpType;
|
||||
} DXFILELOADRESOURCE, *LPDXFILELOADRESOURCE;
|
||||
|
||||
typedef struct _DXFILELOADMEMORY {
|
||||
LPVOID lpMemory;
|
||||
DWORD dSize;
|
||||
} DXFILELOADMEMORY, *LPDXFILELOADMEMORY;
|
||||
|
||||
typedef struct IDirectXFile *LPDIRECTXFILE;
|
||||
typedef struct IDirectXFileEnumObject *LPDIRECTXFILEENUMOBJECT;
|
||||
typedef struct IDirectXFileSaveObject *LPDIRECTXFILESAVEOBJECT;
|
||||
typedef struct IDirectXFileObject *LPDIRECTXFILEOBJECT;
|
||||
typedef struct IDirectXFileData *LPDIRECTXFILEDATA;
|
||||
typedef struct IDirectXFileDataReference *LPDIRECTXFILEDATAREFERENCE;
|
||||
typedef struct IDirectXFileBinary *LPDIRECTXFILEBINARY;
|
||||
|
||||
STDAPI DirectXFileCreate(LPDIRECTXFILE *lplpDirectXFile);
|
||||
|
||||
#define INTERFACE IDirectXFile
|
||||
DECLARE_INTERFACE_(IDirectXFile,IUnknown)
|
||||
{
|
||||
/*** IUnknown methods ***/
|
||||
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
/*** IDirectXFile methods ***/
|
||||
STDMETHOD(CreateEnumObject) (THIS_ LPVOID, DXFILELOADOPTIONS, LPDIRECTXFILEENUMOBJECT *) PURE;
|
||||
STDMETHOD(CreateSaveObject) (THIS_ LPCSTR, DXFILEFORMAT, LPDIRECTXFILESAVEOBJECT *) PURE;
|
||||
STDMETHOD(RegisterTemplates) (THIS_ LPVOID, DWORD) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFile_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFile_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFile_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFile methods ***/
|
||||
#define IDirectXFile_CreateEnumObject(p,a,b,c) (p)->lpVtbl->CreateEnumObject(p,a,b,c)
|
||||
#define IDirectXFile_CreateSaveObject(p,a,b,c) (p)->lpVtbl->CreateSaveObject(p,a,b,c)
|
||||
#define IDirectXFile_RegisterTemplates(p,a,b) (p)->lpVtbl->RegisterTemplates(p,a,b)
|
||||
#endif
|
||||
|
||||
#define INTERFACE IDirectXFileEnumObject
|
||||
DECLARE_INTERFACE_(IDirectXFileEnumObject,IUnknown)
|
||||
{
|
||||
/*** IUnknown methods ***/
|
||||
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
/*** IDirectXFileEnumObject methods ***/
|
||||
STDMETHOD(GetNextDataObject) (THIS_ LPDIRECTXFILEDATA *) PURE;
|
||||
STDMETHOD(GetDataObjectById) (THIS_ REFGUID, LPDIRECTXFILEDATA *) PURE;
|
||||
STDMETHOD(GetDataObjectByName) (THIS_ LPCSTR, LPDIRECTXFILEDATA *) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFileEnumObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFileEnumObject_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFileEnumObject_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFileEnumObject methods ***/
|
||||
#define IDirectXFileEnumObject_GetNextDataObject(p,a) (p)->lpVtbl->GetNextDataObject(p,a)
|
||||
#define IDirectXFileEnumObject_GetDataObjectById(p,a,b) (p)->lpVtbl->GetDataObjectById(p,a,b)
|
||||
#define IDirectXFileEnumObject_GetDataObjectByName(p,a,b) (p)->lpVtbl->GetDataObjectByName(p,a,b)
|
||||
#endif
|
||||
|
||||
#define INTERFACE IDirectXFileSaveObject
|
||||
DECLARE_INTERFACE_(IDirectXFileSaveObject,IUnknown)
|
||||
{
|
||||
/*** IUnknown methods ***/
|
||||
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
/*** IDirectXFileSaveObject methods ***/
|
||||
STDMETHOD(SaveTemplates) (THIS_ DWORD, const GUID **) PURE;
|
||||
STDMETHOD(CreateDataObject) (THIS_ REFGUID, LPCSTR, const GUID *, DWORD, LPVOID, LPDIRECTXFILEDATA *) PURE;
|
||||
STDMETHOD(SaveData) (THIS_ LPDIRECTXFILEDATA) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFileSaveObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFileSaveObject_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFileSaveObject_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFileSaveObject methods ***/
|
||||
#define IDirectXFileSaveObject_SaveTemplates(p,a,b) (p)->lpVtbl->SaveTemplates(p,a,b)
|
||||
#define IDirectXFileSaveObject_CreateDataObject(p,a,b,c,d,e,f) (p)->lpVtbl->CreateDataObject(p,a,b,c,d,e,f)
|
||||
#define IDirectXFileSaveObject_SaveData(p,a) (p)->lpVtbl->SaveData(p,a)
|
||||
#endif
|
||||
|
||||
#define IUNKNOWN_METHODS(kind) \
|
||||
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) kind; \
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) kind; \
|
||||
STDMETHOD_(ULONG,Release)(THIS) kind
|
||||
|
||||
#define IDIRECTXFILEOBJECT_METHODS(kind) \
|
||||
STDMETHOD(GetName) (THIS_ LPSTR, LPDWORD) kind; \
|
||||
STDMETHOD(GetId) (THIS_ LPGUID) kind
|
||||
|
||||
#define INTERFACE IDirectXFileObject
|
||||
DECLARE_INTERFACE_(IDirectXFileObject,IUnknown)
|
||||
{
|
||||
IUNKNOWN_METHODS(PURE);
|
||||
IDIRECTXFILEOBJECT_METHODS(PURE);
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFileObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFileObject_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFileObject_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFileObject methods ***/
|
||||
#define IDirectXFileObject_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
|
||||
#define IDirectXFileObject_GetId(p,a) (p)->lpVtbl->GetId(p,a)
|
||||
#endif
|
||||
|
||||
#define INTERFACE IDirectXFileData
|
||||
DECLARE_INTERFACE_(IDirectXFileData,IDirectXFileObject)
|
||||
{
|
||||
IUNKNOWN_METHODS(PURE);
|
||||
IDIRECTXFILEOBJECT_METHODS(PURE);
|
||||
/*** IDirectXFileData methods ***/
|
||||
STDMETHOD(GetData) (THIS_ LPCSTR, DWORD *, void **) PURE;
|
||||
STDMETHOD(GetType) (THIS_ const GUID **) PURE;
|
||||
STDMETHOD(GetNextObject) (THIS_ LPDIRECTXFILEOBJECT *) PURE;
|
||||
STDMETHOD(AddDataObject) (THIS_ LPDIRECTXFILEDATA) PURE;
|
||||
STDMETHOD(AddDataReference) (THIS_ LPCSTR, const GUID *) PURE;
|
||||
STDMETHOD(AddBinaryObject) (THIS_ LPCSTR, const GUID *, LPCSTR, LPVOID, DWORD) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFileData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFileData_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFileData_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFileObject methods ***/
|
||||
#define IDirectXFileData_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
|
||||
#define IDirectXFileData_GetId(p,a) (p)->lpVtbl->GetId(p,a)
|
||||
/*** IDirectXFileData methods ***/
|
||||
#define IDirectXFileData_GetData(p,a,b,c) (p)->lpVtbl->GetData(p,a,b,c)
|
||||
#define IDirectXFileData_GetType(p,a) (p)->lpVtbl->GetType(p,a)
|
||||
#define IDirectXFileData_GetNextObject(p,a) (p)->lpVtbl->GetNextObject(p,a)
|
||||
#define IDirectXFileData_AddDataObject(p,a) (p)->lpVtbl->AddDataObject(p,a)
|
||||
#define IDirectXFileData_AddDataReference(p,a,b) (p)->lpVtbl->AddDataReference(p,a,b)
|
||||
#define IDirectXFileData_AddBinaryObject(p,a,b,c,d,e) (p)->lpVtbl->AddBinaryObject(p,a,b,c,d,e)
|
||||
#endif
|
||||
|
||||
#define INTERFACE IDirectXFileDataReference
|
||||
DECLARE_INTERFACE_(IDirectXFileDataReference,IDirectXFileObject)
|
||||
{
|
||||
IUNKNOWN_METHODS(PURE);
|
||||
IDIRECTXFILEOBJECT_METHODS(PURE);
|
||||
/*** IDirectXFileDataReference methods ***/
|
||||
STDMETHOD(Resolve) (THIS_ LPDIRECTXFILEDATA *) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFileDataReference_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFileDataReference_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFileDataReference_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFileObject methods ***/
|
||||
#define IDirectXFileDataReference_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
|
||||
#define IDirectXFileDataReference_GetId(p,a) (p)->lpVtbl->GetId(p,a)
|
||||
/*** IDirectXFileDataReference methods ***/
|
||||
#define IDirectXFileDataReference_Resolve(p,a) (p)->lpVtbl->Resolve(p,a)
|
||||
#endif
|
||||
|
||||
#define INTERFACE IDirectXFileBinary
|
||||
DECLARE_INTERFACE_(IDirectXFileBinary,IDirectXFileObject)
|
||||
{
|
||||
IUNKNOWN_METHODS(PURE);
|
||||
IDIRECTXFILEOBJECT_METHODS(PURE);
|
||||
/*** IDirectXFileBinary methods ***/
|
||||
STDMETHOD(GetSize) (THIS_ DWORD *) PURE;
|
||||
STDMETHOD(GetMimeType) (THIS_ LPCSTR *) PURE;
|
||||
STDMETHOD(Read) (THIS_ LPVOID, DWORD, LPDWORD) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirectXFileBinary_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirectXFileBinary_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirectXFileBinary_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirectXFileObject methods ***/
|
||||
#define IDirectXFileBinary_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
|
||||
#define IDirectXFileBinary_GetId(p,a) (p)->lpVtbl->GetId(p,a)
|
||||
/*** IDirectXFileBinary methods ***/
|
||||
#define IDirectXFileBinary_GetSize(p,a) (p)->lpVtbl->GetSize(p,a)
|
||||
#define IDirectXFileBinary_GetMimeType(p,a) (p)->lpVtbl->GetMimeType(p,a)
|
||||
#define IDirectXFileBinary_Read(p,a,b,c) (p)->lpVtbl->Read(p,a,b,c)
|
||||
#endif
|
||||
|
||||
/* DirectXFile Object CLSID */
|
||||
DEFINE_GUID(CLSID_CDirectXFile, 0x4516ec43, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
|
||||
|
||||
/* DirectX File Interface GUIDs */
|
||||
DEFINE_GUID(IID_IDirectXFile, 0x3d82ab40, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
DEFINE_GUID(IID_IDirectXFileEnumObject, 0x3d82ab41, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
DEFINE_GUID(IID_IDirectXFileSaveObject, 0x3d82ab42, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
DEFINE_GUID(IID_IDirectXFileObject, 0x3d82ab43, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
DEFINE_GUID(IID_IDirectXFileData, 0x3d82ab44, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
DEFINE_GUID(IID_IDirectXFileDataReference, 0x3d82ab45, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
DEFINE_GUID(IID_IDirectXFileBinary, 0x3d82ab46, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
|
||||
/* DirectX File Header template's GUID */
|
||||
DEFINE_GUID(TID_DXFILEHeader, 0x3d82ab43, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33);
|
||||
|
||||
/* DirectX File errors */
|
||||
#define _FACDD 0x876
|
||||
#define MAKE_DDHRESULT( code ) MAKE_HRESULT( 1, _FACDD, code )
|
||||
|
||||
#define DXFILE_OK 0
|
||||
|
||||
#define DXFILEERR_BADOBJECT MAKE_DDHRESULT(850)
|
||||
#define DXFILEERR_BADVALUE MAKE_DDHRESULT(851)
|
||||
#define DXFILEERR_BADTYPE MAKE_DDHRESULT(852)
|
||||
#define DXFILEERR_BADSTREAMHANDLE MAKE_DDHRESULT(853)
|
||||
#define DXFILEERR_BADALLOC MAKE_DDHRESULT(854)
|
||||
#define DXFILEERR_NOTFOUND MAKE_DDHRESULT(855)
|
||||
#define DXFILEERR_NOTDONEYET MAKE_DDHRESULT(856)
|
||||
#define DXFILEERR_FILENOTFOUND MAKE_DDHRESULT(857)
|
||||
#define DXFILEERR_RESOURCENOTFOUND MAKE_DDHRESULT(858)
|
||||
#define DXFILEERR_URLNOTFOUND MAKE_DDHRESULT(859)
|
||||
#define DXFILEERR_BADRESOURCE MAKE_DDHRESULT(860)
|
||||
#define DXFILEERR_BADFILETYPE MAKE_DDHRESULT(861)
|
||||
#define DXFILEERR_BADFILEVERSION MAKE_DDHRESULT(862)
|
||||
#define DXFILEERR_BADFILEFLOATSIZE MAKE_DDHRESULT(863)
|
||||
#define DXFILEERR_BADFILECOMPRESSIONTYPE MAKE_DDHRESULT(864)
|
||||
#define DXFILEERR_BADFILE MAKE_DDHRESULT(865)
|
||||
#define DXFILEERR_PARSEERROR MAKE_DDHRESULT(866)
|
||||
#define DXFILEERR_NOTEMPLATE MAKE_DDHRESULT(867)
|
||||
#define DXFILEERR_BADARRAYSIZE MAKE_DDHRESULT(868)
|
||||
#define DXFILEERR_BADDATAREFERENCE MAKE_DDHRESULT(869)
|
||||
#define DXFILEERR_INTERNALERROR MAKE_DDHRESULT(870)
|
||||
#define DXFILEERR_NOMOREOBJECTS MAKE_DDHRESULT(871)
|
||||
#define DXFILEERR_BADINTRINSICS MAKE_DDHRESULT(872)
|
||||
#define DXFILEERR_NOMORESTREAMHANDLES MAKE_DDHRESULT(873)
|
||||
#define DXFILEERR_NOMOREDATA MAKE_DDHRESULT(874)
|
||||
#define DXFILEERR_BADCACHEFILE MAKE_DDHRESULT(875)
|
||||
#define DXFILEERR_NOINTERNET MAKE_DDHRESULT(876)
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif /* defined(__cplusplus) */
|
||||
|
||||
#endif /* __WINE_DXFILE_H */
|
16
3rdparty/d3drm/light.c
vendored
16
3rdparty/d3drm/light.c
vendored
|
@ -101,7 +101,7 @@ static HRESULT WINAPI d3drm_light_DeleteDestroyCallback(IDirect3DRMLight *iface,
|
|||
return d3drm_object_delete_destroy_callback(&light->obj, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_light_SetAppData(IDirect3DRMLight *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_light_SetAppData(IDirect3DRMLight *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_light *light = impl_from_IDirect3DRMLight(iface);
|
||||
|
||||
|
@ -112,7 +112,7 @@ static HRESULT WINAPI d3drm_light_SetAppData(IDirect3DRMLight *iface, DWORD data
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_light_GetAppData(IDirect3DRMLight *iface)
|
||||
static LPVOID WINAPI d3drm_light_GetAppData(IDirect3DRMLight *iface)
|
||||
{
|
||||
struct d3drm_light *light = impl_from_IDirect3DRMLight(iface);
|
||||
|
||||
|
@ -378,7 +378,19 @@ HRESULT d3drm_light_create(struct d3drm_light **light, IDirect3DRM *d3drm)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMLight_iface.lpVtbl = &d3drm_light_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref = 1;
|
||||
object->d3drm = d3drm;
|
||||
IDirect3DRM_AddRef(object->d3drm);
|
||||
|
|
16
3rdparty/d3drm/material.c
vendored
16
3rdparty/d3drm/material.c
vendored
|
@ -102,7 +102,7 @@ static HRESULT WINAPI d3drm_material_DeleteDestroyCallback(IDirect3DRMMaterial2
|
|||
return d3drm_object_delete_destroy_callback(&material->obj, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_material_SetAppData(IDirect3DRMMaterial2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_material_SetAppData(IDirect3DRMMaterial2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_material *material = impl_from_IDirect3DRMMaterial2(iface);
|
||||
|
||||
|
@ -113,7 +113,7 @@ static HRESULT WINAPI d3drm_material_SetAppData(IDirect3DRMMaterial2 *iface, DWO
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_material_GetAppData(IDirect3DRMMaterial2 *iface)
|
||||
static LPVOID WINAPI d3drm_material_GetAppData(IDirect3DRMMaterial2 *iface)
|
||||
{
|
||||
struct d3drm_material *material = impl_from_IDirect3DRMMaterial2(iface);
|
||||
|
||||
|
@ -286,7 +286,19 @@ HRESULT d3drm_material_create(struct d3drm_material **material, IDirect3DRM *d3d
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMMaterial2_iface.lpVtbl = &d3drm_material_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref = 1;
|
||||
object->d3drm = d3drm;
|
||||
IDirect3DRM_AddRef(object->d3drm);
|
||||
|
|
56
3rdparty/d3drm/meshbuilder.c
vendored
56
3rdparty/d3drm/meshbuilder.c
vendored
|
@ -427,7 +427,7 @@ static HRESULT WINAPI d3drm_mesh_builder2_DeleteDestroyCallback(IDirect3DRMMeshB
|
|||
return IDirect3DRMMeshBuilder3_DeleteDestroyCallback(&mesh_builder->IDirect3DRMMeshBuilder3_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_mesh_builder3_SetAppData(IDirect3DRMMeshBuilder3 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_mesh_builder3_SetAppData(IDirect3DRMMeshBuilder3 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_mesh_builder *mesh_builder = impl_from_IDirect3DRMMeshBuilder3(iface);
|
||||
|
||||
|
@ -438,7 +438,7 @@ static HRESULT WINAPI d3drm_mesh_builder3_SetAppData(IDirect3DRMMeshBuilder3 *if
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_mesh_builder2_SetAppData(IDirect3DRMMeshBuilder2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_mesh_builder2_SetAppData(IDirect3DRMMeshBuilder2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_mesh_builder *mesh_builder = impl_from_IDirect3DRMMeshBuilder2(iface);
|
||||
|
||||
|
@ -447,7 +447,7 @@ static HRESULT WINAPI d3drm_mesh_builder2_SetAppData(IDirect3DRMMeshBuilder2 *if
|
|||
return d3drm_mesh_builder3_SetAppData(&mesh_builder->IDirect3DRMMeshBuilder3_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_mesh_builder3_GetAppData(IDirect3DRMMeshBuilder3 *iface)
|
||||
static LPVOID WINAPI d3drm_mesh_builder3_GetAppData(IDirect3DRMMeshBuilder3 *iface)
|
||||
{
|
||||
struct d3drm_mesh_builder *mesh_builder = impl_from_IDirect3DRMMeshBuilder3(iface);
|
||||
|
||||
|
@ -456,7 +456,7 @@ static DWORD WINAPI d3drm_mesh_builder3_GetAppData(IDirect3DRMMeshBuilder3 *ifac
|
|||
return mesh_builder->obj.appdata;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_mesh_builder2_GetAppData(IDirect3DRMMeshBuilder2 *iface)
|
||||
static LPVOID WINAPI d3drm_mesh_builder2_GetAppData(IDirect3DRMMeshBuilder2 *iface)
|
||||
{
|
||||
struct d3drm_mesh_builder *mesh_builder = impl_from_IDirect3DRMMeshBuilder2(iface);
|
||||
|
||||
|
@ -1483,7 +1483,11 @@ static HRESULT WINAPI d3drm_mesh_builder3_Load(IDirect3DRMMeshBuilder3 *iface, v
|
|||
|
||||
clean_mesh_builder_data(mesh_builder);
|
||||
|
||||
#ifdef DYNAMIC_D3DXOF
|
||||
hr = DynamicDirectXFileCreate(&dxfile);
|
||||
#else
|
||||
hr = DirectXFileCreate(&dxfile);
|
||||
#endif
|
||||
if (hr != DXFILE_OK)
|
||||
goto end;
|
||||
|
||||
|
@ -2343,8 +2347,20 @@ HRESULT d3drm_mesh_builder_create(struct d3drm_mesh_builder **mesh_builder, IDir
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMMeshBuilder2_iface.lpVtbl = &d3drm_mesh_builder2_vtbl;
|
||||
object->IDirect3DRMMeshBuilder3_iface.lpVtbl = &d3drm_mesh_builder3_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref = 1;
|
||||
object->d3drm = d3drm;
|
||||
object->quality = D3DRMRENDER_GOURAUD;
|
||||
|
@ -2444,7 +2460,7 @@ static HRESULT WINAPI d3drm_mesh_DeleteDestroyCallback(IDirect3DRMMesh *iface,
|
|||
return d3drm_object_delete_destroy_callback(&mesh->obj, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_mesh_SetAppData(IDirect3DRMMesh *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_mesh_SetAppData(IDirect3DRMMesh *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_mesh *mesh = impl_from_IDirect3DRMMesh(iface);
|
||||
|
||||
|
@ -2455,7 +2471,7 @@ static HRESULT WINAPI d3drm_mesh_SetAppData(IDirect3DRMMesh *iface, DWORD data)
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_mesh_GetAppData(IDirect3DRMMesh *iface)
|
||||
static LPVOID WINAPI d3drm_mesh_GetAppData(IDirect3DRMMesh *iface)
|
||||
{
|
||||
struct d3drm_mesh *mesh = impl_from_IDirect3DRMMesh(iface);
|
||||
|
||||
|
@ -2843,7 +2859,19 @@ HRESULT d3drm_mesh_create(struct d3drm_mesh **mesh, IDirect3DRM *d3drm)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMMesh_iface.lpVtbl = &d3drm_mesh_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref = 1;
|
||||
object->d3drm = d3drm;
|
||||
IDirect3DRM_AddRef(object->d3drm);
|
||||
|
@ -2928,7 +2956,7 @@ static HRESULT WINAPI d3drm_wrap_DeleteDestroyCallback(IDirect3DRMWrap *iface,
|
|||
return d3drm_object_delete_destroy_callback(&wrap->obj, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_wrap_SetAppData(IDirect3DRMWrap *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_wrap_SetAppData(IDirect3DRMWrap *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_wrap *wrap = impl_from_IDirect3DRMWrap(iface);
|
||||
|
||||
|
@ -2939,7 +2967,7 @@ static HRESULT WINAPI d3drm_wrap_SetAppData(IDirect3DRMWrap *iface, DWORD data)
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_wrap_GetAppData(IDirect3DRMWrap *iface)
|
||||
static LPVOID WINAPI d3drm_wrap_GetAppData(IDirect3DRMWrap *iface)
|
||||
{
|
||||
struct d3drm_wrap *wrap = impl_from_IDirect3DRMWrap(iface);
|
||||
|
||||
|
@ -3029,7 +3057,19 @@ HRESULT d3drm_wrap_create(struct d3drm_wrap **wrap, IDirect3DRM *d3drm)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMWrap_iface.lpVtbl = &d3drm_wrap_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->ref = 1;
|
||||
|
||||
d3drm_object_init(&object->obj, classname);
|
||||
|
|
24
3rdparty/d3drm/texture.c
vendored
24
3rdparty/d3drm/texture.c
vendored
|
@ -421,7 +421,7 @@ static HRESULT WINAPI d3drm_texture1_DeleteDestroyCallback(IDirect3DRMTexture *i
|
|||
return IDirect3DRMTexture3_DeleteDestroyCallback(&texture->IDirect3DRMTexture3_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_texture1_SetAppData(IDirect3DRMTexture *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_texture1_SetAppData(IDirect3DRMTexture *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_texture *texture = impl_from_IDirect3DRMTexture(iface);
|
||||
|
||||
|
@ -430,7 +430,7 @@ static HRESULT WINAPI d3drm_texture1_SetAppData(IDirect3DRMTexture *iface, DWORD
|
|||
return IDirect3DRMTexture3_SetAppData(&texture->IDirect3DRMTexture3_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_texture1_GetAppData(IDirect3DRMTexture *iface)
|
||||
static LPVOID WINAPI d3drm_texture1_GetAppData(IDirect3DRMTexture *iface)
|
||||
{
|
||||
struct d3drm_texture *texture = impl_from_IDirect3DRMTexture(iface);
|
||||
|
||||
|
@ -730,7 +730,7 @@ static HRESULT WINAPI d3drm_texture2_DeleteDestroyCallback(IDirect3DRMTexture2 *
|
|||
return IDirect3DRMTexture3_DeleteDestroyCallback(&texture->IDirect3DRMTexture3_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_texture2_SetAppData(IDirect3DRMTexture2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_texture2_SetAppData(IDirect3DRMTexture2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_texture *texture = impl_from_IDirect3DRMTexture2(iface);
|
||||
|
||||
|
@ -739,7 +739,7 @@ static HRESULT WINAPI d3drm_texture2_SetAppData(IDirect3DRMTexture2 *iface, DWOR
|
|||
return IDirect3DRMTexture3_SetAppData(&texture->IDirect3DRMTexture3_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_texture2_GetAppData(IDirect3DRMTexture2 *iface)
|
||||
static LPVOID WINAPI d3drm_texture2_GetAppData(IDirect3DRMTexture2 *iface)
|
||||
{
|
||||
struct d3drm_texture *texture = impl_from_IDirect3DRMTexture2(iface);
|
||||
|
||||
|
@ -1090,7 +1090,7 @@ static HRESULT WINAPI d3drm_texture3_DeleteDestroyCallback(IDirect3DRMTexture3 *
|
|||
return d3drm_object_delete_destroy_callback(&texture->obj, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_texture3_SetAppData(IDirect3DRMTexture3 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_texture3_SetAppData(IDirect3DRMTexture3 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_texture *texture = impl_from_IDirect3DRMTexture3(iface);
|
||||
|
||||
|
@ -1101,7 +1101,7 @@ static HRESULT WINAPI d3drm_texture3_SetAppData(IDirect3DRMTexture3 *iface, DWOR
|
|||
return D3DRM_OK;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_texture3_GetAppData(IDirect3DRMTexture3 *iface)
|
||||
static LPVOID WINAPI d3drm_texture3_GetAppData(IDirect3DRMTexture3 *iface)
|
||||
{
|
||||
struct d3drm_texture *texture = impl_from_IDirect3DRMTexture3(iface);
|
||||
|
||||
|
@ -1467,9 +1467,21 @@ HRESULT d3drm_texture_create(struct d3drm_texture **texture, IDirect3DRM *d3drm)
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMTexture_iface.lpVtbl = &d3drm_texture1_vtbl;
|
||||
object->IDirect3DRMTexture2_iface.lpVtbl = &d3drm_texture2_vtbl;
|
||||
object->IDirect3DRMTexture3_iface.lpVtbl = &d3drm_texture3_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->d3drm = d3drm;
|
||||
object->max_colors = 8;
|
||||
object->max_shades = 16;
|
||||
|
|
20
3rdparty/d3drm/viewport.c
vendored
20
3rdparty/d3drm/viewport.c
vendored
|
@ -209,7 +209,7 @@ static HRESULT WINAPI d3drm_viewport1_DeleteDestroyCallback(IDirect3DRMViewport
|
|||
return d3drm_viewport2_DeleteDestroyCallback(&viewport->IDirect3DRMViewport2_iface, cb, ctx);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_viewport2_SetAppData(IDirect3DRMViewport2 *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_viewport2_SetAppData(IDirect3DRMViewport2 *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_viewport *viewport = impl_from_IDirect3DRMViewport2(iface);
|
||||
|
||||
|
@ -219,7 +219,7 @@ static HRESULT WINAPI d3drm_viewport2_SetAppData(IDirect3DRMViewport2 *iface, DW
|
|||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI d3drm_viewport1_SetAppData(IDirect3DRMViewport *iface, DWORD data)
|
||||
static HRESULT WINAPI d3drm_viewport1_SetAppData(IDirect3DRMViewport *iface, LPVOID data)
|
||||
{
|
||||
struct d3drm_viewport *viewport = impl_from_IDirect3DRMViewport(iface);
|
||||
|
||||
|
@ -228,7 +228,7 @@ static HRESULT WINAPI d3drm_viewport1_SetAppData(IDirect3DRMViewport *iface, DWO
|
|||
return d3drm_viewport2_SetAppData(&viewport->IDirect3DRMViewport2_iface, data);
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_viewport2_GetAppData(IDirect3DRMViewport2 *iface)
|
||||
static LPVOID WINAPI d3drm_viewport2_GetAppData(IDirect3DRMViewport2 *iface)
|
||||
{
|
||||
struct d3drm_viewport *viewport = impl_from_IDirect3DRMViewport2(iface);
|
||||
|
||||
|
@ -237,7 +237,7 @@ static DWORD WINAPI d3drm_viewport2_GetAppData(IDirect3DRMViewport2 *iface)
|
|||
return viewport->obj.appdata;
|
||||
}
|
||||
|
||||
static DWORD WINAPI d3drm_viewport1_GetAppData(IDirect3DRMViewport *iface)
|
||||
static LPVOID WINAPI d3drm_viewport1_GetAppData(IDirect3DRMViewport *iface)
|
||||
{
|
||||
struct d3drm_viewport *viewport = impl_from_IDirect3DRMViewport(iface);
|
||||
|
||||
|
@ -1136,8 +1136,20 @@ HRESULT d3drm_viewport_create(struct d3drm_viewport **viewport, IDirect3DRM *d3d
|
|||
if (!(object = calloc(1, sizeof(*object))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4090 ) /* different 'const' qualifiers */
|
||||
#endif
|
||||
object->IDirect3DRMViewport_iface.lpVtbl = &d3drm_viewport1_vtbl;
|
||||
object->IDirect3DRMViewport2_iface.lpVtbl = &d3drm_viewport2_vtbl;
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic pop
|
||||
#elif defined(_MSC_VER)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
object->d3drm = d3drm;
|
||||
d3drm_object_init(&object->obj, classname);
|
||||
|
||||
|
|
2
3rdparty/d3drm/wine/debug.h
vendored
2
3rdparty/d3drm/wine/debug.h
vendored
|
@ -123,7 +123,7 @@ extern DECLSPEC_EXPORT int __cdecl __wine_dbg_header( enum __wine_debug_class cl
|
|||
quotes. The string will be valid for some time, but not indefinitely
|
||||
as strings are re-used. */
|
||||
|
||||
#if (defined(__x86_64__) || (defined(__aarch64__) && __has_attribute(ms_abi))) && defined(__GNUC__) && defined(__WINE_USE_MSVCRT)
|
||||
#if 0//(defined(__x86_64__) || (defined(__aarch64__) && __has_attribute(ms_abi))) && defined(__GNUC__) && defined(__WINE_USE_MSVCRT)
|
||||
# define __wine_dbg_cdecl __cdecl
|
||||
#else
|
||||
# define __wine_dbg_cdecl
|
||||
|
|
|
@ -42,7 +42,10 @@ else()
|
|||
# to add search paths.
|
||||
find_package(SDL3 CONFIG REQUIRED)
|
||||
|
||||
find_package(iniparser REQUIRED COMPONENTS static)
|
||||
find_package(iniparser CONFIG COMPONENTS static)
|
||||
if(NOT TARGET iniparser-static)
|
||||
find_package(iniparser REQUIRED MODULE COMPONENTS static)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
include(CheckCXXSourceCompiles)
|
||||
|
@ -57,12 +60,6 @@ if (ENABLE_CLANG_TIDY)
|
|||
set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_BIN}")
|
||||
endif()
|
||||
|
||||
math(EXPR bits "8 * ${CMAKE_SIZEOF_VOID_P}")
|
||||
message(STATUS "Building ${bits}-bit LEGO Island")
|
||||
if (NOT bits EQUAL 32)
|
||||
message(WARNING "Only 32-bit executables are supported")
|
||||
endif()
|
||||
|
||||
set(MSVC_FOR_DECOMP FALSE)
|
||||
if (MSVC)
|
||||
# Visual C++ 4.2 -> cl version 10.2.0
|
||||
|
@ -122,11 +119,9 @@ add_cxx_warning(parentheses)
|
|||
|
||||
add_library(DirectX5::DirectX5 INTERFACE IMPORTED)
|
||||
target_include_directories(DirectX5::DirectX5 INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/inc")
|
||||
if(ISLE_USE_DX5)
|
||||
target_link_directories(DirectX5::DirectX5 INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/lib")
|
||||
endif()
|
||||
target_link_directories(DirectX5::DirectX5 INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/lib")
|
||||
|
||||
add_subdirectory(3rdparty/d3drm)
|
||||
add_subdirectory(3rdparty/d3drm EXCLUDE_FROM_ALL)
|
||||
|
||||
add_library(Vec::Vec INTERFACE IMPORTED)
|
||||
target_include_directories(Vec::Vec INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/vec")
|
||||
|
@ -452,7 +447,11 @@ if (MINGW)
|
|||
endif()
|
||||
|
||||
if (MSVC)
|
||||
target_sources(lego1 PRIVATE LEGO1/LegoOmni.def)
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
target_sources(lego1 PRIVATE LEGO1/LegoOmni.def)
|
||||
else()
|
||||
target_sources(lego1 PRIVATE LEGO1/LegoOmni64.def)
|
||||
endif()
|
||||
else()
|
||||
target_sources(lego1 PRIVATE LEGO1/LegoOmni.mingw.def)
|
||||
endif()
|
||||
|
@ -465,9 +464,10 @@ target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/LEGO1/lego/legoomni
|
|||
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/LEGO1/lego/legoomni/include/actions")
|
||||
|
||||
# Link libraries
|
||||
target_link_libraries(lego1 PRIVATE tglrl viewmanager realtime mxdirectx roi geom anim Vec::Vec dxguid misc 3dmanager miniaudio omni)
|
||||
target_link_libraries(lego1 PRIVATE tglrl viewmanager realtime mxdirectx roi geom anim Vec::Vec dxguid d3drm_guid misc 3dmanager miniaudio omni)
|
||||
|
||||
foreach(tgt IN LISTS lego1_targets)
|
||||
target_include_directories(${tgt} PRIVATE $<$<BOOL:${ISLE_D3DRM_FROM_WINE}>:$<TARGET_PROPERTY:d3drm-wine,INTERFACE_INCLUDE_DIRECTORIES>>)
|
||||
target_link_libraries(${tgt} PRIVATE $<$<BOOL:${ISLE_USE_DX5}>:DirectX5::DirectX5> SDL3::SDL3)
|
||||
target_compile_definitions(${tgt} PRIVATE $<$<BOOL:${ISLE_USE_DX5}>:DIRECTX5_SDK>)
|
||||
endforeach()
|
||||
|
@ -494,6 +494,8 @@ if (ISLE_BUILD_APP)
|
|||
# Link DSOUND, WINMM, and LEGO1
|
||||
target_link_libraries(isle PRIVATE winmm lego1)
|
||||
|
||||
target_include_directories(isle PRIVATE $<$<BOOL:${ISLE_D3DRM_FROM_WINE}>:$<TARGET_PROPERTY:d3drm-wine,INTERFACE_INCLUDE_DIRECTORIES>>)
|
||||
|
||||
# Make sure filenames are ALL CAPS
|
||||
set_property(TARGET isle PROPERTY OUTPUT_NAME ISLE)
|
||||
set_property(TARGET isle PROPERTY SUFFIX ".EXE")
|
||||
|
|
|
@ -385,10 +385,11 @@ int SDL_AppEvent(void* appstate, const SDL_Event* event)
|
|||
break;
|
||||
}
|
||||
|
||||
// FIXME: use g_userEvent instead of SDL_EVENT_USER
|
||||
if (event->type >= SDL_EVENT_USER && event->type <= SDL_EVENT_LAST - 1) {
|
||||
switch (event->user.code) {
|
||||
case WM_ISLE_SETCURSOR:
|
||||
g_isle->SetupCursor((Cursor) (MxS32) event->user.data1);
|
||||
g_isle->SetupCursor((Cursor) (uintptr_t) event->user.data1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; LegoOmni.def : Declares the module paarameters for the LEGO1.DLL.
|
||||
|
||||
DESCRIPTION "Lego OMNI Windows Dynamic Link Library"
|
||||
; DESCRIPTION "Lego OMNI Windows Dynamic Link Library"
|
||||
|
||||
EXPORTS
|
||||
|
||||
|
|
64
LEGO1/LegoOmni64.def
Normal file
64
LEGO1/LegoOmni64.def
Normal file
|
@ -0,0 +1,64 @@
|
|||
; LegoOmni64.def : Declares the module paarameters for the LEGO1.DLL.
|
||||
|
||||
; DESCRIPTION "Lego OMNI Windows Dynamic Link Library"
|
||||
|
||||
EXPORTS
|
||||
|
||||
; EXPORTs really required only.
|
||||
|
||||
?SetCD@MxOmni@@SAXPEBD@Z
|
||||
?VariableTable@@YAPEAVMxVariableTable@@XZ
|
||||
?SetVariable@MxVariableTable@@QEAAXPEBD0@Z
|
||||
?CreateInstance@LegoOmni@@SAXXZ
|
||||
?TickleManager@@YAPEAVMxTickleManager@@XZ
|
||||
??1MxVideoParam@@QEAA@XZ
|
||||
?configureLegoModelPresenter@LegoModelPresenter@@SAXH@Z
|
||||
?SetHD@MxOmni@@SAXPEBD@Z
|
||||
?QueueEvent@LegoInputManager@@QEAAXW4NotificationId@@EJJE@Z
|
||||
?TransitionManager@@YAPEAVMxTransitionManager@@XZ
|
||||
??1MxString@@UEAA@XZ
|
||||
??0MxOmniCreateParam@@QEAA@PEBDPEAUHWND__@@AEAVMxVideoParam@@VMxOmniCreateFlags@@@Z
|
||||
?configureLegoAnimationManager@LegoAnimationManager@@SAXH@Z
|
||||
?GetCD@MxOmni@@SAPEBDXZ
|
||||
?configureLegoWorldPresenter@LegoWorldPresenter@@SAXH@Z
|
||||
?GameState@@YAPEAVLegoGameState@@XZ
|
||||
?Streamer@@YAPEAVMxStreamer@@XZ
|
||||
??1MxOmniCreateParam@@UEAA@XZ
|
||||
?configureLegoROI@LegoROI@@SAXH@Z
|
||||
?Lego@@YAPEAVLegoOmni@@XZ
|
||||
??0MxVideoParamFlags@@QEAA@XZ
|
||||
??0MxDSAction@@QEAA@XZ
|
||||
?VideoManager@@YAPEAVLegoVideoManager@@XZ
|
||||
?Timer@@YAPEAVMxTimer@@XZ
|
||||
?RemoveAll@ViewManager@@QEAAXPEAVViewROI@@@Z
|
||||
??4MxAtomId@@QEAAAEAV0@AEBV0@@Z
|
||||
?Enable@MxBackgroundAudioManager@@QEAAXE@Z
|
||||
?SetDeviceName@MxVideoParam@@QEAAXPEAD@Z
|
||||
??0MxVideoParam@@QEAA@XZ
|
||||
?SetSavePath@LegoGameState@@QEAAXPEAD@Z
|
||||
?MoveCursor@LegoVideoManager@@QEAAXHH@Z
|
||||
?SetWaitIndicator@MxTransitionManager@@QEAAXPEAVMxVideoPresenter@@@Z
|
||||
?Save@LegoGameState@@QEAAJK@Z
|
||||
??1MxDSAction@@UEAA@XZ
|
||||
?RemoveWorld@LegoOmni@@QEAAXAEBVMxAtomId@@J@Z
|
||||
?GetPrimaryBitDepth@MxDirectDraw@@SAHXZ
|
||||
?CreateBackgroundAudio@LegoOmni@@QEAAXXZ
|
||||
?SerializePlayersInfo@LegoGameState@@QEAAXF@Z
|
||||
?GetInstance@LegoOmni@@SAPEAV1@XZ
|
||||
?BackgroundAudioManager@@YAPEAVMxBackgroundAudioManager@@XZ
|
||||
?configureLegoPartPresenter@LegoPartPresenter@@SAXHH@Z
|
||||
?EnableRMDevice@LegoVideoManager@@QEAAHXZ
|
||||
?GetRealTime@MxTimer@@QEAAJXZ
|
||||
?SetAtomId@MxDSObject@@UEAAXVMxAtomId@@@Z
|
||||
?DestroyInstance@MxOmni@@SAXXZ
|
||||
?InputManager@@YAPEAVLegoInputManager@@XZ
|
||||
?Open@MxStreamer@@QEAAPEAVMxStreamController@@PEBDG@Z
|
||||
?Start@@YAJPEAVMxDSAction@@@Z
|
||||
??4MxVideoParam@@QEAAAEAV0@AEBV0@@Z
|
||||
?EnableFullScreenMovie@LegoVideoManager@@QEAAXEE@Z
|
||||
?configureLegoBuildingManager@LegoBuildingManager@@SAXH@Z
|
||||
?SerializeScoreHistory@LegoGameState@@QEAAXF@Z
|
||||
?Close@MxStreamer@@QEAAJPEBD@Z
|
||||
??0MxOmniCreateFlags@@QEAA@XZ
|
||||
??1MxAtomId@@QEAA@XZ
|
||||
?SetSound3D@MxOmni@@SAXE@Z
|
|
@ -2954,7 +2954,7 @@ MxResult AnimState::Serialize(LegoFile* p_file)
|
|||
MxBool AnimState::SetFlag()
|
||||
{
|
||||
if (m_unk0x10 != NULL) {
|
||||
m_extraCharacterId = NULL;
|
||||
m_extraCharacterId = 0;
|
||||
|
||||
for (MxS32 i = 0; i < m_unk0x0c; i++) {
|
||||
m_unk0x10[i] = 0;
|
||||
|
|
|
@ -127,7 +127,7 @@ LegoTextureInfo* LegoTextureInfo::Create(const char* p_name, LegoTexture* p_text
|
|||
goto done;
|
||||
}
|
||||
|
||||
textureInfo->m_texture->SetAppData((DWORD) textureInfo);
|
||||
textureInfo->m_texture->SetAppData((LPD3DRM_APPDATA) textureInfo);
|
||||
return textureInfo;
|
||||
|
||||
done:
|
||||
|
|
|
@ -501,7 +501,8 @@ MxAtomId* LegoOmni::GetWorldAtom(MxU32 p_id)
|
|||
MxS32 LegoOmni::GetWorldId(const char* p_key)
|
||||
{
|
||||
for (MxS32 i = 0; i < 19; i++) {
|
||||
if ((MxS32) &m_worlds[i] != -4 && !strcmpi(m_worlds[i].GetKey(), p_key)) {
|
||||
// FIXME: this looks very fishy. Is this guarding against out-of-bounds access?
|
||||
if ((MxS32*) &m_worlds[i] != (MxS32*) -4 && !strcmpi(m_worlds[i].GetKey(), p_key)) {
|
||||
return m_worlds[i].GetId();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -92,7 +92,7 @@ LegoTextureInfo* LegoTextureContainer::GetCached(LegoTextureInfo* p_textureInfo)
|
|||
return NULL;
|
||||
}
|
||||
else {
|
||||
textureInfo->m_texture->SetAppData((DWORD) textureInfo);
|
||||
textureInfo->m_texture->SetAppData((LPD3DRM_APPDATA) textureInfo);
|
||||
m_cached.push_back(LegoCachedTexture(textureInfo, TRUE));
|
||||
|
||||
textureInfo->m_texture->AddRef();
|
||||
|
|
|
@ -1014,6 +1014,7 @@ int MxDeviceEnumerate::SupportsMMX()
|
|||
}
|
||||
int supports_mmx;
|
||||
#ifdef _MSC_VER
|
||||
#if defined(_M_IX86)
|
||||
__asm {
|
||||
mov eax, 0x0 ; EAX=0: Highest Function Parameter and Manufacturer ID
|
||||
#if _MSC_VER > 1100
|
||||
|
@ -1034,6 +1035,11 @@ int MxDeviceEnumerate::SupportsMMX()
|
|||
adc eax, eax ; Add with carry: EAX = EAX + EAX + CF = CF
|
||||
mov supports_mmx, eax ; Save eax into C variable
|
||||
}
|
||||
#elif defined(_M_IX64)
|
||||
supports_mmx = 1;
|
||||
#else
|
||||
supports_mmx = 0;
|
||||
#endif
|
||||
#else
|
||||
__asm__("movl $0x0, %%eax\n\t" // EAX=0: Highest Function Parameter and Manufacturer ID
|
||||
"cpuid\n\t" // Run CPUID\n"
|
||||
|
|
|
@ -353,7 +353,7 @@ MxU8* MxDSBuffer::SkipToData()
|
|||
case FOURCC('M', 'x', 'O', 'b'):
|
||||
case FOURCC('M', 'x', 'C', 'h'):
|
||||
result = m_pIntoBuffer;
|
||||
m_pIntoBuffer = (MxU8*) ((ptr[1] & 1) + ptr[1] + (MxU32) ptr);
|
||||
m_pIntoBuffer = (MxU8*) ptr + ((ptr[1] & 1) + ptr[1]);
|
||||
m_pIntoBuffer = (MxU8*) ((MxU32*) m_pIntoBuffer + 2);
|
||||
if (m_pBuffer + (m_writeOffset - 8) < m_pIntoBuffer) {
|
||||
m_pIntoBuffer2 = result;
|
||||
|
@ -366,7 +366,7 @@ MxU8* MxDSBuffer::SkipToData()
|
|||
m_pIntoBuffer = (MxU8*) (ptr + 2);
|
||||
break;
|
||||
case FOURCC('M', 'x', 'H', 'd'):
|
||||
m_pIntoBuffer = (MxU8*) ((MxU32) ptr + ptr[1] + 8);
|
||||
m_pIntoBuffer = (MxU8*) ptr + (ptr[1] + 8);
|
||||
break;
|
||||
default:
|
||||
m_pIntoBuffer = NULL;
|
||||
|
@ -460,7 +460,7 @@ MxU8* MxDSBuffer::FUN_100c6fa0(MxU8* p_data)
|
|||
if (current != p_data) {
|
||||
return current;
|
||||
}
|
||||
current = ((MxU32) current & 1) + current;
|
||||
current += ((uintptr_t) current) & 1;
|
||||
current += 8;
|
||||
break;
|
||||
case FOURCC('M', 'x', 'H', 'd'):
|
||||
|
|
Loading…
Add table
Reference in a new issue