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);
 
   96typedef BOOL (FAR PASCAL *LPDPENUMADDRESSCALLBACK)(
 
  105typedef BOOL (FAR PASCAL *LPDPLENUMADDRESSTYPESCALLBACK)(
 
  106    REFGUID         guidDataType,
 
  113typedef BOOL (FAR PASCAL * LPDPLENUMLOCALAPPLICATIONSCALLBACK)(
 
  125#define DirectPlayLobbyCreate   DirectPlayLobbyCreateW 
  127#define DirectPlayLobbyCreate   DirectPlayLobbyCreateA 
  140#define INTERFACE IDirectPlayLobby 
  144    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, 
LPVOID * ppvObj) PURE;
 
  145    STDMETHOD_(ULONG,AddRef)        (THIS) PURE;
 
  146    STDMETHOD_(ULONG,Release)       (THIS) PURE;
 
  150    STDMETHOD(CreateAddress)        (THIS_ REFGUID, REFGUID, LPCVOID, 
DWORD, 
LPVOID, LPDWORD) PURE;
 
  151    STDMETHOD(EnumAddress)          (THIS_ LPDPENUMADDRESSCALLBACK, LPCVOID, 
DWORD, 
LPVOID) PURE;
 
  152    STDMETHOD(EnumAddressTypes)     (THIS_ LPDPLENUMADDRESSTYPESCALLBACK, REFGUID, 
LPVOID, 
DWORD) PURE;
 
  153    STDMETHOD(EnumLocalApplications)(THIS_ LPDPLENUMLOCALAPPLICATIONSCALLBACK, 
LPVOID, 
DWORD) PURE;
 
  154    STDMETHOD(GetConnectionSettings)(THIS_ 
DWORD, 
LPVOID, LPDWORD) PURE;
 
  155    STDMETHOD(ReceiveLobbyMessage)  (THIS_ 
DWORD, 
DWORD, LPDWORD, 
LPVOID, LPDWORD) PURE;
 
  159    STDMETHOD(SetLobbyMessageEvent) (THIS_ 
DWORD, 
DWORD, HANDLE) PURE;
 
  169#define INTERFACE IDirectPlayLobby2 
  173    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, 
LPVOID * ppvObj) PURE;
 
  174    STDMETHOD_(ULONG,AddRef)        (THIS) PURE;
 
  175    STDMETHOD_(ULONG,Release)       (THIS) PURE;
 
  179    STDMETHOD(CreateAddress)        (THIS_ REFGUID, REFGUID, LPCVOID, 
DWORD, 
LPVOID, LPDWORD) PURE;
 
  180    STDMETHOD(EnumAddress)          (THIS_ LPDPENUMADDRESSCALLBACK, LPCVOID, 
DWORD, 
LPVOID) PURE;
 
  181    STDMETHOD(EnumAddressTypes)     (THIS_ LPDPLENUMADDRESSTYPESCALLBACK, REFGUID, 
LPVOID, 
DWORD) PURE;
 
  182    STDMETHOD(EnumLocalApplications)(THIS_ LPDPLENUMLOCALAPPLICATIONSCALLBACK, 
LPVOID, 
DWORD) PURE;
 
  183    STDMETHOD(GetConnectionSettings)(THIS_ 
DWORD, 
LPVOID, LPDWORD) PURE;
 
  184    STDMETHOD(ReceiveLobbyMessage)  (THIS_ 
DWORD, 
DWORD, LPDWORD, 
LPVOID, LPDWORD) PURE;
 
  188    STDMETHOD(SetLobbyMessageEvent) (THIS_ 
DWORD, 
DWORD, HANDLE) PURE;
 
  200#if !defined(__cplusplus) || defined(CINTERFACE) 
  202#define IDirectPlayLobby_QueryInterface(p,a,b)              (p)->lpVtbl->QueryInterface(p,a,b) 
  203#define IDirectPlayLobby_AddRef(p)                          (p)->lpVtbl->AddRef(p) 
  204#define IDirectPlayLobby_Release(p)                         (p)->lpVtbl->Release(p) 
  205#define IDirectPlayLobby_Connect(p,a,b,c)                   (p)->lpVtbl->Connect(p,a,b,c) 
  206#define IDirectPlayLobby_CreateAddress(p,a,b,c,d,e,f)       (p)->lpVtbl->CreateAddress(p,a,b,c,d,e,f) 
  207#define IDirectPlayLobby_CreateCompoundAddress(p,a,b,c,d)   (p)->lpVtbl->CreateCompoundAddress(p,a,b,c,d) 
  208#define IDirectPlayLobby_EnumAddress(p,a,b,c,d)             (p)->lpVtbl->EnumAddress(p,a,b,c,d) 
  209#define IDirectPlayLobby_EnumAddressTypes(p,a,b,c,d)        (p)->lpVtbl->EnumAddressTypes(p,a,b,c,d) 
  210#define IDirectPlayLobby_EnumLocalApplications(p,a,b,c)     (p)->lpVtbl->EnumLocalApplications(p,a,b,c) 
  211#define IDirectPlayLobby_GetConnectionSettings(p,a,b,c)     (p)->lpVtbl->GetConnectionSettings(p,a,b,c) 
  212#define IDirectPlayLobby_ReceiveLobbyMessage(p,a,b,c,d,e)   (p)->lpVtbl->ReceiveLobbyMessage(p,a,b,c,d,e) 
  213#define IDirectPlayLobby_RunApplication(p,a,b,c,d)          (p)->lpVtbl->RunApplication(p,a,b,c,d) 
  214#define IDirectPlayLobby_SendLobbyMessage(p,a,b,c,d)        (p)->lpVtbl->SendLobbyMessage(p,a,b,c,d) 
  215#define IDirectPlayLobby_SetConnectionSettings(p,a,b,c)     (p)->lpVtbl->SetConnectionSettings(p,a,b,c) 
  216#define IDirectPlayLobby_SetLobbyMessageEvent(p,a,b,c)      (p)->lpVtbl->SetLobbyMessageEvent(p,a,b,c) 
  220#define IDirectPlayLobby_QueryInterface(p,a,b)              (p)->QueryInterface(a,b) 
  221#define IDirectPlayLobby_AddRef(p)                          (p)->AddRef() 
  222#define IDirectPlayLobby_Release(p)                         (p)->Release() 
  223#define IDirectPlayLobby_Connect(p,a,b,c)                   (p)->Connect(a,b,c) 
  224#define IDirectPlayLobby_CreateAddress(p,a,b,c,d,e,f)       (p)->CreateAddress(a,b,c,d,e,f) 
  225#define IDirectPlayLobby_CreateCompoundAddress(p,a,b,c,d)   (p)->lpVtbl->CreateCompoundAddress(a,b,c,d) 
  226#define IDirectPlayLobby_EnumAddress(p,a,b,c,d)             (p)->EnumAddress(a,b,c,d) 
  227#define IDirectPlayLobby_EnumAddressTypes(p,a,b,c,d)        (p)->EnumAddressTypes(a,b,c,d) 
  228#define IDirectPlayLobby_EnumLocalApplications(p,a,b,c)     (p)->EnumLocalApplications(a,b,c) 
  229#define IDirectPlayLobby_GetConnectionSettings(p,a,b,c)     (p)->GetConnectionSettings(a,b,c) 
  230#define IDirectPlayLobby_ReceiveLobbyMessage(p,a,b,c,d,e)   (p)->ReceiveLobbyMessage(a,b,c,d,e) 
  231#define IDirectPlayLobby_RunApplication(p,a,b,c,d)          (p)->RunApplication(a,b,c,d) 
  232#define IDirectPlayLobby_SendLobbyMessage(p,a,b,c,d)        (p)->SendLobbyMessage(a,b,c,d) 
  233#define IDirectPlayLobby_SetConnectionSettings(p,a,b,c)     (p)->SetConnectionSettings(a,b,c) 
  234#define IDirectPlayLobby_SetLobbyMessageEvent(p,a,b,c)      (p)->SetLobbyMessageEvent(a,b,c) 
  249#define DPLMSG_SYSTEM                   0x00000001 
  257#define DPLMSG_STANDARD                 0x00000002 
  289#define DPL_NOCONFIRMATION          0 
  334#define DPLSYS_CONNECTIONSETTINGSREAD   0x00000001 
  339#define DPLSYS_DPLAYCONNECTFAILED       0x00000002 
  344#define DPLSYS_DPLAYCONNECTSUCCEEDED    0x00000003 
  349#define DPLSYS_APPTERMINATED            0x00000004 
  354#define DPLSYS_SETPROPERTY              0x00000005 
  359#define DPLSYS_SETPROPERTYRESPONSE      0x00000006 
  364#define DPLSYS_GETPROPERTY              0x00000007 
  369#define DPLSYS_GETPROPERTYRESPONSE      0x00000008 
  3880x762ccda1, 0xd916, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
 
  4000xf56920a0, 0xd218, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
 
  4120xb4319322, 0xd20d, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
 
  4360x48784000, 0xd219, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67);
 
  4860x1318f560, 0x912c, 0x11d0, 0x9d, 0xaa, 0x0, 0xa0, 0xc9, 0xa, 0x43, 0xcb);
 
  4970x7d916c0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  5080x59b95640, 0x9667, 0x11d0, 0xa7, 0x7d, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc);
 
  5190x78ec89a0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  5230xba5a7a70, 0x9dbf, 0x11d0, 0x9c, 0xc1, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  5340xf6dcc200, 0xa2fe, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  5380x1fd92e0, 0xa2ff, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  5490xc4a54da0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  5530xe63232a0, 0x9dbf, 0x11d0, 0x9c, 0xc1, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  563#define DPCPA_NOFLOW        0            
  564#define DPCPA_XONXOFFFLOW   1            
  565#define DPCPA_RTSFLOW       2            
  566#define DPCPA_DTRFLOW       3            
  567#define DPCPA_RTSDTRFLOW    4            
  5880xf2f0ce00, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e);
 
  596#define DPLAD_SYSTEM          DPLMSG_SYSTEM 
LPSTR LPSTR LPVOID
Definition: d3dcaps.h:213
 
#define IUnknown
Definition: ddraw.h:28
 
typedef DWORD(FAR PASCAL *LPCLIPPERCALLBACK)(LPDIRECTDRAWCLIPPER lpDDClipper
 
long HRESULT
Definition: ddraw.h:115
 
struct IDirectPlay2 FAR * LPDIRECTPLAY2
Definition: dplay.h:73
 
struct DPLCONNECTION * LPDPLCONNECTION
 
struct DPCOMPOUNDADDRESSELEMENT DPCOMPOUNDADDRESSELEMENT
 
struct IDirectPlayLobby2 FAR * LPDIRECTPLAYLOBBY2
Definition: dplobby.h:45
 
DECLARE_INTERFACE_(IDirectPlayLobby, IUnknown)
Definition: dplobby.h:141
 
struct _DPLMSG_GETPROPERTYRESPONSE * LPDPLMSG_GETPROPERTYRESPONSE
 
LPVOID DWORD dwFlags
Definition: dplobby.h:108
 
DWORD LPCVOID lpData
Definition: dplobby.h:99
 
struct _DPLMSG_GETPROPERTYRESPONSE DPLMSG_GETPROPERTYRESPONSE
Standard message returned by a lobby in response to a DPLMSG_GETPROPERTY message.
 
typedef BOOL(FAR PASCAL *LPDPENUMADDRESSCALLBACK)(REFGUID guidDataType
 
struct _DPLMSG_GETPROPERTY * LPDPLMSG_GETPROPERTY
 
struct _DPLMSG_SETPROPERTYRESPONSE DPLMSG_SETPROPERTYRESPONSE
Standard message returned by a lobby to confirm a DPLMSG_SETPROPERTY message.
 
DPCOMPORTADDRESS FAR * LPDPCOMPORTADDRESS
Definition: dplobby.h:578
 
struct _DPADDRESS DPADDRESS
 
DEFINE_GUID(IID_IDirectPlayLobby, 0xaf465c71, 0x9588, 0x11cf, 0xa0, 0x20, 0x0, 0xaa, 0x0, 0x61, 0x57, 0xac)
 
const DPLAPPINFO FAR * LPCDPLAPPINFO
Definition: dplobby.h:69
 
struct _DPLDATA_PLAYERGUID DPLDATA_PLAYERGUID
 
HRESULT WINAPI DirectPlayLobbyCreateA(LPGUID, LPDIRECTPLAYLOBBYA *, IUnknown *, LPVOID, DWORD)
 
DPADDRESS FAR * LPDPADDRESS
Definition: dplobby.h:476
 
struct _DPLMSG_GENERIC * LPDPLMSG_GENERIC
 
struct _DPLMSG_SETPROPERTY * LPDPLMSG_SETPROPERTY
 
struct IDirectPlayLobby FAR * LPDIRECTPLAYLOBBYA
Definition: dplobby.h:42
 
const DPCOMPOUNDADDRESSELEMENT FAR * LPCDPCOMPOUNDADDRESSELEMENT
Definition: dplobby.h:84
 
struct _DPLMSG_SETPROPERTY DPLMSG_SETPROPERTY
Standard message sent by an application to a lobby to set a property.
 
HRESULT WINAPI DirectPlayLobbyCreateW(LPGUID, LPDIRECTPLAYLOBBY *, IUnknown *, LPVOID, DWORD)
 
struct _DPLDATA_PLAYERSCORE DPLDATA_PLAYERSCORE
 
struct DPLAPPINFO DPLAPPINFO
 
struct IDirectPlayLobby2 IDirectPlayLobby2A
Definition: dplobby.h:47
 
DWORD dwDataSize
Definition: dplobby.h:98
 
struct IDirectPlayLobby FAR * LPDIRECTPLAYLOBBY
Definition: dplobby.h:41
 
struct _DPLMSG_GETPROPERTY DPLMSG_GETPROPERTY
Standard message sent by an application to a lobby to request the current value of a property.
 
struct DPCOMPOUNDADDRESSELEMENT * LPDPCOMPOUNDADDRESSELEMENT
 
struct _DPCOMPORTADDRESS DPCOMPORTADDRESS
 
struct IDirectPlayLobby IDirectPlayLobbyA
Definition: dplobby.h:43
 
struct _DPLDATA_PLAYERGUID * LPDPLDATA_PLAYERGUID
 
struct _DPLDATA_PLAYERSCORE * LPDPLDATA_PLAYERSCORE
 
struct _DPLMSG_GENERIC DPLMSG_GENERIC
Generic message structure used to identify the message type.
 
struct IDirectPlayLobby2 FAR * LPDIRECTPLAYLOBBY2A
Definition: dplobby.h:46
 
struct _DPLMSG_SETPROPERTYRESPONSE * LPDPLMSG_SETPROPERTYRESPONSE
 
struct DPLAPPINFO * LPDPLAPPINFO
 
DWORD LPCVOID LPVOID lpContext
Definition: dplobby.h:100
 
LPVOID lpData
Definition: dplobby.h:78
 
DWORD dwDataSize
Definition: dplobby.h:77
 
GUID guidDataType
Definition: dplobby.h:76
 
DWORD dwSize
Size of this structure.
Definition: dplobby.h:56
 
GUID guidApplication
GUID of the Application.
Definition: dplobby.h:57
 
LPWSTR lpszAppName
Definition: dplobby.h:61
 
LPSTR lpszAppNameA
Pointer to the Application Name.
Definition: dplobby.h:60
 
Definition: dplobby.h:471
 
DWORD dwDataSize
Definition: dplobby.h:473
 
GUID guidDataType
Definition: dplobby.h:472
 
Definition: dplobby.h:570
 
DWORD dwComPort
COM port to use (1-4)
Definition: dplobby.h:571
 
DWORD dwFlowControl
flow control (none, xon/xoff, rts, dtr)
Definition: dplobby.h:575
 
DWORD dwParity
parity (none, odd, even, mark)
Definition: dplobby.h:574
 
DWORD dwStopBits
no. stop bits (1-2)
Definition: dplobby.h:573
 
DWORD dwBaudRate
baud rate (100-256k)
Definition: dplobby.h:572
 
Definition: dplobby.h:421
 
DWORD dwPlayerFlags
Definition: dplobby.h:423
 
GUID guidPlayer
Definition: dplobby.h:422
 
Definition: dplobby.h:445
 
LONG Score[1]
Definition: dplobby.h:447
 
DWORD dwScoreCount
Definition: dplobby.h:446
 
Generic message structure used to identify the message type.
Definition: dplobby.h:274
 
DWORD dwType
Message type.
Definition: dplobby.h:275
 
Standard message returned by a lobby in response to a DPLMSG_GETPROPERTY message.
Definition: dplobby.h:312
 
GUID guidPropertyTag
Property GUID.
Definition: dplobby.h:316
 
DWORD dwRequestID
Request ID.
Definition: dplobby.h:314
 
GUID guidPlayer
Player GUID.
Definition: dplobby.h:315
 
DWORD dwType
Message type.
Definition: dplobby.h:313
 
HRESULT hr
Return Code.
Definition: dplobby.h:317
 
DWORD dwDataSize
Size of data.
Definition: dplobby.h:318
 
DWORD dwPropertyData[1]
Buffer containing data.
Definition: dplobby.h:319
 
Standard message sent by an application to a lobby to request the current value of a property.
Definition: dplobby.h:303
 
GUID guidPlayer
Player GUID.
Definition: dplobby.h:306
 
GUID guidPropertyTag
Property GUID.
Definition: dplobby.h:307
 
DWORD dwType
Message type.
Definition: dplobby.h:304
 
DWORD dwRequestID
Request ID.
Definition: dplobby.h:305
 
Standard message returned by a lobby to confirm a DPLMSG_SETPROPERTY message.
Definition: dplobby.h:293
 
GUID guidPropertyTag
Property GUID.
Definition: dplobby.h:297
 
GUID guidPlayer
Player GUID.
Definition: dplobby.h:296
 
HRESULT hr
Return Code.
Definition: dplobby.h:298
 
DWORD dwType
Message type.
Definition: dplobby.h:294
 
DWORD dwRequestID
Request ID.
Definition: dplobby.h:295
 
Standard message sent by an application to a lobby to set a property.
Definition: dplobby.h:280
 
DWORD dwType
Message type.
Definition: dplobby.h:281
 
GUID guidPlayer
Player GUID.
Definition: dplobby.h:283
 
DWORD dwPropertyData[1]
Buffer containing data.
Definition: dplobby.h:286
 
DWORD dwDataSize
Size of data.
Definition: dplobby.h:285
 
DWORD dwRequestID
Request ID (DPL_NOCONFIRMATION if no confirmation desired)
Definition: dplobby.h:282
 
GUID guidPropertyTag
Property GUID.
Definition: dplobby.h:284