85 lines
3.3 KiB
C
85 lines
3.3 KiB
C
|
/*==========================================================================
|
||
|
*
|
||
|
* Copyright (C) 2000 Microsoft Corporation. All Rights Reserved.
|
||
|
*
|
||
|
* File: DPLApp.h
|
||
|
* Content: DirectPlay Lobbied Application Header File
|
||
|
*@@BEGIN_MSINTERNAL
|
||
|
* History:
|
||
|
* Date By Reason
|
||
|
* ==== == ======
|
||
|
* 02/21/00 mjn Created
|
||
|
* 03/22/2000 jtk Changed interface names
|
||
|
* 04/25/2000 rmt Bug #s 33138, 33145, 33150
|
||
|
* 05/08/00 rmt Bug #34301 - Add flag to SetAppAvail to allow for multiple connects
|
||
|
* 06/15/00 rmt Bug #33617 - Must provide method for providing automatic launch of DirectPlay instances
|
||
|
* 07/08/2000 rmt Bug #38725 - Need to provide method to detect if app was lobby launched
|
||
|
* rmt Bug #38757 - Callback messages for connections may return AFTER WaitForConnection returns
|
||
|
* rmt Bug #38755 - No way to specify player name in Connection Settings
|
||
|
* rmt Bug #38758 - DPLOBBY8.H has incorrect comments
|
||
|
* rmt Bug #38783 - pvUserApplicationContext is only partially implemented
|
||
|
* rmt Added DPLHANDLE_ALLCONNECTIONS and dwFlags (reserved field to couple of funcs).
|
||
|
*@@END_MSINTERNAL
|
||
|
*
|
||
|
***************************************************************************/
|
||
|
|
||
|
|
||
|
#ifndef __DPLAPP_H__
|
||
|
#define __DPLAPP_H__
|
||
|
|
||
|
//**********************************************************************
|
||
|
// Constant definitions
|
||
|
//**********************************************************************
|
||
|
|
||
|
//**********************************************************************
|
||
|
// Macro definitions
|
||
|
//**********************************************************************
|
||
|
|
||
|
//**********************************************************************
|
||
|
// Structure definitions
|
||
|
//**********************************************************************
|
||
|
|
||
|
typedef struct _DIRECTPLAYLOBBYOBJECT DIRECTPLAYLOBBYOBJECT;
|
||
|
|
||
|
//**********************************************************************
|
||
|
// Variable definitions
|
||
|
//**********************************************************************
|
||
|
|
||
|
//**********************************************************************
|
||
|
// Constant definitions
|
||
|
//**********************************************************************
|
||
|
|
||
|
#define DPL_LOBBYLAUNCHED_CONNECT_TIMEOUT 4000
|
||
|
|
||
|
//
|
||
|
// VTable for lobbied application interface
|
||
|
//
|
||
|
extern IDirectPlay8LobbiedApplicationVtbl DPL_8LobbiedApplicationVtbl;
|
||
|
|
||
|
//**********************************************************************
|
||
|
// Function prototypes
|
||
|
//**********************************************************************
|
||
|
|
||
|
STDMETHODIMP DPL_RegisterProgram(IDirectPlay8LobbiedApplication *pInterface,
|
||
|
PDPL_PROGRAM_DESC pdplProgramDesc,
|
||
|
const DWORD dwFlags);
|
||
|
|
||
|
STDMETHODIMP DPL_UnRegisterProgram(IDirectPlay8LobbiedApplication *pInterface,
|
||
|
GUID *pguidApplication,
|
||
|
const DWORD dwFlags);
|
||
|
|
||
|
STDMETHODIMP DPL_SetAppAvailable(IDirectPlay8LobbiedApplication *pInterface, const BOOL fAvailable, const DWORD dwFlags );
|
||
|
|
||
|
STDMETHODIMP DPL_WaitForConnection(IDirectPlay8LobbiedApplication *pInterface,
|
||
|
const DWORD dwMilliseconds,
|
||
|
const DWORD dwFlags );
|
||
|
|
||
|
STDMETHODIMP DPL_UpdateStatus(IDirectPlay8LobbiedApplication *pInterface,
|
||
|
const DPNHANDLE hLobby,
|
||
|
const DWORD dwStatus,
|
||
|
const DWORD dwFlags );
|
||
|
|
||
|
HRESULT DPLAttemptLobbyConnection(DIRECTPLAYLOBBYOBJECT *const pdpLobbyObject);
|
||
|
|
||
|
#endif // __DPLAPP_H__
|