8#ifndef __DPLOBBY_INCLUDED__
9#define __DPLOBBY_INCLUDED__
22DEFINE_GUID(IID_IDirectPlayLobby, 0xaf465c71, 0x9588, 0x11cf, 0xa0, 0x20, 0x0, 0xaa, 0x0, 0x61, 0x57, 0xac);
24DEFINE_GUID(IID_IDirectPlayLobbyA, 0x26c66a70, 0xb367, 0x11cf, 0xa0, 0x24, 0x0, 0xaa, 0x0, 0x61, 0x57, 0xac);
26DEFINE_GUID(IID_IDirectPlayLobby2, 0x194c220, 0xa303, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
28DEFINE_GUID(IID_IDirectPlayLobby2A, 0x1bb4af80, 0xa303, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
30DEFINE_GUID(CLSID_DirectPlayLobby, 0x2fe8f810, 0xb2a5, 0x11d0, 0xa7, 0x87, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc);
101typedef BOOL (FAR PASCAL *LPDPENUMADDRESSCALLBACK)(
102 REFGUID guidDataType,
110typedef BOOL (FAR PASCAL *LPDPLENUMADDRESSTYPESCALLBACK)(
111 REFGUID guidDataType,
118typedef BOOL (FAR PASCAL * LPDPLENUMLOCALAPPLICATIONSCALLBACK)(
130#define DirectPlayLobbyCreate DirectPlayLobbyCreateW
132#define DirectPlayLobbyCreate DirectPlayLobbyCreateA
145#define INTERFACE IDirectPlayLobby
149 STDMETHOD(QueryInterface) (THIS_ REFIID riid,
LPVOID * ppvObj) PURE;
150 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
151 STDMETHOD_(ULONG,Release) (THIS) PURE;
155 STDMETHOD(CreateAddress) (THIS_ REFGUID, REFGUID, LPCVOID,
DWORD,
LPVOID, LPDWORD) PURE;
156 STDMETHOD(EnumAddress) (THIS_ LPDPENUMADDRESSCALLBACK, LPCVOID,
DWORD,
LPVOID) PURE;
157 STDMETHOD(EnumAddressTypes) (THIS_ LPDPLENUMADDRESSTYPESCALLBACK, REFGUID,
LPVOID,
DWORD) PURE;
158 STDMETHOD(EnumLocalApplications)(THIS_ LPDPLENUMLOCALAPPLICATIONSCALLBACK,
LPVOID,
DWORD) PURE;
159 STDMETHOD(GetConnectionSettings)(THIS_
DWORD,
LPVOID, LPDWORD) PURE;
160 STDMETHOD(ReceiveLobbyMessage) (THIS_
DWORD,
DWORD, LPDWORD,
LPVOID, LPDWORD) PURE;
164 STDMETHOD(SetLobbyMessageEvent) (THIS_
DWORD,
DWORD, HANDLE) PURE;
174#define INTERFACE IDirectPlayLobby2
178 STDMETHOD(QueryInterface) (THIS_ REFIID riid,
LPVOID * ppvObj) PURE;
179 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
180 STDMETHOD_(ULONG,Release) (THIS) PURE;
184 STDMETHOD(CreateAddress) (THIS_ REFGUID, REFGUID, LPCVOID,
DWORD,
LPVOID, LPDWORD) PURE;
185 STDMETHOD(EnumAddress) (THIS_ LPDPENUMADDRESSCALLBACK, LPCVOID,
DWORD,
LPVOID) PURE;
186 STDMETHOD(EnumAddressTypes) (THIS_ LPDPLENUMADDRESSTYPESCALLBACK, REFGUID,
LPVOID,
DWORD) PURE;
187 STDMETHOD(EnumLocalApplications)(THIS_ LPDPLENUMLOCALAPPLICATIONSCALLBACK,
LPVOID,
DWORD) PURE;
188 STDMETHOD(GetConnectionSettings)(THIS_
DWORD,
LPVOID, LPDWORD) PURE;
189 STDMETHOD(ReceiveLobbyMessage) (THIS_
DWORD,
DWORD, LPDWORD,
LPVOID, LPDWORD) PURE;
193 STDMETHOD(SetLobbyMessageEvent) (THIS_
DWORD,
DWORD, HANDLE) PURE;
205#if !defined(__cplusplus) || defined(CINTERFACE)
207#define IDirectPlayLobby_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
208#define IDirectPlayLobby_AddRef(p) (p)->lpVtbl->AddRef(p)
209#define IDirectPlayLobby_Release(p) (p)->lpVtbl->Release(p)
210#define IDirectPlayLobby_Connect(p,a,b,c) (p)->lpVtbl->Connect(p,a,b,c)
211#define IDirectPlayLobby_CreateAddress(p,a,b,c,d,e,f) (p)->lpVtbl->CreateAddress(p,a,b,c,d,e,f)
212#define IDirectPlayLobby_CreateCompoundAddress(p,a,b,c,d) (p)->lpVtbl->CreateCompoundAddress(p,a,b,c,d)
213#define IDirectPlayLobby_EnumAddress(p,a,b,c,d) (p)->lpVtbl->EnumAddress(p,a,b,c,d)
214#define IDirectPlayLobby_EnumAddressTypes(p,a,b,c,d) (p)->lpVtbl->EnumAddressTypes(p,a,b,c,d)
215#define IDirectPlayLobby_EnumLocalApplications(p,a,b,c) (p)->lpVtbl->EnumLocalApplications(p,a,b,c)
216#define IDirectPlayLobby_GetConnectionSettings(p,a,b,c) (p)->lpVtbl->GetConnectionSettings(p,a,b,c)
217#define IDirectPlayLobby_ReceiveLobbyMessage(p,a,b,c,d,e) (p)->lpVtbl->ReceiveLobbyMessage(p,a,b,c,d,e)
218#define IDirectPlayLobby_RunApplication(p,a,b,c,d) (p)->lpVtbl->RunApplication(p,a,b,c,d)
219#define IDirectPlayLobby_SendLobbyMessage(p,a,b,c,d) (p)->lpVtbl->SendLobbyMessage(p,a,b,c,d)
220#define IDirectPlayLobby_SetConnectionSettings(p,a,b,c) (p)->lpVtbl->SetConnectionSettings(p,a,b,c)
221#define IDirectPlayLobby_SetLobbyMessageEvent(p,a,b,c) (p)->lpVtbl->SetLobbyMessageEvent(p,a,b,c)
225#define IDirectPlayLobby_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
226#define IDirectPlayLobby_AddRef(p) (p)->AddRef()
227#define IDirectPlayLobby_Release(p) (p)->Release()
228#define IDirectPlayLobby_Connect(p,a,b,c) (p)->Connect(a,b,c)
229#define IDirectPlayLobby_CreateAddress(p,a,b,c,d,e,f) (p)->CreateAddress(a,b,c,d,e,f)
230#define IDirectPlayLobby_CreateCompoundAddress(p,a,b,c,d) (p)->lpVtbl->CreateCompoundAddress(a,b,c,d)
231#define IDirectPlayLobby_EnumAddress(p,a,b,c,d) (p)->EnumAddress(a,b,c,d)
232#define IDirectPlayLobby_EnumAddressTypes(p,a,b,c,d) (p)->EnumAddressTypes(a,b,c,d)
233#define IDirectPlayLobby_EnumLocalApplications(p,a,b,c) (p)->EnumLocalApplications(a,b,c)
234#define IDirectPlayLobby_GetConnectionSettings(p,a,b,c) (p)->GetConnectionSettings(a,b,c)
235#define IDirectPlayLobby_ReceiveLobbyMessage(p,a,b,c,d,e) (p)->ReceiveLobbyMessage(a,b,c,d,e)
236#define IDirectPlayLobby_RunApplication(p,a,b,c,d) (p)->RunApplication(a,b,c,d)
237#define IDirectPlayLobby_SendLobbyMessage(p,a,b,c,d) (p)->SendLobbyMessage(a,b,c,d)
238#define IDirectPlayLobby_SetConnectionSettings(p,a,b,c) (p)->SetConnectionSettings(a,b,c)
239#define IDirectPlayLobby_SetLobbyMessageEvent(p,a,b,c) (p)->SetLobbyMessageEvent(a,b,c)
254#define DPLMSG_SYSTEM 0x00000001
262#define DPLMSG_STANDARD 0x00000002
301#define DPL_NOCONFIRMATION 0
358#define DPLSYS_CONNECTIONSETTINGSREAD 0x00000001
363#define DPLSYS_DPLAYCONNECTFAILED 0x00000002
368#define DPLSYS_DPLAYCONNECTSUCCEEDED 0x00000003
373#define DPLSYS_APPTERMINATED 0x00000004
378#define DPLSYS_SETPROPERTY 0x00000005
383#define DPLSYS_SETPROPERTYRESPONSE 0x00000006
388#define DPLSYS_GETPROPERTY 0x00000007
393#define DPLSYS_GETPROPERTYRESPONSE 0x00000008
4120x762ccda1, 0xd916, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
4240xf56920a0, 0xd218, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
4360xb4319322, 0xd20d, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
4600x48784000, 0xd219, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
5100x1318f560, 0x912c, 0x11d0, 0x9d, 0xaa, 0x0, 0xa0, 0xc9, 0xa, 0x43, 0xcb);
5210x7d916c0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
5320x59b95640, 0x9667, 0x11d0, 0xa7, 0x7d, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc);
5430x78ec89a0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
5470xba5a7a70, 0x9dbf, 0x11d0, 0x9c, 0xc1, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
5580xf6dcc200, 0xa2fe, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
5620x1fd92e0, 0xa2ff, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
5730xc4a54da0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
5770xe63232a0, 0x9dbf, 0x11d0, 0x9c, 0xc1, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
587#define DPCPA_NOFLOW 0
588#define DPCPA_XONXOFFFLOW 1
589#define DPCPA_RTSFLOW 2
590#define DPCPA_DTRFLOW 3
591#define DPCPA_RTSDTRFLOW 4
6120xf2f0ce00, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
620#define DPLAD_SYSTEM DPLMSG_SYSTEM
[AI] Implements the InfoScore/High Score game world/area, including score table display and handling ...
typedef DWORD(FAR PASCAL *LPCLIPPERCALLBACK)(LPDIRECTDRAWCLIPPER lpDDClipper
struct IDirectPlay2 FAR * LPDIRECTPLAY2
struct DPLCONNECTION * LPDPLCONNECTION
struct IDirectPlayLobby2 FAR * LPDIRECTPLAYLOBBY2
DECLARE_INTERFACE_(IDirectPlayLobby, IUnknown)
struct _DPLMSG_GETPROPERTYRESPONSE * LPDPLMSG_GETPROPERTYRESPONSE
struct _DPLMSG_GETPROPERTYRESPONSE DPLMSG_GETPROPERTYRESPONSE
typedef BOOL(FAR PASCAL *LPDPENUMADDRESSCALLBACK)(REFGUID guidDataType
struct _DPLMSG_GETPROPERTY * LPDPLMSG_GETPROPERTY
struct _DPLMSG_SETPROPERTYRESPONSE DPLMSG_SETPROPERTYRESPONSE
DPCOMPORTADDRESS FAR * LPDPCOMPORTADDRESS
struct _DPADDRESS DPADDRESS
DEFINE_GUID(IID_IDirectPlayLobby, 0xaf465c71, 0x9588, 0x11cf, 0xa0, 0x20, 0x0, 0xaa, 0x0, 0x61, 0x57, 0xac)
const DPLAPPINFO FAR * LPCDPLAPPINFO
struct _DPLDATA_PLAYERGUID DPLDATA_PLAYERGUID
HRESULT WINAPI DirectPlayLobbyCreateA(LPGUID, LPDIRECTPLAYLOBBYA *, IUnknown *, LPVOID, DWORD)
DPADDRESS FAR * LPDPADDRESS
struct _DPLMSG_GENERIC * LPDPLMSG_GENERIC
struct _DPLMSG_SETPROPERTY * LPDPLMSG_SETPROPERTY
struct IDirectPlayLobby FAR * LPDIRECTPLAYLOBBYA
const DPCOMPOUNDADDRESSELEMENT FAR * LPCDPCOMPOUNDADDRESSELEMENT
struct _DPLMSG_SETPROPERTY DPLMSG_SETPROPERTY
HRESULT WINAPI DirectPlayLobbyCreateW(LPGUID, LPDIRECTPLAYLOBBY *, IUnknown *, LPVOID, DWORD)
struct _DPLDATA_PLAYERSCORE DPLDATA_PLAYERSCORE
struct IDirectPlayLobby2 IDirectPlayLobby2A
struct IDirectPlayLobby FAR * LPDIRECTPLAYLOBBY
struct _DPLMSG_GETPROPERTY DPLMSG_GETPROPERTY
struct DPCOMPOUNDADDRESSELEMENT * LPDPCOMPOUNDADDRESSELEMENT
struct _DPCOMPORTADDRESS DPCOMPORTADDRESS
struct IDirectPlayLobby IDirectPlayLobbyA
struct _DPLDATA_PLAYERGUID * LPDPLDATA_PLAYERGUID
struct _DPLDATA_PLAYERSCORE * LPDPLDATA_PLAYERSCORE
struct _DPLMSG_GENERIC DPLMSG_GENERIC
struct IDirectPlayLobby2 FAR * LPDIRECTPLAYLOBBY2A
struct _DPLMSG_SETPROPERTYRESPONSE * LPDPLMSG_SETPROPERTYRESPONSE
struct DPLAPPINFO * LPDPLAPPINFO
DWORD LPCVOID LPVOID lpContext