Leaked source code of windows server 2003
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.

129 lines
5.1 KiB

  1. /*============================================================================*\
  2. INTEL Corporation Proprietary Information
  3. This listing is supplied under the terms of a license agreement
  4. with INTEL Corporation and may not be copied nor disclosed except
  5. in accordance with the terms of that agreement.
  6. Copyright (c) 1996 Intel Corporation.
  7. All rights reserved.
  8. \*============================================================================*/
  9. /*****************************************************************************\
  10. SUMMARY: Intel Connection Advisor DLL export API
  11. HISTORY:
  12. Original E. Rogers, January 1997
  13. $Header: L:\proj\sturgeon\src\ica\vcs\icaapi.h_v 1.11 07 Feb 1997 14:29:28 RKAR $
  14. \*****************************************************************************/
  15. #ifndef _ICA_API_H_
  16. #define _ICA_API_H_
  17. #ifdef __cplusplus
  18. extern "C" { // Assume C declarations for C++.
  19. #endif // __cplusplus
  20. #define SZ_ICADLL TEXT("MSICA.DLL")
  21. #define SZ_ICAHELP TEXT("MSICA.HLP")
  22. #ifndef DllExport
  23. //! #define DllExport __declspec( dllexport )
  24. #define DllExport
  25. #endif // DllExport
  26. // Registry definitions (needed by conf.exe)
  27. #define REGKEY_ICA TEXT("Software\\Microsoft\\Conferencing\\ICA")
  28. #define REGVAL_ICA_IN_TRAY TEXT("UseTrayIcon")
  29. #define REGVAL_ICA_POPUP TEXT("PopupOnError")
  30. #define REGVAL_ICA_TOPMOST TEXT("StayOnTop")
  31. // Panel identifiers
  32. #define GENERAL_PANEL "ICA_GENERAL_PANEL" // Localization OK
  33. #define MS_AUDIO_PANEL "NM2.0_H323_AUDIO" // Localization OK
  34. #define MS_VIDEO_PANEL "NM2.0_H323_VIDEO" // Localization OK
  35. #define VP20_H323_AUDIO_PANEL "VPHONE2.0_H323_AUDIO" // Localization OK
  36. #define VP20_H323_VIDEO_PANEL "VPHONE2.0_H323_VIDEO" // Localization OK
  37. #define VP20_H323_DETAILS_PANEL "VPHONE2.0_H323_DETAILS"// Localization OK
  38. #define VP20_H324_AUDIO_PANEL "VPHONE2.0_H324_AUDIO" // Localization OK
  39. #define VP20_H324_VIDEO_PANEL "VPHONE2.0_H324_VIDEO" // Localization OK
  40. #define VP20_H324_DETAILS_PANEL "VPHONE2.0_H324_DETAILS"// Localization OK
  41. // ICA data types - used by ICA_OpenStatistic in the dwType param
  42. #define DWORD_TYPE 0
  43. // Statistic info structure
  44. typedef struct
  45. {
  46. UINT cbSize;
  47. DWORD dwMaxValue;
  48. DWORD dwMinValue;
  49. DWORD dwWarnLevel;
  50. DWORD dwUpdateFrequency;
  51. } ICA_STATISTIC_INFO, *PICA_STATISTIC_INFO;
  52. // Function typedefs
  53. typedef HRESULT (WINAPI *PFnICA_Start)( char*, char*, HWND* );
  54. typedef HRESULT (WINAPI *PFnICA_Stop)( VOID );
  55. typedef HRESULT (WINAPI *PFnICA_DisplayPanel)( char*, char*, char*, VOID*, HANDLE* );
  56. typedef HRESULT (WINAPI *PFnICA_RemovePanel)( HANDLE );
  57. typedef HRESULT (WINAPI *PFnICA_OpenStatistic)( char*, DWORD, HANDLE* );
  58. typedef HRESULT (WINAPI *PFnICA_SetStatistic)( HANDLE, BYTE*, DWORD );
  59. typedef HRESULT (WINAPI *PFnICA_SetStatisticInfo)( HANDLE, ICA_STATISTIC_INFO* );
  60. typedef HRESULT (WINAPI *PFnICA_SetWarningEvent)( HANDLE, HANDLE );
  61. typedef HRESULT (WINAPI *PFnICA_GetStatistic)( HANDLE, BYTE*, DWORD*, DWORD* );
  62. typedef HRESULT (WINAPI *PFnICA_GetWarningState)( HANDLE, BOOL* );
  63. typedef HRESULT (WINAPI *PFnICA_EnumStatistic)( DWORD, char*, DWORD, HANDLE* );
  64. typedef HRESULT (WINAPI *PFnICA_ResetStatistic)( HANDLE );
  65. typedef HRESULT (WINAPI *PFnICA_CloseStatistic)( HANDLE );
  66. typedef HRESULT (WINAPI *PFnICA_SetOptions) ( UINT );
  67. typedef HRESULT (WINAPI *PFnICA_GetOptions) ( DWORD*);
  68. ///////////////////////// ICA API functions ///////////////////////////////////
  69. // General functions
  70. HRESULT WINAPI ICA_Start( char* pszDisplayName, char* pszRRCMLibrary, HWND* phWnd );
  71. HRESULT WINAPI ICA_Stop( VOID );
  72. // Panel functions
  73. HRESULT WINAPI ICA_DisplayPanel( char* pszModuleName, char* pszName,
  74. char* pszHelpFile, VOID* pReserved, HANDLE* phPanel );
  75. HRESULT WINAPI ICA_RemovePanel( HANDLE hPanel );
  76. // Data functions
  77. HRESULT WINAPI ICA_OpenStatistic( char* pszName, DWORD dwType, HANDLE* phStat );
  78. HRESULT WINAPI ICA_SetStatistic( HANDLE hStat, BYTE* pData, DWORD dwDataSize );
  79. HRESULT WINAPI ICA_SetStatisticInfo( HANDLE hStat, ICA_STATISTIC_INFO* pStatInfo );
  80. HRESULT WINAPI ICA_SetWarningEvent( HANDLE hStat, HANDLE hEvent );
  81. HRESULT WINAPI ICA_GetStatistic( HANDLE hStat, BYTE* pBuffer, DWORD* pdwBufSize,
  82. DWORD* pdwTimeStamp );
  83. HRESULT WINAPI ICA_GetWarningState( HANDLE hStat, BOOL* bInWarningState );
  84. HRESULT WINAPI ICA_EnumStatistic( DWORD dwIndex, char* pszName, DWORD dwNameSize,
  85. HANDLE* phStat );
  86. HRESULT WINAPI ICA_ResetStatistic( HANDLE hStat );
  87. HRESULT WINAPI ICA_CloseStatistic( HANDLE hStat );
  88. #define ICA_OPTION_DUPLEX_MASK 0x00000001
  89. #define ICA_OPTION_TRAY_MASK 0x00000002
  90. HRESULT WINAPI ICA_GetOptions( DWORD* dwOptionValue );
  91. // ICA Flags to ICA_SetOptions
  92. #define ICA_SHOW_TRAY_ICON 0x00000001
  93. #define ICA_DONT_SHOW_TRAY_ICON 0x00000002
  94. #define ICA_SET_HALF_DUPLEX 0x00000004
  95. #define ICA_SET_FULL_DUPLEX 0x00000008
  96. HRESULT WINAPI ICA_SetOptions( UINT fOptionFlag );
  97. #ifdef __cplusplus
  98. } // End of extern "C" {
  99. #endif // __cplusplus
  100. #endif // _ICA_API_H_