dplayx: Assimilate the IDirectPlayLobby3 methods.

This commit is contained in:
Michael Stefaniuc 2013-04-17 22:07:06 +02:00 committed by Alexandre Julliard
parent 6899279bab
commit 0870290ca6
1 changed files with 56 additions and 104 deletions

View File

@ -372,14 +372,9 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_CreateAddress( IDirectPlayLobby3A *
lpAddress, lpdwAddressSize, TRUE ); lpAddress, lpdwAddressSize, TRUE );
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_CreateAddress static HRESULT WINAPI IDirectPlayLobby3Impl_CreateAddress( IDirectPlayLobby3 *iface, REFGUID guidSP,
( LPDIRECTPLAYLOBBY iface, REFGUID guidDataType, const void *lpData, DWORD dwDataSize, void *lpAddress,
REFGUID guidSP, DWORD *lpdwAddressSize )
REFGUID guidDataType,
LPCVOID lpData,
DWORD dwDataSize,
LPVOID lpAddress,
LPDWORD lpdwAddressSize )
{ {
return DPL_CreateAddress( guidSP, guidDataType, lpData, dwDataSize, return DPL_CreateAddress( guidSP, guidDataType, lpData, dwDataSize,
lpAddress, lpdwAddressSize, FALSE ); lpAddress, lpdwAddressSize, FALSE );
@ -434,14 +429,11 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_EnumAddress( IDirectPlayLobby3A *if
return DPL_EnumAddress( lpEnumAddressCallback, lpAddress, dwAddressSize, lpContext ); return DPL_EnumAddress( lpEnumAddressCallback, lpAddress, dwAddressSize, lpContext );
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_EnumAddress static HRESULT WINAPI IDirectPlayLobby3Impl_EnumAddress( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, LPDPENUMADDRESSCALLBACK lpEnumAddressCallback, const void *lpAddress, DWORD dwAddressSize,
LPDPENUMADDRESSCALLBACK lpEnumAddressCallback, void *lpContext )
LPCVOID lpAddress,
DWORD dwAddressSize,
LPVOID lpContext )
{ {
IDirectPlayLobbyWImpl *This = (IDirectPlayLobbyWImpl *)iface; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
TRACE("(%p)->(%p,%p,0x%08x,%p)\n", This, lpEnumAddressCallback, lpAddress, TRACE("(%p)->(%p,%p,0x%08x,%p)\n", This, lpEnumAddressCallback, lpAddress,
dwAddressSize, lpContext ); dwAddressSize, lpContext );
@ -607,12 +599,8 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_EnumAddressTypes( IDirectPlayLobby3
return DP_OK; return DP_OK;
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_EnumAddressTypes static HRESULT WINAPI IDirectPlayLobby3Impl_EnumAddressTypes( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, LPDPLENUMADDRESSTYPESCALLBACK enumaddrtypecb, REFGUID sp, void *context, DWORD flags )
LPDPLENUMADDRESSTYPESCALLBACK lpEnumAddressTypeCallback,
REFGUID guidSP,
LPVOID lpContext,
DWORD dwFlags )
{ {
FIXME(":stub\n"); FIXME(":stub\n");
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
@ -624,13 +612,10 @@ static HRESULT WINAPI IDirectPlayLobbyWImpl_EnumAddressTypes
* invoking the callback function with lpContext. * invoking the callback function with lpContext.
* *
*/ */
static HRESULT WINAPI IDirectPlayLobbyWImpl_EnumLocalApplications static HRESULT WINAPI IDirectPlayLobby3Impl_EnumLocalApplications( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, LPDPLENUMLOCALAPPLICATIONSCALLBACK lpEnumLocalAppCallback, void *lpContext, DWORD dwFlags )
LPDPLENUMLOCALAPPLICATIONSCALLBACK lpEnumLocalAppCallback,
LPVOID lpContext,
DWORD dwFlags )
{ {
IDirectPlayLobbyWImpl *This = (IDirectPlayLobbyWImpl *)iface; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
FIXME("(%p)->(%p,%p,0x%08x):stub\n", This, lpEnumLocalAppCallback, lpContext, dwFlags ); FIXME("(%p)->(%p,%p,0x%08x):stub\n", This, lpEnumLocalAppCallback, lpContext, dwFlags );
@ -756,13 +741,10 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_GetConnectionSettings( IDirectPlayL
return hr; return hr;
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_GetConnectionSettings static HRESULT WINAPI IDirectPlayLobby3Impl_GetConnectionSettings( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, DWORD dwAppID, void *lpData, DWORD *lpdwDataSize )
DWORD dwAppID,
LPVOID lpData,
LPDWORD lpdwDataSize )
{ {
IDirectPlayLobbyWImpl *This = (IDirectPlayLobbyWImpl *)iface; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
HRESULT hr; HRESULT hr;
TRACE("(%p)->(0x%08x,%p,%p)\n", This, dwAppID, lpData, lpdwDataSize ); TRACE("(%p)->(0x%08x,%p,%p)\n", This, dwAppID, lpData, lpdwDataSize );
@ -795,15 +777,11 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_ReceiveLobbyMessage( IDirectPlayLob
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_ReceiveLobbyMessage static HRESULT WINAPI IDirectPlayLobby3Impl_ReceiveLobbyMessage( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, DWORD dwFlags, DWORD dwAppID, DWORD *lpdwMessageFlags, void *lpData,
DWORD dwFlags, DWORD *lpdwDataSize )
DWORD dwAppID,
LPDWORD lpdwMessageFlags,
LPVOID lpData,
LPDWORD lpdwDataSize )
{ {
IDirectPlayLobbyWImpl *This = (IDirectPlayLobbyWImpl *)iface; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
FIXME(":stub %p %08x %08x %p %p %p\n", This, dwFlags, dwAppID, lpdwMessageFlags, lpData, FIXME(":stub %p %08x %08x %p %p %p\n", This, dwFlags, dwAppID, lpdwMessageFlags, lpData,
lpdwDataSize ); lpdwDataSize );
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
@ -1080,14 +1058,10 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_RunApplication( IDirectPlayLobby3A
return DP_OK; return DP_OK;
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_RunApplication static HRESULT WINAPI IDirectPlayLobby3Impl_RunApplication( IDirectPlayLobby3 *iface, DWORD dwFlags,
( LPDIRECTPLAYLOBBY iface, DWORD *lpdwAppID, DPLCONNECTION *lpConn, HANDLE hReceiveEvent )
DWORD dwFlags,
LPDWORD lpdwAppID,
LPDPLCONNECTION lpConn,
HANDLE hReceiveEvent )
{ {
IDirectPlayLobbyWImpl *This = (IDirectPlayLobbyWImpl *)iface; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
FIXME( "(%p)->(0x%08x,%p,%p,%p):stub\n", This, dwFlags, lpdwAppID, lpConn, hReceiveEvent ); FIXME( "(%p)->(0x%08x,%p,%p,%p):stub\n", This, dwFlags, lpdwAppID, lpConn, hReceiveEvent );
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
} }
@ -1105,12 +1079,8 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_SendLobbyMessage( IDirectPlayLobby3
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_SendLobbyMessage static HRESULT WINAPI IDirectPlayLobby3Impl_SendLobbyMessage( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, DWORD flags, DWORD appid, void *data, DWORD size )
DWORD dwFlags,
DWORD dwAppID,
LPVOID lpData,
DWORD dwDataSize )
{ {
FIXME(":stub\n"); FIXME(":stub\n");
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
@ -1122,13 +1092,10 @@ static HRESULT WINAPI IDirectPlayLobbyWImpl_SendLobbyMessage
* needed to start and connect an application. * needed to start and connect an application.
* *
*/ */
static HRESULT WINAPI IDirectPlayLobbyWImpl_SetConnectionSettings static HRESULT WINAPI IDirectPlayLobby3Impl_SetConnectionSettings( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, DWORD dwFlags, DWORD dwAppID, DPLCONNECTION *lpConn )
DWORD dwFlags,
DWORD dwAppID,
LPDPLCONNECTION lpConn )
{ {
IDirectPlayLobbyWImpl *This = (IDirectPlayLobbyWImpl *)iface; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
HRESULT hr; HRESULT hr;
TRACE("(%p)->(0x%08x,0x%08x,%p)\n", This, dwFlags, dwAppID, lpConn ); TRACE("(%p)->(0x%08x,0x%08x,%p)\n", This, dwFlags, dwAppID, lpConn );
@ -1196,11 +1163,8 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_SetLobbyMessageEvent( IDirectPlayLo
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
} }
static HRESULT WINAPI IDirectPlayLobbyWImpl_SetLobbyMessageEvent static HRESULT WINAPI IDirectPlayLobby3Impl_SetLobbyMessageEvent( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY iface, DWORD flags, DWORD appid, HANDLE event )
DWORD dwFlags,
DWORD dwAppID,
HANDLE hReceiveEvent )
{ {
FIXME(":stub\n"); FIXME(":stub\n");
return DPERR_OUTOFMEMORY; return DPERR_OUTOFMEMORY;
@ -1208,12 +1172,9 @@ static HRESULT WINAPI IDirectPlayLobbyWImpl_SetLobbyMessageEvent
/* DPL 2 methods */ /* DPL 2 methods */
static HRESULT WINAPI IDirectPlayLobby2WImpl_CreateCompoundAddress static HRESULT WINAPI IDirectPlayLobby3Impl_CreateCompoundAddress( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY2 iface, const DPCOMPOUNDADDRESSELEMENT *lpElements, DWORD dwElementCount, void *lpAddress,
LPCDPCOMPOUNDADDRESSELEMENT lpElements, DWORD *lpdwAddressSize )
DWORD dwElementCount,
LPVOID lpAddress,
LPDWORD lpdwAddressSize )
{ {
return DPL_CreateCompoundAddress( lpElements, dwElementCount, lpAddress, lpdwAddressSize, FALSE ); return DPL_CreateCompoundAddress( lpElements, dwElementCount, lpAddress, lpdwAddressSize, FALSE );
} }
@ -1397,11 +1358,10 @@ HRESULT DPL_CreateCompoundAddress
/* DPL 3 methods */ /* DPL 3 methods */
static HRESULT WINAPI IDirectPlayLobby3WImpl_ConnectEx static HRESULT WINAPI IDirectPlayLobby3Impl_ConnectEx( IDirectPlayLobby3 *iface, DWORD dwFlags,
( LPDIRECTPLAYLOBBY3 iface, DWORD dwFlags, REFIID riid, REFIID riid, LPVOID* lplpDP, IUnknown* pUnk )
LPVOID* lplpDP, IUnknown* pUnk )
{ {
IDirectPlayLobbyAImpl *This = (IDirectPlayLobbyAImpl *)iface ; IDirectPlayLobbyImpl *This = impl_from_IDirectPlayLobby3( iface );
return DPL_ConnectEx( This, dwFlags, riid, lplpDP, pUnk ); return DPL_ConnectEx( This, dwFlags, riid, lplpDP, pUnk );
} }
@ -1413,8 +1373,8 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_ConnectEx
return DPL_ConnectEx( This, dwFlags, riid, lplpDP, pUnk ); return DPL_ConnectEx( This, dwFlags, riid, lplpDP, pUnk );
} }
static HRESULT WINAPI IDirectPlayLobby3WImpl_RegisterApplication static HRESULT WINAPI IDirectPlayLobby3Impl_RegisterApplication( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY3 iface, DWORD dwFlags, LPDPAPPLICATIONDESC lpAppDesc ) DWORD flags, DPAPPLICATIONDESC *appdesc )
{ {
FIXME(":stub\n"); FIXME(":stub\n");
return DP_OK; return DP_OK;
@ -1427,8 +1387,8 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_RegisterApplication
return DP_OK; return DP_OK;
} }
static HRESULT WINAPI IDirectPlayLobby3WImpl_UnregisterApplication static HRESULT WINAPI IDirectPlayLobby3Impl_UnregisterApplication( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY3 iface, DWORD dwFlags, REFGUID lpAppDesc ) DWORD flags, REFGUID appdesc )
{ {
FIXME(":stub\n"); FIXME(":stub\n");
return DP_OK; return DP_OK;
@ -1441,8 +1401,8 @@ static HRESULT WINAPI IDirectPlayLobby3AImpl_UnregisterApplication
return DP_OK; return DP_OK;
} }
static HRESULT WINAPI IDirectPlayLobby3WImpl_WaitForConnectionSettings static HRESULT WINAPI IDirectPlayLobby3Impl_WaitForConnectionSettings( IDirectPlayLobby3 *iface,
( LPDIRECTPLAYLOBBY3 iface, DWORD dwFlags ) DWORD dwFlags )
{ {
HRESULT hr = DP_OK; HRESULT hr = DP_OK;
BOOL bStartWait = !(dwFlags & DPLWAIT_CANCEL); BOOL bStartWait = !(dwFlags & DPLWAIT_CANCEL);
@ -1499,36 +1459,28 @@ static const IDirectPlayLobby3Vtbl dpl3A_vt =
IDirectPlayLobby3AImpl_WaitForConnectionSettings IDirectPlayLobby3AImpl_WaitForConnectionSettings
}; };
/* Direct Play Lobby 3 (unicode) Virtual Table for methods */
/* Note: Hack so we can reuse the old functions without compiler warnings */
# define XCAST(fun) (void*)
static const IDirectPlayLobby3Vtbl dpl3_vt = static const IDirectPlayLobby3Vtbl dpl3_vt =
{ {
IDirectPlayLobby3Impl_QueryInterface, IDirectPlayLobby3Impl_QueryInterface,
IDirectPlayLobby3Impl_AddRef, IDirectPlayLobby3Impl_AddRef,
IDirectPlayLobby3Impl_Release, IDirectPlayLobby3Impl_Release,
IDirectPlayLobby3Impl_Connect, IDirectPlayLobby3Impl_Connect,
XCAST(CreateAddress)IDirectPlayLobbyWImpl_CreateAddress, IDirectPlayLobby3Impl_CreateAddress,
XCAST(EnumAddress)IDirectPlayLobbyWImpl_EnumAddress, IDirectPlayLobby3Impl_EnumAddress,
XCAST(EnumAddressTypes)IDirectPlayLobbyWImpl_EnumAddressTypes, IDirectPlayLobby3Impl_EnumAddressTypes,
XCAST(EnumLocalApplications)IDirectPlayLobbyWImpl_EnumLocalApplications, IDirectPlayLobby3Impl_EnumLocalApplications,
XCAST(GetConnectionSettings)IDirectPlayLobbyWImpl_GetConnectionSettings, IDirectPlayLobby3Impl_GetConnectionSettings,
XCAST(ReceiveLobbyMessage)IDirectPlayLobbyWImpl_ReceiveLobbyMessage, IDirectPlayLobby3Impl_ReceiveLobbyMessage,
XCAST(RunApplication)IDirectPlayLobbyWImpl_RunApplication, IDirectPlayLobby3Impl_RunApplication,
XCAST(SendLobbyMessage)IDirectPlayLobbyWImpl_SendLobbyMessage, IDirectPlayLobby3Impl_SendLobbyMessage,
XCAST(SetConnectionSettings)IDirectPlayLobbyWImpl_SetConnectionSettings, IDirectPlayLobby3Impl_SetConnectionSettings,
XCAST(SetLobbyMessageEvent)IDirectPlayLobbyWImpl_SetLobbyMessageEvent, IDirectPlayLobby3Impl_SetLobbyMessageEvent,
IDirectPlayLobby3Impl_CreateCompoundAddress,
XCAST(CreateCompoundAddress)IDirectPlayLobby2WImpl_CreateCompoundAddress, IDirectPlayLobby3Impl_ConnectEx,
IDirectPlayLobby3Impl_RegisterApplication,
IDirectPlayLobby3WImpl_ConnectEx, IDirectPlayLobby3Impl_UnregisterApplication,
IDirectPlayLobby3WImpl_RegisterApplication, IDirectPlayLobby3Impl_WaitForConnectionSettings
IDirectPlayLobby3WImpl_UnregisterApplication,
IDirectPlayLobby3WImpl_WaitForConnectionSettings
}; };
#undef XCAST
HRESULT dplobby_create( REFIID riid, void **ppv ) HRESULT dplobby_create( REFIID riid, void **ppv )
{ {