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.

151 lines
4.1 KiB

  1. /*++ BUILD Version: 0000 // Increment this if a change has global effects
  2. Copyright (c) 1999-2001 Microsoft Corporation
  3. Module Name:
  4. tapievt.h
  5. Abstract:
  6. Header file for tapi server event filtering
  7. Author:
  8. Xiaohai Zhang (xzhang) 15-Oct-1999
  9. Revision History:
  10. --*/
  11. #ifndef __TAPIEVT_H__
  12. #define __TAPIEVT_H__
  13. #ifdef __cplusplus
  14. extern "C" { /* Assume C declarations for C++ */
  15. #endif /* __cplusplus */
  16. //
  17. // Event filtering private APIs
  18. //
  19. LONG
  20. WINAPI
  21. tapiSetEventFilterMasks (
  22. DWORD dwObjType,
  23. LONG_PTR lObjectID,
  24. ULONG64 ulEventMasks
  25. );
  26. LONG
  27. WINAPI
  28. tapiSetEventFilterSubMasks (
  29. DWORD dwObjType,
  30. LONG_PTR lObjectID,
  31. ULONG64 ulEventMask,
  32. DWORD dwEventSubMasks
  33. );
  34. LONG
  35. WINAPI
  36. tapiGetEventFilterMasks (
  37. DWORD dwObjType,
  38. LONG_PTR lObjectID,
  39. ULONG64 * pulEventMasks
  40. );
  41. LONG
  42. WINAPI
  43. tapiGetEventFilterSubMasks (
  44. DWORD dwObjType,
  45. LONG_PTR lObjectID,
  46. ULONG64 ulEventMask,
  47. DWORD * pdwEventSubMasks
  48. );
  49. LONG
  50. WINAPI
  51. tapiSetPermissibleMasks (
  52. ULONG64 ulPermMasks
  53. );
  54. LONG
  55. WINAPI
  56. tapiGetPermissibleMasks (
  57. ULONG64 * pulPermMasks
  58. );
  59. //
  60. // Object type constants
  61. //
  62. // object type defines the scope of the event filtering
  63. // i.e. EM_LINE_CALLINFO applied on TAPIOBJ_HCALL enable/disables the
  64. // LINE_CALLINFO message for the particular hCall object, while
  65. // EM_LINE_CALLINFO applied on TAPIOBJ_NULL enable/disables LINE_CALLINFO
  66. // message for all existing and future call objects.
  67. //
  68. #define TAPIOBJ_NULL 0 // lObjectID is ignored, apply globally
  69. #define TAPIOBJ_HLINEAPP 1 // lObjectID is of type HLINEAPP
  70. #define TAPIOBJ_HLINE 2 // lObjectID is of type HLINE
  71. #define TAPIOBJ_HCALL 3 // lObjectID is of type HCALL
  72. #define TAPIOBJ_HPHONEAPP 4 // lObjectID is of type HPHONEAPP
  73. #define TAPIOBJ_HPHONE 5 // lObjectID is of type HPHONE
  74. //
  75. // Tapi server event filter masks
  76. //
  77. // Event filter mask should be used with their submasks if exists,
  78. // Many of the event filter masks have their corresponding sub masks
  79. // defined in tapi.h. i.e. EM_LINE_CALLSTATE owns all the submasks of
  80. // LINECALLSTATE_constants
  81. //
  82. #define EM_LINE_ADDRESSSTATE 0x00000001
  83. #define EM_LINE_LINEDEVSTATE 0x00000002
  84. #define EM_LINE_CALLINFO 0x00000004
  85. #define EM_LINE_CALLSTATE 0x00000008
  86. #define EM_LINE_APPNEWCALL 0x00000010
  87. #define EM_LINE_CREATE 0x00000020
  88. #define EM_LINE_REMOVE 0x00000040
  89. #define EM_LINE_CLOSE 0x00000080
  90. #define EM_LINE_PROXYREQUEST 0x00000100
  91. #define EM_LINE_DEVSPECIFIC 0x00000200
  92. #define EM_LINE_DEVSPECIFICFEATURE 0x00000400
  93. #define EM_LINE_AGENTSTATUS 0x00000800
  94. #define EM_LINE_AGENTSTATUSEX 0x00001000
  95. #define EM_LINE_AGENTSPECIFIC 0x00002000
  96. #define EM_LINE_AGENTSESSIONSTATUS 0x00004000
  97. #define EM_LINE_QUEUESTATUS 0x00008000
  98. #define EM_LINE_GROUPSTATUS 0x00010000
  99. #define EM_LINE_PROXYSTATUS 0x00020000
  100. #define EM_LINE_APPNEWCALLHUB 0x00040000
  101. #define EM_LINE_CALLHUBCLOSE 0x00080000
  102. #define EM_LINE_DEVSPECIFICEX 0x00100000
  103. #define EM_LINE_QOSINFO 0x00200000
  104. // LINE_GATHERDIGITS is controlled by lineGatherDigits
  105. // LINE_GENERATE is controlled by lineGenerateDigits
  106. // LINE_MONITORDIGITS is controlled by lineMonitorDigits
  107. // LINE_MONITORMEDIA is controlled by lineMonitorMedia
  108. // LINE_MONITORTONE is controlled by lineMonitorTone
  109. // LINE_REQUEST is controlled by lineRegisterRequestRecipient
  110. // LINE_REPLY can not be disabled.
  111. #define EM_PHONE_CREATE 0x01000000
  112. #define EM_PHONE_REMOVE 0x02000000
  113. #define EM_PHONE_CLOSE 0x04000000
  114. #define EM_PHONE_STATE 0x08000000
  115. #define EM_PHONE_DEVSPECIFIC 0x10000000
  116. #define EM_PHONE_BUTTONMODE 0x20000000
  117. #define EM_PHONE_BUTTONSTATE 0x40000000
  118. // PHONE_REPLY can not be disabled
  119. #define EM_ALL 0x7fffffff
  120. #define EM_NUM_MASKS 31
  121. #ifdef __cplusplus
  122. } /* End of extern "C" { */
  123. #endif /* __cplusplus */
  124. #endif // tapievt.h