19#ifndef __WINE_LOBBY_SP_H
20#define __WINE_LOBBY_SP_H
30DEFINE_GUID(IID_IDPLobbySP, 0x5a4e5a20, 0x2ced, 0x11d0, 0xa8, 0x89, 0x0, 0xa0, 0xc9, 0x5, 0x43, 0x3c);
34#define DPLSP_MAJORVERSION 0x00050000
463#define INTERFACE IDPLobbySP
490#if !defined (__cplusplus) || defined(CINTERFACE)
492#define IDPLobbySP_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
493#define IDPLobbySP_AddRef(p) (p)->lpVtbl->AddRef(p)
494#define IDPLobbySP_Release(p) (p)->lpVtbl->Release(p)
497#define IDPLobbySP_AddGroupToGroup(p,a) (p)->lpVtbl->AddGroupToGroup(p,a)
498#define IDPLobbySP_AddPlayerToGroup(p,a) (p)->lpVtbl->AddPlayerToGroup(p,a)
499#define IDPLobbySP_CreateGroup(p,a) (p)->lpVtbl->CreateGroup(p,a)
500#define IDPLobbySP_CreateGroupInGroup(p,a) (p)->lpVtbl->CreateGroupInGroup(p,a)
501#define IDPLobbySP_DeleteGroupFromGroup(p,a) (p)->lpVtbl->DeleteGroupFromGroup(p,a)
502#define IDPLobbySP_DeletePlayerFromGroup(p,a) (p)->lpVtbl->DeletePlayerFromGroup(p,a)
503#define IDPLobbySP_DestroyGroup(p,a) (p)->lpVtbl->DestroyGroup(p,a)
504#define IDPLobbySP_EnumSessionsResponse(p,a) (p)->lpVtbl->EnumSessionsResponse(p,a)
505#define IDPLobbySP_GetSPDataPointer(p,a) (p)->lpVtbl->GetSPDataPointer(p,a)
506#define IDPLobbySP_HandleMessage(p,a) (p)->lpVtbl->HandleMessage(p,a)
507#define IDPLobbySP_SetGroupName(p,a) (p)->lpVtbl->SetGroupName(p,a)
508#define IDPLobbySP_SetPlayerName(p,a) (p)->lpVtbl->SetPlayerName(p,a)
509#define IDPLobbySP_SetSessionDesc(p,a) (p)->lpVtbl->SetSessionDesc(p,a)
510#define IDPLobbySP_StartSession(p,a) (p)->lpVtbl->StartSession(p,a)
511#define IDPLobbySP_SetSPDataPointer(p,a) (p)->lpVtbl->SetSPDataPointer(p,a)
#define DECLARE_INTERFACE_(i, b)
struct SPDATA_CLOSE * LPSPDATA_CLOSE
HRESULT(WINAPI * LPSP_ADDPLAYERTOGROUP)(LPSPDATA_ADDPLAYERTOGROUP)
struct SPDATA_DESTROYGROUP * LPSPDATA_DESTROYGROUP
struct IDPLobbySP * LPDPLOBBYSP
struct SPDATA_DELETEREMOTEGROUPFROMGROUP * LPSPDATA_DELETEREMOTEGROUPFROMGROUP
struct SPDATA_HANDLEMESSAGE * LPSPDATA_HANDLEMESSAGE
struct SPDATA_SETREMOTEPLAYERNAME * LPSPDATA_SETREMOTEPLAYERNAME
struct SPDATA_DELETEPLAYERFROMGROUP * LPSPDATA_DELETEPLAYERFROMGROUP
HRESULT(WINAPI * LPSP_GETPLAYERDATA)(LPSPDATA_GETPLAYERDATA)
HRESULT(WINAPI * LPSP_DESTROYGROUP)(LPSPDATA_DESTROYGROUP)
HRESULT(WINAPI * LPSP_DESTROYPLAYER)(LPSPDATA_DESTROYPLAYER)
struct SPDATA_GETPLAYERDATA * LPSPDATA_GETPLAYERDATA
HRESULT(WINAPI * LPSP_INIT)(LPSPDATA_INIT)
HRESULT(WINAPI * LPSP_ADDGROUPTOGROUP)(LPSPDATA_ADDGROUPTOGROUP)
struct SPDATA_CREATEPLAYER * LPSPDATA_CREATEPLAYER
struct SPDATA_DESTROYREMOTEGROUP * LPSPDATA_DESTROYREMOTEGROUP
struct SPDATA_ADDGROUPTOGROUP * LPSPDATA_ADDGROUPTOGROUP
struct SPDATA_DESTROYPLAYER * LPSPDATA_DESTROYPLAYER
struct SPDATA_SETPLAYERDATA * LPSPDATA_SETPLAYERDATA
HRESULT(WINAPI * LPSP_GETCAPS)(LPSPDATA_GETCAPS)
struct SPDATA_DELETEGROUPFROMGROUP * LPSPDATA_DELETEGROUPFROMGROUP
HRESULT(WINAPI * LPSP_GETGROUPDATA)(LPSPDATA_GETGROUPDATA)
struct SPDATA_BUILDPARENTALHIERARCHY * LPSPDATA_BUILDPARENTALHIERARCHY
struct SPDATA_DELETEREMOTEPLAYERFROMGROUP * LPSPDATA_DELETEREMOTEPLAYERFROMGROUP
HRESULT(WINAPI * LPSP_SETPLAYERDATA)(LPSPDATA_SETPLAYERDATA)
struct SPDATA_CREATEGROUPINGROUP * LPSPDATA_CREATEGROUPINGROUP
HRESULT(WINAPI * LPSP_CLOSE)(LPSPDATA_CLOSE)
struct SPDATA_GETGROUPDATA * LPSPDATA_GETGROUPDATA
HRESULT(WINAPI * LPSP_SHUTDOWN)(LPSPDATA_SHUTDOWN)
struct SPDATA_STARTSESSIONCOMMAND * LPSPDATA_STARTSESSIONCOMMAND
HRESULT(WINAPI * LPSP_ENUMSESSIONS)(LPSPDATA_ENUMSESSIONS)
HRESULT(WINAPI * LPSP_STARTSESSION)(LPSPDATA_STARTSESSION)
HRESULT(WINAPI * LPSP_DELETEPLAYERFROMGROUP)(LPSPDATA_DELETEPLAYERFROMGROUP)
HRESULT(WINAPI * LPSP_CREATEGROUPINGROUP)(LPSPDATA_CREATEGROUPINGROUP)
HRESULT(WINAPI * LPSP_CREATEPLAYER)(LPSPDATA_CREATEPLAYER)
HRESULT(WINAPI * LPSP_SETGROUPNAME)(LPSPDATA_SETGROUPNAME)
HRESULT(WINAPI * LPSP_SETPLAYERNAME)(LPSPDATA_SETPLAYERNAME)
struct SPDATA_OPEN * LPSPDATA_OPEN
struct SPDATA_ENUMSESSIONSRESPONSE * LPSPDATA_ENUMSESSIONSRESPONSE
struct SPDATA_SETGROUPNAME * LPSPDATA_SETGROUPNAME
HRESULT(WINAPI * LPSP_DELETEGROUPFROMGROUP)(LPSPDATA_DELETEGROUPFROMGROUP)
struct SPDATA_SETGROUPCONNECTIONSETTINGS * LPSPDATA_SETGROUPCONNECTIONSETTINGS
struct SPDATA_SETPLAYERNAME * LPSPDATA_SETPLAYERNAME
HRESULT(WINAPI * LPSP_SEND)(LPSPDATA_SEND)
struct SPDATA_CREATEREMOTEGROUP * LPSPDATA_CREATEREMOTEGROUP
struct SPDATA_ADDREMOTEPLAYERTOGROUP * LPSPDATA_ADDREMOTEPLAYERTOGROUP
HRESULT(WINAPI * LPSP_SENDCHATMESSAGE)(LPSPDATA_CHATMESSAGE)
struct SPDATA_GETGROUPCONNECTIONSETTINGS * LPSPDATA_GETGROUPCONNECTIONSETTINGS
struct SPDATA_ENUMSESSIONS * LPSPDATA_ENUMSESSIONS
struct SPDATA_CREATEREMOTEGROUPINGROUP * LPSPDATA_CREATEREMOTEGROUPINGROUP
struct SPDATA_GETPLAYERCAPS * LPSPDATA_GETPLAYERCAPS
struct SPDATA_STARTSESSION * LPSPDATA_STARTSESSION
DWORD gdwDPlaySPRefCount DECLSPEC_HIDDEN
HRESULT(WINAPI * LPSP_BUILDPARENTALHIERARCHY)(LPSPDATA_BUILDPARENTALHIERARCHY)
struct SPDATA_GETCAPS * LPSPDATA_GETCAPS
struct SPDATA_ADDPLAYERTOGROUP * LPSPDATA_ADDPLAYERTOGROUP
struct SPDATA_ADDREMOTEGROUPTOGROUP * LPSPDATA_ADDREMOTEGROUPTOGROUP
struct SP_CALLBACKS * LPSP_CALLBACKS
HRESULT(WINAPI * LPSP_GETGROUPCONNECTIONSETTINGS)(LPSPDATA_GETGROUPCONNECTIONSETTINGS)
HRESULT(WINAPI * LPSP_GETPLAYERCAPS)(LPSPDATA_GETPLAYERCAPS)
struct SPDATA_SETREMOTEGROUPNAME * LPSPDATA_SETREMOTEGROUPNAME
struct SPDATA_SETSESSIONDESC * LPSPDATA_SETSESSIONDESC
HRESULT(WINAPI * LPSP_HANDLEMESSAGE)(LPSPDATA_HANDLEMESSAGE)
HRESULT(WINAPI * LPSP_OPEN)(LPSPDATA_OPEN)
struct SPDATA_INIT * LPSPDATA_INIT
struct SPDATA_SHUTDOWN * LPSPDATA_SHUTDOWN
HRESULT(WINAPI * LPSP_SETGROUPCONNECTIONSETTINGS)(LPSPDATA_SETGROUPCONNECTIONSETTINGS)
HRESULT(WINAPI * LPSP_SETGROUPDATA)(LPSPDATA_SETGROUPDATA)
struct SPDATA_SETGROUPDATA * LPSPDATA_SETGROUPDATA
struct SPDATA_CREATEGROUP * LPSPDATA_CREATEGROUP
struct SPDATA_SEND * LPSPDATA_SEND
struct SPDATA_CHATMESSAGE * LPSPDATA_CHATMESSAGE
HRESULT(WINAPI * LPSP_CREATEGROUP)(LPSPDATA_CREATEGROUP)
static HRESULT QueryInterface(REFIID, void **)
static ULONG WINAPI AddRef(IStream *iface)
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
LPCDPCREDENTIALS lpCredentials
LPSP_GETPLAYERCAPS GetPlayerCaps
LPSP_SETGROUPDATA SetGroupData
LPSP_DESTROYGROUP DestroyGroup
LPSP_SETGROUPCONNECTIONSETTINGS SetGroupConnectionSettings
LPSP_DELETEGROUPFROMGROUP DeleteGroupFromGroup
LPSP_DESTROYPLAYER DestroyPlayer
LPSP_SETPLAYERDATA SetPlayerData
LPSP_SETPLAYERNAME SetPlayerName
LPSP_GETGROUPCONNECTIONSETTINGS GetGroupConnectionSettings
LPSP_ADDPLAYERTOGROUP AddPlayerToGroup
LPSP_DELETEPLAYERFROMGROUP DeletePlayerFromGroup
LPSP_GETPLAYERDATA GetPlayerData
LPSP_ENUMSESSIONS EnumSessions
LPSP_ADDGROUPTOGROUP AddGroupToGroup
LPSP_CREATEPLAYER CreatePlayer
LPSP_SENDCHATMESSAGE SendChatMessage
LPSP_GETGROUPDATA GetGroupData
LPSP_STARTSESSION StartSession
LPSP_BUILDPARENTALHIERARCHY BuildParentalHierarchy
LPSP_CREATEGROUPINGROUP CreateGroupInGroup
LPSP_CREATEGROUP CreateGroup
LPSP_SETGROUPNAME SetGroupName
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject