[PATCH 3/6] dinput: Factor out IDirectInputDevice ansi vtable.
Rémi Bernon
rbernon at codeweavers.com
Fri May 28 04:41:28 CDT 2021
Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
---
dlls/dinput/ansi.c | 127 ++++++++++++++++++++----------
dlls/dinput/device.c | 11 +--
dlls/dinput/device_private.h | 68 +---------------
dlls/dinput/joystick_linux.c | 39 +--------
dlls/dinput/joystick_linuxinput.c | 40 +---------
dlls/dinput/joystick_osx.c | 39 +--------
dlls/dinput/keyboard.c | 39 +--------
dlls/dinput/mouse.c | 39 +--------
8 files changed, 96 insertions(+), 306 deletions(-)
diff --git a/dlls/dinput/ansi.c b/dlls/dinput/ansi.c
index 77b535746a2..910940f3257 100644
--- a/dlls/dinput/ansi.c
+++ b/dlls/dinput/ansi.c
@@ -202,28 +202,28 @@ static void dideviceimageinfoheader_wtoa( const DIDEVICEIMAGEINFOHEADERW *in, DI
}
}
-HRESULT WINAPI IDirectInputDevice2AImpl_QueryInterface( IDirectInputDevice8A *iface_a, REFIID iid, void **out )
+static HRESULT WINAPI dinput_device_a_QueryInterface( IDirectInputDevice8A *iface_a, REFIID iid, void **out )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_QueryInterface( iface_w, iid, out );
}
-ULONG WINAPI IDirectInputDevice2AImpl_AddRef( IDirectInputDevice8A *iface_a )
+static ULONG WINAPI dinput_device_a_AddRef( IDirectInputDevice8A *iface_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_AddRef( iface_w );
}
-ULONG WINAPI IDirectInputDevice2AImpl_Release( IDirectInputDevice8A *iface_a )
+static ULONG WINAPI dinput_device_a_Release( IDirectInputDevice8A *iface_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_Release( iface_w );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetCapabilities( IDirectInputDevice8A *iface_a, DIDEVCAPS *caps )
+static HRESULT WINAPI dinput_device_a_GetCapabilities( IDirectInputDevice8A *iface_a, DIDEVCAPS *caps )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -245,8 +245,8 @@ static BOOL CALLBACK enum_objects_wtoa_callback( const DIDEVICEOBJECTINSTANCEW *
return params->callback( &instance_a, params->ref );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_EnumObjects( IDirectInputDevice8A *iface_a, LPDIENUMDEVICEOBJECTSCALLBACKA callback,
- void *ref, DWORD flags )
+static HRESULT WINAPI dinput_device_a_EnumObjects( IDirectInputDevice8A *iface_a, LPDIENUMDEVICEOBJECTSCALLBACKA callback,
+ void *ref, DWORD flags )
{
struct enum_objects_wtoa_params params = {callback, ref};
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
@@ -257,72 +257,72 @@ HRESULT WINAPI IDirectInputDevice2AImpl_EnumObjects( IDirectInputDevice8A *iface
return IDirectInputDevice8_EnumObjects( iface_w, enum_objects_wtoa_callback, ¶ms, flags );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetProperty( IDirectInputDevice8A *iface_a, REFGUID guid, DIPROPHEADER *header )
+static HRESULT WINAPI dinput_device_a_GetProperty( IDirectInputDevice8A *iface_a, REFGUID guid, DIPROPHEADER *header )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_GetProperty( iface_w, guid, header );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_SetProperty( IDirectInputDevice8A *iface_a, REFGUID guid, const DIPROPHEADER *header )
+static HRESULT WINAPI dinput_device_a_SetProperty( IDirectInputDevice8A *iface_a, REFGUID guid, const DIPROPHEADER *header )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_SetProperty( iface_w, guid, header );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_Acquire( IDirectInputDevice8A *iface_a )
+static HRESULT WINAPI dinput_device_a_Acquire( IDirectInputDevice8A *iface_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_Acquire( iface_w );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_Unacquire( IDirectInputDevice8A *iface_a )
+static HRESULT WINAPI dinput_device_a_Unacquire( IDirectInputDevice8A *iface_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_Unacquire( iface_w );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceState( IDirectInputDevice8A *iface_a, DWORD count, void *data )
+static HRESULT WINAPI dinput_device_a_GetDeviceState( IDirectInputDevice8A *iface_a, DWORD count, void *data )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_GetDeviceState( iface_w, count, data );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceData( IDirectInputDevice8A *iface_a, DWORD data_size, DIDEVICEOBJECTDATA *data,
- DWORD *entries, DWORD flags )
+static HRESULT WINAPI dinput_device_a_GetDeviceData( IDirectInputDevice8A *iface_a, DWORD data_size, DIDEVICEOBJECTDATA *data,
+ DWORD *entries, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_GetDeviceData( iface_w, data_size, data, entries, flags );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_SetDataFormat( IDirectInputDevice8A *iface_a, const DIDATAFORMAT *format )
+static HRESULT WINAPI dinput_device_a_SetDataFormat( IDirectInputDevice8A *iface_a, const DIDATAFORMAT *format )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_SetDataFormat( iface_w, format );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_SetEventNotification( IDirectInputDevice8A *iface_a, HANDLE event )
+static HRESULT WINAPI dinput_device_a_SetEventNotification( IDirectInputDevice8A *iface_a, HANDLE event )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_SetEventNotification( iface_w, event );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_SetCooperativeLevel( IDirectInputDevice8A *iface_a, HWND window, DWORD flags )
+static HRESULT WINAPI dinput_device_a_SetCooperativeLevel( IDirectInputDevice8A *iface_a, HWND window, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_SetCooperativeLevel( iface_w, window, flags );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetObjectInfo( IDirectInputDevice8A *iface_a, DIDEVICEOBJECTINSTANCEA *instance_a,
- DWORD obj, DWORD how )
+static HRESULT WINAPI dinput_device_a_GetObjectInfo( IDirectInputDevice8A *iface_a, DIDEVICEOBJECTINSTANCEA *instance_a,
+ DWORD obj, DWORD how )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -340,7 +340,7 @@ HRESULT WINAPI IDirectInputDevice2AImpl_GetObjectInfo( IDirectInputDevice8A *ifa
return hr;
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceInfo( IDirectInputDevice8A *iface_a, DIDEVICEINSTANCEA *instance_a )
+static HRESULT WINAPI dinput_device_a_GetDeviceInfo( IDirectInputDevice8A *iface_a, DIDEVICEINSTANCEA *instance_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -357,22 +357,22 @@ HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceInfo( IDirectInputDevice8A *ifa
return hr;
}
-HRESULT WINAPI IDirectInputDevice2AImpl_RunControlPanel( IDirectInputDevice8A *iface_a, HWND owner, DWORD flags )
+static HRESULT WINAPI dinput_device_a_RunControlPanel( IDirectInputDevice8A *iface_a, HWND owner, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_RunControlPanel( iface_w, owner, flags );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_Initialize( IDirectInputDevice8A *iface_a, HINSTANCE instance, DWORD version, REFGUID guid )
+static HRESULT WINAPI dinput_device_a_Initialize( IDirectInputDevice8A *iface_a, HINSTANCE instance, DWORD version, REFGUID guid )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_Initialize( iface_w, instance, version, guid );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_CreateEffect( IDirectInputDevice8A *iface_a, REFGUID guid, const DIEFFECT *effect,
- IDirectInputEffect **out, IUnknown *outer )
+static HRESULT WINAPI dinput_device_a_CreateEffect( IDirectInputDevice8A *iface_a, REFGUID guid, const DIEFFECT *effect,
+ IDirectInputEffect **out, IUnknown *outer )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -394,8 +394,8 @@ static BOOL CALLBACK enum_effects_wtoa_callback( const DIEFFECTINFOW *info_w, vo
return params->callback( &info_a, params->ref );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_EnumEffects( IDirectInputDevice8A *iface_a, LPDIENUMEFFECTSCALLBACKA callback,
- void *ref, DWORD type )
+static HRESULT WINAPI dinput_device_a_EnumEffects( IDirectInputDevice8A *iface_a, LPDIENUMEFFECTSCALLBACKA callback,
+ void *ref, DWORD type )
{
struct enum_effects_wtoa_params params = {callback, ref};
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
@@ -406,7 +406,7 @@ HRESULT WINAPI IDirectInputDevice2AImpl_EnumEffects( IDirectInputDevice8A *iface
return IDirectInputDevice8_EnumEffects( iface_w, enum_effects_wtoa_callback, ¶ms, type );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetEffectInfo( IDirectInputDevice8A *iface_a, DIEFFECTINFOA *info_a, REFGUID guid )
+static HRESULT WINAPI dinput_device_a_GetEffectInfo( IDirectInputDevice8A *iface_a, DIEFFECTINFOA *info_a, REFGUID guid )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -422,52 +422,52 @@ HRESULT WINAPI IDirectInputDevice2AImpl_GetEffectInfo( IDirectInputDevice8A *ifa
return hr;
}
-HRESULT WINAPI IDirectInputDevice2AImpl_GetForceFeedbackState( IDirectInputDevice8A *iface_a, DWORD *state )
+static HRESULT WINAPI dinput_device_a_GetForceFeedbackState( IDirectInputDevice8A *iface_a, DWORD *state )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_GetForceFeedbackState( iface_w, state );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_SendForceFeedbackCommand( IDirectInputDevice8A *iface_a, DWORD flags )
+static HRESULT WINAPI dinput_device_a_SendForceFeedbackCommand( IDirectInputDevice8A *iface_a, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_SendForceFeedbackCommand( iface_w, flags );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_EnumCreatedEffectObjects( IDirectInputDevice8A *iface_a, LPDIENUMCREATEDEFFECTOBJECTSCALLBACK callback,
- void *ref, DWORD flags )
+static HRESULT WINAPI dinput_device_a_EnumCreatedEffectObjects( IDirectInputDevice8A *iface_a, LPDIENUMCREATEDEFFECTOBJECTSCALLBACK callback,
+ void *ref, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_EnumCreatedEffectObjects( iface_w, callback, ref, flags );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_Escape( IDirectInputDevice8A *iface_a, DIEFFESCAPE *escape )
+static HRESULT WINAPI dinput_device_a_Escape( IDirectInputDevice8A *iface_a, DIEFFESCAPE *escape )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_Escape( iface_w, escape );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_Poll( IDirectInputDevice8A *iface_a )
+static HRESULT WINAPI dinput_device_a_Poll( IDirectInputDevice8A *iface_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_Poll( iface_w );
}
-HRESULT WINAPI IDirectInputDevice2AImpl_SendDeviceData( IDirectInputDevice8A *iface_a, DWORD count, const DIDEVICEOBJECTDATA *data,
- DWORD *inout, DWORD flags )
+static HRESULT WINAPI dinput_device_a_SendDeviceData( IDirectInputDevice8A *iface_a, DWORD count, const DIDEVICEOBJECTDATA *data,
+ DWORD *inout, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
return IDirectInputDevice8_SendDeviceData( iface_w, count, data, inout, flags );
}
-HRESULT WINAPI IDirectInputDevice7AImpl_EnumEffectsInFile( IDirectInputDevice8A *iface_a, const char *filename_a, LPDIENUMEFFECTSINFILECALLBACK callback,
- void *ref, DWORD flags )
+static HRESULT WINAPI dinput_device_a_EnumEffectsInFile( IDirectInputDevice8A *iface_a, const char *filename_a, LPDIENUMEFFECTSINFILECALLBACK callback,
+ void *ref, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -479,8 +479,8 @@ HRESULT WINAPI IDirectInputDevice7AImpl_EnumEffectsInFile( IDirectInputDevice8A
return IDirectInputDevice8_EnumEffectsInFile( iface_w, filename_w, callback, ref, flags );
}
-HRESULT WINAPI IDirectInputDevice7AImpl_WriteEffectToFile( IDirectInputDevice8A *iface_a, const char *filename_a, DWORD entries,
- DIFILEEFFECT *file_effect, DWORD flags )
+static HRESULT WINAPI dinput_device_a_WriteEffectToFile( IDirectInputDevice8A *iface_a, const char *filename_a, DWORD entries,
+ DIFILEEFFECT *file_effect, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -492,8 +492,8 @@ HRESULT WINAPI IDirectInputDevice7AImpl_WriteEffectToFile( IDirectInputDevice8A
return IDirectInputDevice8_WriteEffectToFile( iface_w, filename_w, entries, file_effect, flags );
}
-HRESULT WINAPI IDirectInputDevice8AImpl_BuildActionMap( IDirectInputDevice8A *iface_a, DIACTIONFORMATA *format_a,
- const char *username_a, DWORD flags )
+static HRESULT WINAPI dinput_device_a_BuildActionMap( IDirectInputDevice8A *iface_a, DIACTIONFORMATA *format_a,
+ const char *username_a, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -521,8 +521,8 @@ HRESULT WINAPI IDirectInputDevice8AImpl_BuildActionMap( IDirectInputDevice8A *if
return hr;
}
-HRESULT WINAPI IDirectInputDevice8AImpl_SetActionMap( IDirectInputDevice8A *iface_a, DIACTIONFORMATA *format_a,
- const char *username_a, DWORD flags )
+static HRESULT WINAPI dinput_device_a_SetActionMap( IDirectInputDevice8A *iface_a, DIACTIONFORMATA *format_a,
+ const char *username_a, DWORD flags )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -550,7 +550,7 @@ HRESULT WINAPI IDirectInputDevice8AImpl_SetActionMap( IDirectInputDevice8A *ifac
return hr;
}
-HRESULT WINAPI IDirectInputDevice8AImpl_GetImageInfo( IDirectInputDevice8A *iface_a, DIDEVICEIMAGEINFOHEADERA *header_a )
+static HRESULT WINAPI dinput_device_a_GetImageInfo( IDirectInputDevice8A *iface_a, DIDEVICEIMAGEINFOHEADERA *header_a )
{
IDirectInputDeviceImpl *impl = impl_from_IDirectInputDevice8A( iface_a );
IDirectInputDevice8W *iface_w = IDirectInputDevice8W_from_impl( impl );
@@ -570,3 +570,44 @@ HRESULT WINAPI IDirectInputDevice8AImpl_GetImageInfo( IDirectInputDevice8A *ifac
HeapFree( GetProcessHeap(), 0, header_w.lprgImageInfoArray );
return hr;
}
+
+const IDirectInputDevice8AVtbl dinput_device_a_vtbl =
+{
+ /*** IUnknown methods ***/
+ dinput_device_a_QueryInterface,
+ dinput_device_a_AddRef,
+ dinput_device_a_Release,
+ /*** IDirectInputDeviceA methods ***/
+ dinput_device_a_GetCapabilities,
+ dinput_device_a_EnumObjects,
+ dinput_device_a_GetProperty,
+ dinput_device_a_SetProperty,
+ dinput_device_a_Acquire,
+ dinput_device_a_Unacquire,
+ dinput_device_a_GetDeviceState,
+ dinput_device_a_GetDeviceData,
+ dinput_device_a_SetDataFormat,
+ dinput_device_a_SetEventNotification,
+ dinput_device_a_SetCooperativeLevel,
+ dinput_device_a_GetObjectInfo,
+ dinput_device_a_GetDeviceInfo,
+ dinput_device_a_RunControlPanel,
+ dinput_device_a_Initialize,
+ /*** IDirectInputDevice2A methods ***/
+ dinput_device_a_CreateEffect,
+ dinput_device_a_EnumEffects,
+ dinput_device_a_GetEffectInfo,
+ dinput_device_a_GetForceFeedbackState,
+ dinput_device_a_SendForceFeedbackCommand,
+ dinput_device_a_EnumCreatedEffectObjects,
+ dinput_device_a_Escape,
+ dinput_device_a_Poll,
+ dinput_device_a_SendDeviceData,
+ /*** IDirectInputDevice7A methods ***/
+ dinput_device_a_EnumEffectsInFile,
+ dinput_device_a_WriteEffectToFile,
+ /*** IDirectInputDevice8A methods ***/
+ dinput_device_a_BuildActionMap,
+ dinput_device_a_SetActionMap,
+ dinput_device_a_GetImageInfo,
+};
diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c
index a5dfc78370c..29a569ca9f1 100644
--- a/dlls/dinput/device.c
+++ b/dlls/dinput/device.c
@@ -1704,16 +1704,13 @@ HRESULT WINAPI IDirectInputDevice8WImpl_GetImageInfo(LPDIRECTINPUTDEVICE8W iface
return DI_OK;
}
-HRESULT direct_input_device_alloc( SIZE_T size, const IDirectInputDevice8WVtbl *vtblw,
- const IDirectInputDevice8AVtbl *vtbla, const GUID *guid,
- IDirectInputImpl *dinput, void **out )
+HRESULT direct_input_device_alloc( SIZE_T size, const IDirectInputDevice8WVtbl *vtbl,
+ const GUID *guid, IDirectInputImpl *dinput, void **out )
{
IDirectInputDeviceImpl *This;
-
if (!(This = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, size ))) return DIERR_OUTOFMEMORY;
-
- This->IDirectInputDevice8A_iface.lpVtbl = vtbla;
- This->IDirectInputDevice8W_iface.lpVtbl = vtblw;
+ This->IDirectInputDevice8A_iface.lpVtbl = &dinput_device_a_vtbl;
+ This->IDirectInputDevice8W_iface.lpVtbl = vtbl;
This->ref = 1;
This->guid = *guid;
InitializeCriticalSection( &This->crit );
diff --git a/dlls/dinput/device_private.h b/dlls/dinput/device_private.h
index b6c024def0d..1811e0cc5a6 100644
--- a/dlls/dinput/device_private.h
+++ b/dlls/dinput/device_private.h
@@ -86,9 +86,9 @@ struct IDirectInputDeviceImpl
ActionMap *action_map; /* array of mappings */
};
-extern HRESULT direct_input_device_alloc( SIZE_T size, const IDirectInputDevice8WVtbl *vtblw,
- const IDirectInputDevice8AVtbl *vtbla, const GUID *guid,
+extern HRESULT direct_input_device_alloc( SIZE_T size, const IDirectInputDevice8WVtbl *vtbl, const GUID *guid,
IDirectInputImpl *dinput, void **out ) DECLSPEC_HIDDEN;
+extern const IDirectInputDevice8AVtbl dinput_device_a_vtbl DECLSPEC_HIDDEN;
extern BOOL get_app_key(HKEY*, HKEY*) DECLSPEC_HIDDEN;
extern DWORD get_config_key(HKEY, HKEY, const char*, char*, DWORD) DECLSPEC_HIDDEN;
@@ -136,113 +136,55 @@ extern HRESULT _build_action_map(LPDIRECTINPUTDEVICE8W iface, LPDIACTIONFORMATW
extern HRESULT _set_action_map(LPDIRECTINPUTDEVICE8W iface, LPDIACTIONFORMATW lpdiaf, LPCWSTR lpszUserName, DWORD dwFlags, LPCDIDATAFORMAT df) DECLSPEC_HIDDEN;
/* And the stubs */
-extern HRESULT WINAPI IDirectInputDevice2AImpl_Acquire(LPDIRECTINPUTDEVICE8A iface) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_Acquire(LPDIRECTINPUTDEVICE8W iface) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_Unacquire(LPDIRECTINPUTDEVICE8A iface) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_Unacquire(LPDIRECTINPUTDEVICE8W iface) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceState(LPDIRECTINPUTDEVICE8A iface, DWORD count, void *data) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_SetDataFormat(LPDIRECTINPUTDEVICE8A iface, LPCDIDATAFORMAT df) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_SetDataFormat(LPDIRECTINPUTDEVICE8W iface, LPCDIDATAFORMAT df) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_SetCooperativeLevel(LPDIRECTINPUTDEVICE8A iface, HWND hwnd, DWORD dwflags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_SetCooperativeLevel(LPDIRECTINPUTDEVICE8W iface, HWND hwnd, DWORD dwflags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_SetEventNotification(LPDIRECTINPUTDEVICE8A iface, HANDLE hnd) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_SetEventNotification(LPDIRECTINPUTDEVICE8W iface, HANDLE hnd) DECLSPEC_HIDDEN;
-extern ULONG WINAPI IDirectInputDevice2AImpl_Release(LPDIRECTINPUTDEVICE8A iface) DECLSPEC_HIDDEN;
extern ULONG WINAPI IDirectInputDevice2WImpl_Release(LPDIRECTINPUTDEVICE8W iface) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetCapabilities(LPDIRECTINPUTDEVICE8A iface, DIDEVCAPS *caps) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_QueryInterface(LPDIRECTINPUTDEVICE8A iface, REFIID riid, LPVOID *ppobj) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_QueryInterface(LPDIRECTINPUTDEVICE8W iface, REFIID riid, LPVOID *ppobj) DECLSPEC_HIDDEN;
-extern ULONG WINAPI IDirectInputDevice2AImpl_AddRef(LPDIRECTINPUTDEVICE8A iface) DECLSPEC_HIDDEN;
extern ULONG WINAPI IDirectInputDevice2WImpl_AddRef(LPDIRECTINPUTDEVICE8W iface) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_EnumObjects(
- LPDIRECTINPUTDEVICE8A iface,
- LPDIENUMDEVICEOBJECTSCALLBACKA lpCallback,
- LPVOID lpvRef,
- DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_EnumObjects(
LPDIRECTINPUTDEVICE8W iface,
LPDIENUMDEVICEOBJECTSCALLBACKW lpCallback,
LPVOID lpvRef,
DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetProperty(LPDIRECTINPUTDEVICE8A iface, REFGUID rguid, LPDIPROPHEADER pdiph) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_GetProperty(LPDIRECTINPUTDEVICE8W iface, REFGUID rguid, LPDIPROPHEADER pdiph) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_SetProperty(LPDIRECTINPUTDEVICE8A iface, REFGUID rguid, LPCDIPROPHEADER pdiph) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REFGUID rguid, LPCDIPROPHEADER pdiph) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetObjectInfo(
- LPDIRECTINPUTDEVICE8A iface,
- LPDIDEVICEOBJECTINSTANCEA pdidoi,
- DWORD dwObj,
- DWORD dwHow) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_GetObjectInfo(LPDIRECTINPUTDEVICE8W iface,
LPDIDEVICEOBJECTINSTANCEW pdidoi,
DWORD dwObj,
DWORD dwHow) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceInfo(LPDIRECTINPUTDEVICE8A iface, DIDEVICEINSTANCEA *instance ) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetDeviceData(LPDIRECTINPUTDEVICE8A iface, DWORD dodsize, LPDIDEVICEOBJECTDATA dod,
- LPDWORD entries, DWORD flags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_GetDeviceData(LPDIRECTINPUTDEVICE8W iface, DWORD dodsize, LPDIDEVICEOBJECTDATA dod,
LPDWORD entries, DWORD flags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_RunControlPanel(LPDIRECTINPUTDEVICE8A iface, HWND hwndOwner, DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_RunControlPanel(LPDIRECTINPUTDEVICE8W iface, HWND hwndOwner, DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_Initialize(LPDIRECTINPUTDEVICE8A iface, HINSTANCE hinst, DWORD dwVersion,
- REFGUID rguid) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_Initialize(LPDIRECTINPUTDEVICE8W iface, HINSTANCE hinst, DWORD dwVersion,
REFGUID rguid) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_CreateEffect(LPDIRECTINPUTDEVICE8A iface, REFGUID rguid, LPCDIEFFECT lpeff,
- LPDIRECTINPUTEFFECT *ppdef, LPUNKNOWN pUnkOuter) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_CreateEffect(LPDIRECTINPUTDEVICE8W iface, REFGUID rguid, LPCDIEFFECT lpeff,
LPDIRECTINPUTEFFECT *ppdef, LPUNKNOWN pUnkOuter) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_EnumEffects(
- LPDIRECTINPUTDEVICE8A iface,
- LPDIENUMEFFECTSCALLBACKA lpCallback,
- LPVOID lpvRef,
- DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_EnumEffects(
LPDIRECTINPUTDEVICE8W iface,
LPDIENUMEFFECTSCALLBACKW lpCallback,
LPVOID lpvRef,
DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetEffectInfo(
- LPDIRECTINPUTDEVICE8A iface,
- LPDIEFFECTINFOA lpdei,
- REFGUID rguid) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_GetEffectInfo(
LPDIRECTINPUTDEVICE8W iface,
LPDIEFFECTINFOW lpdei,
REFGUID rguid) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_GetForceFeedbackState(LPDIRECTINPUTDEVICE8A iface, LPDWORD pdwOut) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_GetForceFeedbackState(LPDIRECTINPUTDEVICE8W iface, LPDWORD pdwOut) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_SendForceFeedbackCommand(LPDIRECTINPUTDEVICE8A iface, DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_SendForceFeedbackCommand(LPDIRECTINPUTDEVICE8W iface, DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_EnumCreatedEffectObjects(LPDIRECTINPUTDEVICE8A iface,
- LPDIENUMCREATEDEFFECTOBJECTSCALLBACK lpCallback,
- LPVOID lpvRef, DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_EnumCreatedEffectObjects(LPDIRECTINPUTDEVICE8W iface,
LPDIENUMCREATEDEFFECTOBJECTSCALLBACK lpCallback,
LPVOID lpvRef, DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_Escape(LPDIRECTINPUTDEVICE8A iface, LPDIEFFESCAPE lpDIEEsc) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_Escape(LPDIRECTINPUTDEVICE8W iface, LPDIEFFESCAPE lpDIEEsc) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_Poll(LPDIRECTINPUTDEVICE8A iface) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_Poll(LPDIRECTINPUTDEVICE8W iface) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice2AImpl_SendDeviceData(LPDIRECTINPUTDEVICE8A iface, DWORD cbObjectData,
- LPCDIDEVICEOBJECTDATA rgdod, LPDWORD pdwInOut, DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice2WImpl_SendDeviceData(LPDIRECTINPUTDEVICE8W iface, DWORD cbObjectData,
LPCDIDEVICEOBJECTDATA rgdod, LPDWORD pdwInOut, DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice7AImpl_EnumEffectsInFile(LPDIRECTINPUTDEVICE8A iface,
- LPCSTR lpszFileName,
- LPDIENUMEFFECTSINFILECALLBACK pec,
- LPVOID pvRef,
- DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice7WImpl_EnumEffectsInFile(LPDIRECTINPUTDEVICE8W iface,
LPCWSTR lpszFileName,
LPDIENUMEFFECTSINFILECALLBACK pec,
LPVOID pvRef,
DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice7AImpl_WriteEffectToFile(LPDIRECTINPUTDEVICE8A iface,
- LPCSTR lpszFileName,
- DWORD dwEntries,
- LPDIFILEEFFECT rgDiFileEft,
- DWORD dwFlags) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice7WImpl_WriteEffectToFile(LPDIRECTINPUTDEVICE8W iface,
LPCWSTR lpszFileName,
DWORD dwEntries,
@@ -252,12 +194,6 @@ extern HRESULT WINAPI IDirectInputDevice8WImpl_BuildActionMap(LPDIRECTINPUTDEVIC
LPDIACTIONFORMATW lpdiaf,
LPCWSTR lpszUserName,
DWORD dwFlags) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice8AImpl_BuildActionMap( LPDIRECTINPUTDEVICE8A iface, DIACTIONFORMATA *format,
- const char *username, DWORD flags ) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice8AImpl_SetActionMap( LPDIRECTINPUTDEVICE8A iface, DIACTIONFORMATA *format,
- const char *username, DWORD flags ) DECLSPEC_HIDDEN;
-extern HRESULT WINAPI IDirectInputDevice8AImpl_GetImageInfo(LPDIRECTINPUTDEVICE8A iface,
- LPDIDEVICEIMAGEINFOHEADERA lpdiDevImageInfoHeader) DECLSPEC_HIDDEN;
extern HRESULT WINAPI IDirectInputDevice8WImpl_GetImageInfo(LPDIRECTINPUTDEVICE8W iface,
LPDIDEVICEIMAGEINFOHEADERW lpdiDevImageInfoHeader) DECLSPEC_HIDDEN;
diff --git a/dlls/dinput/joystick_linux.c b/dlls/dinput/joystick_linux.c
index 7151e6e676c..0c1560617dd 100644
--- a/dlls/dinput/joystick_linux.c
+++ b/dlls/dinput/joystick_linux.c
@@ -90,7 +90,6 @@ struct JoyDev
};
typedef struct JoystickImpl JoystickImpl;
-static const IDirectInputDevice8AVtbl JoystickAvt;
static const IDirectInputDevice8WVtbl JoystickWvt;
struct JoystickImpl
{
@@ -462,7 +461,7 @@ static HRESULT alloc_device( REFGUID rguid, IDirectInputImpl *dinput, JoystickIm
TRACE( "%s %p %p %hu\n", debugstr_guid( rguid ), dinput, out, index );
- if (FAILED(hr = direct_input_device_alloc( sizeof(JoystickImpl), &JoystickWvt, &JoystickAvt, rguid, dinput, (void **)&newDevice )))
+ if (FAILED(hr = direct_input_device_alloc( sizeof(JoystickImpl), &JoystickWvt, rguid, dinput, (void **)&newDevice )))
return hr;
newDevice->generic.base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": JoystickImpl*->generic.base.crit");
@@ -862,42 +861,6 @@ static void joy_polldev( IDirectInputDevice8W *iface )
}
}
-static const IDirectInputDevice8AVtbl JoystickAvt =
-{
- IDirectInputDevice2AImpl_QueryInterface,
- IDirectInputDevice2AImpl_AddRef,
- IDirectInputDevice2AImpl_Release,
- IDirectInputDevice2AImpl_GetCapabilities,
- IDirectInputDevice2AImpl_EnumObjects,
- IDirectInputDevice2AImpl_GetProperty,
- IDirectInputDevice2AImpl_SetProperty,
- IDirectInputDevice2AImpl_Acquire,
- IDirectInputDevice2AImpl_Unacquire,
- IDirectInputDevice2AImpl_GetDeviceState,
- IDirectInputDevice2AImpl_GetDeviceData,
- IDirectInputDevice2AImpl_SetDataFormat,
- IDirectInputDevice2AImpl_SetEventNotification,
- IDirectInputDevice2AImpl_SetCooperativeLevel,
- IDirectInputDevice2AImpl_GetObjectInfo,
- IDirectInputDevice2AImpl_GetDeviceInfo,
- IDirectInputDevice2AImpl_RunControlPanel,
- IDirectInputDevice2AImpl_Initialize,
- IDirectInputDevice2AImpl_CreateEffect,
- IDirectInputDevice2AImpl_EnumEffects,
- IDirectInputDevice2AImpl_GetEffectInfo,
- IDirectInputDevice2AImpl_GetForceFeedbackState,
- IDirectInputDevice2AImpl_SendForceFeedbackCommand,
- IDirectInputDevice2AImpl_EnumCreatedEffectObjects,
- IDirectInputDevice2AImpl_Escape,
- IDirectInputDevice2AImpl_Poll,
- IDirectInputDevice2AImpl_SendDeviceData,
- IDirectInputDevice7AImpl_EnumEffectsInFile,
- IDirectInputDevice7AImpl_WriteEffectToFile,
- IDirectInputDevice8AImpl_BuildActionMap,
- IDirectInputDevice8AImpl_SetActionMap,
- IDirectInputDevice8AImpl_GetImageInfo
-};
-
static const IDirectInputDevice8WVtbl JoystickWvt =
{
IDirectInputDevice2WImpl_QueryInterface,
diff --git a/dlls/dinput/joystick_linuxinput.c b/dlls/dinput/joystick_linuxinput.c
index 1b581f511ed..3bc6114322f 100644
--- a/dlls/dinput/joystick_linuxinput.c
+++ b/dlls/dinput/joystick_linuxinput.c
@@ -86,12 +86,12 @@ struct wine_input_absinfo {
/* implemented in effect_linuxinput.c */
HRESULT linuxinput_create_effect(int* fd, REFGUID rguid, struct list *parent_list_entry, LPDIRECTINPUTEFFECT* peff);
+HRESULT linuxinput_get_info_A(int fd, REFGUID rguid, LPDIEFFECTINFOA info);
HRESULT linuxinput_get_info_W(int fd, REFGUID rguid, LPDIEFFECTINFOW info);
static HRESULT WINAPI JoystickWImpl_SendForceFeedbackCommand(LPDIRECTINPUTDEVICE8W iface, DWORD dwFlags);
typedef struct JoystickImpl JoystickImpl;
-static const IDirectInputDevice8AVtbl JoystickAvt;
static const IDirectInputDevice8WVtbl JoystickWvt;
struct JoyDev {
@@ -453,7 +453,7 @@ static HRESULT alloc_device( REFGUID rguid, IDirectInputImpl *dinput, JoystickIm
DIDEVICEINSTANCEW ddi;
HRESULT hr;
- if (FAILED(hr = direct_input_device_alloc( sizeof(JoystickImpl), &JoystickWvt, &JoystickAvt, rguid, dinput, (void **)&newDevice )))
+ if (FAILED(hr = direct_input_device_alloc( sizeof(JoystickImpl), &JoystickWvt, rguid, dinput, (void **)&newDevice )))
return hr;
newDevice->generic.base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": JoystickImpl*->base.crit");
@@ -1302,42 +1302,6 @@ static HRESULT WINAPI JoystickWImpl_GetDeviceInfo(LPDIRECTINPUTDEVICE8W iface,
return DI_OK;
}
-static const IDirectInputDevice8AVtbl JoystickAvt =
-{
- IDirectInputDevice2AImpl_QueryInterface,
- IDirectInputDevice2AImpl_AddRef,
- IDirectInputDevice2AImpl_Release,
- IDirectInputDevice2AImpl_GetCapabilities,
- IDirectInputDevice2AImpl_EnumObjects,
- IDirectInputDevice2AImpl_GetProperty,
- IDirectInputDevice2AImpl_SetProperty,
- IDirectInputDevice2AImpl_Acquire,
- IDirectInputDevice2AImpl_Unacquire,
- IDirectInputDevice2AImpl_GetDeviceState,
- IDirectInputDevice2AImpl_GetDeviceData,
- IDirectInputDevice2AImpl_SetDataFormat,
- IDirectInputDevice2AImpl_SetEventNotification,
- IDirectInputDevice2AImpl_SetCooperativeLevel,
- IDirectInputDevice2AImpl_GetObjectInfo,
- IDirectInputDevice2AImpl_GetDeviceInfo,
- IDirectInputDevice2AImpl_RunControlPanel,
- IDirectInputDevice2AImpl_Initialize,
- IDirectInputDevice2AImpl_CreateEffect,
- IDirectInputDevice2AImpl_EnumEffects,
- IDirectInputDevice2AImpl_GetEffectInfo,
- IDirectInputDevice2AImpl_GetForceFeedbackState,
- IDirectInputDevice2AImpl_SendForceFeedbackCommand,
- IDirectInputDevice2AImpl_EnumCreatedEffectObjects,
- IDirectInputDevice2AImpl_Escape,
- IDirectInputDevice2AImpl_Poll,
- IDirectInputDevice2AImpl_SendDeviceData,
- IDirectInputDevice7AImpl_EnumEffectsInFile,
- IDirectInputDevice7AImpl_WriteEffectToFile,
- IDirectInputDevice8AImpl_BuildActionMap,
- IDirectInputDevice8AImpl_SetActionMap,
- IDirectInputDevice8AImpl_GetImageInfo
-};
-
static const IDirectInputDevice8WVtbl JoystickWvt =
{
IDirectInputDevice2WImpl_QueryInterface,
diff --git a/dlls/dinput/joystick_osx.c b/dlls/dinput/joystick_osx.c
index bd758fb10a4..e29a7bd9726 100644
--- a/dlls/dinput/joystick_osx.c
+++ b/dlls/dinput/joystick_osx.c
@@ -101,7 +101,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(dinput);
static CFMutableArrayRef device_main_elements = NULL;
typedef struct JoystickImpl JoystickImpl;
-static const IDirectInputDevice8AVtbl JoystickAvt;
static const IDirectInputDevice8WVtbl JoystickWvt;
struct JoystickImpl
@@ -1120,7 +1119,7 @@ static HRESULT alloc_device( REFGUID rguid, IDirectInputImpl *dinput, JoystickIm
TRACE( "%s %p %p %hu\n", debugstr_guid( rguid ), dinput, out, index );
- if (FAILED(hr = direct_input_device_alloc( sizeof(JoystickImpl), &JoystickWvt, &JoystickAvt, rguid, dinput, (void **)&newDevice )))
+ if (FAILED(hr = direct_input_device_alloc( sizeof(JoystickImpl), &JoystickWvt, rguid, dinput, (void **)&newDevice )))
return hr;
newDevice->generic.base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": JoystickImpl*->generic.base.crit");
@@ -1553,42 +1552,6 @@ const struct dinput_device joystick_osx_device = {
joydev_create_device
};
-static const IDirectInputDevice8AVtbl JoystickAvt =
-{
- IDirectInputDevice2AImpl_QueryInterface,
- IDirectInputDevice2AImpl_AddRef,
- IDirectInputDevice2AImpl_Release,
- IDirectInputDevice2AImpl_GetCapabilities,
- IDirectInputDevice2AImpl_EnumObjects,
- IDirectInputDevice2AImpl_GetProperty,
- IDirectInputDevice2AImpl_SetProperty,
- IDirectInputDevice2AImpl_Acquire,
- IDirectInputDevice2AImpl_Unacquire,
- IDirectInputDevice2AImpl_GetDeviceState,
- IDirectInputDevice2AImpl_GetDeviceData,
- IDirectInputDevice2AImpl_SetDataFormat,
- IDirectInputDevice2AImpl_SetEventNotification,
- IDirectInputDevice2AImpl_SetCooperativeLevel,
- IDirectInputDevice2AImpl_GetObjectInfo,
- IDirectInputDevice2AImpl_GetDeviceInfo,
- IDirectInputDevice2AImpl_RunControlPanel,
- IDirectInputDevice2AImpl_Initialize,
- IDirectInputDevice2AImpl_CreateEffect,
- IDirectInputDevice2AImpl_EnumEffects,
- IDirectInputDevice2AImpl_GetEffectInfo,
- IDirectInputDevice2AImpl_GetForceFeedbackState,
- IDirectInputDevice2AImpl_SendForceFeedbackCommand,
- IDirectInputDevice2AImpl_EnumCreatedEffectObjects,
- IDirectInputDevice2AImpl_Escape,
- IDirectInputDevice2AImpl_Poll,
- IDirectInputDevice2AImpl_SendDeviceData,
- IDirectInputDevice7AImpl_EnumEffectsInFile,
- IDirectInputDevice7AImpl_WriteEffectToFile,
- IDirectInputDevice8AImpl_BuildActionMap,
- IDirectInputDevice8AImpl_SetActionMap,
- IDirectInputDevice8AImpl_GetImageInfo
-};
-
static const IDirectInputDevice8WVtbl JoystickWvt =
{
IDirectInputDevice2WImpl_QueryInterface,
diff --git a/dlls/dinput/keyboard.c b/dlls/dinput/keyboard.c
index b8d48513faf..c64051e8663 100644
--- a/dlls/dinput/keyboard.c
+++ b/dlls/dinput/keyboard.c
@@ -40,7 +40,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(dinput);
#define WINE_DINPUT_KEYBOARD_MAX_KEYS 256
-static const IDirectInputDevice8AVtbl SysKeyboardAvt;
static const IDirectInputDevice8WVtbl SysKeyboardWvt;
typedef struct SysKeyboardImpl SysKeyboardImpl;
@@ -247,7 +246,7 @@ static HRESULT alloc_device( REFGUID rguid, IDirectInputImpl *dinput, SysKeyboar
int i, idx = 0;
HRESULT hr;
- if (FAILED(hr = direct_input_device_alloc( sizeof(SysKeyboardImpl), &SysKeyboardWvt, &SysKeyboardAvt, rguid, dinput, (void **)&newDevice )))
+ if (FAILED(hr = direct_input_device_alloc( sizeof(SysKeyboardImpl), &SysKeyboardWvt, rguid, dinput, (void **)&newDevice )))
return hr;
newDevice->base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": SysKeyboardImpl*->base.crit");
@@ -558,42 +557,6 @@ static HRESULT WINAPI SysKeyboardWImpl_SetActionMap(LPDIRECTINPUTDEVICE8W iface,
return _set_action_map(iface, lpdiaf, lpszUserName, dwFlags, &c_dfDIKeyboard);
}
-static const IDirectInputDevice8AVtbl SysKeyboardAvt =
-{
- IDirectInputDevice2AImpl_QueryInterface,
- IDirectInputDevice2AImpl_AddRef,
- IDirectInputDevice2AImpl_Release,
- IDirectInputDevice2AImpl_GetCapabilities,
- IDirectInputDevice2AImpl_EnumObjects,
- IDirectInputDevice2AImpl_GetProperty,
- IDirectInputDevice2AImpl_SetProperty,
- IDirectInputDevice2AImpl_Acquire,
- IDirectInputDevice2AImpl_Unacquire,
- IDirectInputDevice2AImpl_GetDeviceState,
- IDirectInputDevice2AImpl_GetDeviceData,
- IDirectInputDevice2AImpl_SetDataFormat,
- IDirectInputDevice2AImpl_SetEventNotification,
- IDirectInputDevice2AImpl_SetCooperativeLevel,
- IDirectInputDevice2AImpl_GetObjectInfo,
- IDirectInputDevice2AImpl_GetDeviceInfo,
- IDirectInputDevice2AImpl_RunControlPanel,
- IDirectInputDevice2AImpl_Initialize,
- IDirectInputDevice2AImpl_CreateEffect,
- IDirectInputDevice2AImpl_EnumEffects,
- IDirectInputDevice2AImpl_GetEffectInfo,
- IDirectInputDevice2AImpl_GetForceFeedbackState,
- IDirectInputDevice2AImpl_SendForceFeedbackCommand,
- IDirectInputDevice2AImpl_EnumCreatedEffectObjects,
- IDirectInputDevice2AImpl_Escape,
- IDirectInputDevice2AImpl_Poll,
- IDirectInputDevice2AImpl_SendDeviceData,
- IDirectInputDevice7AImpl_EnumEffectsInFile,
- IDirectInputDevice7AImpl_WriteEffectToFile,
- IDirectInputDevice8AImpl_BuildActionMap,
- IDirectInputDevice8AImpl_SetActionMap,
- IDirectInputDevice8AImpl_GetImageInfo
-};
-
static const IDirectInputDevice8WVtbl SysKeyboardWvt =
{
IDirectInputDevice2WImpl_QueryInterface,
diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
index 7cf196d0173..ef503526c35 100644
--- a/dlls/dinput/mouse.c
+++ b/dlls/dinput/mouse.c
@@ -47,7 +47,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(dinput);
#define WINE_MOUSE_Z_AXIS_INSTANCE 2
#define WINE_MOUSE_BUTTONS_INSTANCE 3
-static const IDirectInputDevice8AVtbl SysMouseAvt;
static const IDirectInputDevice8WVtbl SysMouseWvt;
typedef struct SysMouseImpl SysMouseImpl;
@@ -193,7 +192,7 @@ static HRESULT alloc_device( REFGUID rguid, IDirectInputImpl *dinput, SysMouseIm
HKEY hkey, appkey;
HRESULT hr;
- if (FAILED(hr = direct_input_device_alloc( sizeof(SysMouseImpl), &SysMouseWvt, &SysMouseAvt, rguid, dinput, (void **)&newDevice )))
+ if (FAILED(hr = direct_input_device_alloc( sizeof(SysMouseImpl), &SysMouseWvt, rguid, dinput, (void **)&newDevice )))
return hr;
newDevice->base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": SysMouseImpl*->base.crit");
@@ -809,42 +808,6 @@ static HRESULT WINAPI SysMouseWImpl_SetActionMap(LPDIRECTINPUTDEVICE8W iface,
return _set_action_map(iface, lpdiaf, lpszUserName, dwFlags, &c_dfDIMouse2);
}
-static const IDirectInputDevice8AVtbl SysMouseAvt =
-{
- IDirectInputDevice2AImpl_QueryInterface,
- IDirectInputDevice2AImpl_AddRef,
- IDirectInputDevice2AImpl_Release,
- IDirectInputDevice2AImpl_GetCapabilities,
- IDirectInputDevice2AImpl_EnumObjects,
- IDirectInputDevice2AImpl_GetProperty,
- IDirectInputDevice2AImpl_SetProperty,
- IDirectInputDevice2AImpl_Acquire,
- IDirectInputDevice2AImpl_Unacquire,
- IDirectInputDevice2AImpl_GetDeviceState,
- IDirectInputDevice2AImpl_GetDeviceData,
- IDirectInputDevice2AImpl_SetDataFormat,
- IDirectInputDevice2AImpl_SetEventNotification,
- IDirectInputDevice2AImpl_SetCooperativeLevel,
- IDirectInputDevice2AImpl_GetObjectInfo,
- IDirectInputDevice2AImpl_GetDeviceInfo,
- IDirectInputDevice2AImpl_RunControlPanel,
- IDirectInputDevice2AImpl_Initialize,
- IDirectInputDevice2AImpl_CreateEffect,
- IDirectInputDevice2AImpl_EnumEffects,
- IDirectInputDevice2AImpl_GetEffectInfo,
- IDirectInputDevice2AImpl_GetForceFeedbackState,
- IDirectInputDevice2AImpl_SendForceFeedbackCommand,
- IDirectInputDevice2AImpl_EnumCreatedEffectObjects,
- IDirectInputDevice2AImpl_Escape,
- IDirectInputDevice2AImpl_Poll,
- IDirectInputDevice2AImpl_SendDeviceData,
- IDirectInputDevice7AImpl_EnumEffectsInFile,
- IDirectInputDevice7AImpl_WriteEffectToFile,
- IDirectInputDevice8AImpl_BuildActionMap,
- IDirectInputDevice8AImpl_SetActionMap,
- IDirectInputDevice8AImpl_GetImageInfo
-};
-
static const IDirectInputDevice8WVtbl SysMouseWvt =
{
IDirectInputDevice2WImpl_QueryInterface,
--
2.31.0
More information about the wine-devel
mailing list