Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
3.9 KiB

  1. /*==========================================================================
  2. *
  3. * Copyright (C) 1999-2000 Microsoft Corporation. All Rights Reserved.
  4. *
  5. * File: dplparam.h
  6. * Content: DirectPlayLobby8 Parameter Validation helper routines
  7. *
  8. * History:
  9. * Date By Reason
  10. * ==== == ======
  11. * 04/18/00 rmt Created
  12. * 04/25/00 rmt Bug #s 33138, 33145, 33150
  13. * 04/26/00 mjn Removed dwTimeOut from Send() API call
  14. * 06/15/00 rmt Bug #33617 - Must provide method for providing automatic launch of DirectPlay instances
  15. * 07/08/2000 rmt Bug #38725 - Need to provide method to detect if app was lobby launched
  16. * rmt Bug #38757 - Callback messages for connections may return AFTER WaitForConnection returns
  17. * rmt Bug #38755 - No way to specify player name in Connection Settings
  18. * rmt Bug #38758 - DPLOBBY8.H has incorrect comments
  19. * rmt Bug #38783 - pvUserApplicationContext is only partially implemented
  20. * rmt Added DPLHANDLE_ALLCONNECTIONS and dwFlags (reserved field to couple of funcs).
  21. *
  22. ***************************************************************************/
  23. #ifndef __DPLPARAM_H
  24. #define __DPLPARAM_H
  25. extern BOOL IsValidDirectPlayLobby8Object( LPVOID lpvObject );
  26. extern HRESULT DPL_ValidateGetConnectionSettings(LPVOID lpv,const DPNHANDLE hLobbyClient, DPL_CONNECTION_SETTINGS * const pdplSessionInfo, DWORD *pdwInfoSize, const DWORD dwFlags );
  27. extern HRESULT DPL_ValidateSetConnectionSettings(LPVOID lpv,const DPNHANDLE hLobbyClient, const DPL_CONNECTION_SETTINGS * const pdplSessionInfo, const DWORD dwFlags );
  28. extern HRESULT DPL_ValidConnectionSettings( const DPL_CONNECTION_SETTINGS * const pdplConnectSettings );
  29. extern HRESULT DPL_ValidateQueryInterface( LPVOID lpv,REFIID riid,LPVOID *ppv );
  30. extern HRESULT DPL_ValidateRelease( PVOID pv );
  31. extern HRESULT DPL_ValidateAddRef( PVOID pv );
  32. extern HRESULT DPL_ValidConnectInfo( const DPL_CONNECT_INFO * const dplConnectInfo );
  33. extern HRESULT DPL_ValidProgramDesc( const DPL_PROGRAM_DESC * const dplProgramInfo );
  34. extern HRESULT DPL_ValidateRegisterProgram(IDirectPlay8LobbiedApplication *pInterface,
  35. DPL_PROGRAM_DESC *const pdplProgramDesc,
  36. const DWORD dwFlags);
  37. extern HRESULT DPL_ValidateUnRegisterProgram(IDirectPlay8LobbiedApplication *pInterface,
  38. GUID *pguidApplication,
  39. const DWORD dwFlags);
  40. extern HRESULT DPL_ValidateSetAppAvailable(IDirectPlay8LobbiedApplication *pInterface, const BOOL fAvailable, const DWORD dwFlags);
  41. extern HRESULT DPL_ValidateWaitForConnection(IDirectPlay8LobbiedApplication *pInterface,
  42. const DWORD dwMilliseconds, const DWORD dwFlags );
  43. extern HRESULT DPL_ValidateUpdateStatus(IDirectPlay8LobbiedApplication *pInterface,
  44. const DPNHANDLE hLobby,
  45. const DWORD dwStatus, const DWORD dwFlags );
  46. extern HRESULT DPL_ValidateEnumLocalPrograms(IDirectPlay8LobbyClient *pInterface,
  47. GUID *const pGuidApplication,
  48. BYTE *const pEnumData,
  49. DWORD *const pdwEnumDataSize,
  50. DWORD *const pdwEnumDataItems,
  51. const DWORD dwFlags );
  52. extern HRESULT DPL_ValidateConnectApplication(IDirectPlay8LobbyClient *pInterface,
  53. DPL_CONNECT_INFO *const pdplConnectionInfo,
  54. const PVOID pvUserApplicationContext,
  55. DPNHANDLE *const hApplication,
  56. const DWORD dwTimeOut,
  57. const DWORD dwFlags);
  58. extern HRESULT DPL_ValidateReleaseApplication(IDirectPlay8LobbyClient *pInterface,
  59. const DPNHANDLE hApplication, const DWORD dwFlags );
  60. extern HRESULT DPL_ValidateRegisterMessageHandler(PVOID pv,
  61. const PVOID pvUserContext,
  62. const PFNDPNMESSAGEHANDLER pfn,
  63. DPNHANDLE * const pdpnhConnection,
  64. const DWORD dwFlags);
  65. extern HRESULT DPL_ValidateClose(PVOID pv, const DWORD dwFlags );
  66. extern HRESULT DPL_ValidateSend(PVOID pv,
  67. const DPNHANDLE hTarget,
  68. BYTE *const pBuffer,
  69. const DWORD pBufferSize,
  70. const DWORD dwFlags);
  71. #endif