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.

220 lines
4.7 KiB

  1. #if ! defined(_NM_APPLET_TYPE_H_) && ! defined(__iapplet_h__)
  2. #define _NM_APPLET_TYPE_H_
  3. //
  4. // GCC/MCS Base Types
  5. //
  6. typedef USHORT AppletSessionID;
  7. typedef USHORT AppletChannelID;
  8. typedef AppletChannelID AppletUserID;
  9. typedef AppletUserID AppletNodeID;
  10. typedef USHORT AppletTokenID;
  11. typedef USHORT AppletEntityID;
  12. typedef ULONG AppletConfID;
  13. typedef UINT AppletRequestTag;
  14. //
  15. // GCC Registry
  16. //
  17. typedef enum tagAppletRegistryCommand
  18. {
  19. APPLET_REGISTER_CHANNEL = 0,
  20. APPLET_ASSIGN_TOKEN = 1,
  21. APPLET_SET_PARAMETER = 2,
  22. APPLET_RETRIEVE_ENTRY = 3,
  23. APPLET_DELETE_ENTRY = 4,
  24. APPLET_ALLOCATE_HANDLE = 5,
  25. APPLET_MONITOR = 6, // nyi in SDK
  26. }
  27. AppletRegistryCommand;
  28. typedef enum tagAppletRegistryItemType
  29. {
  30. APPLET_REGISTRY_CHANNEL_ID = 1,
  31. APPLET_REGISTRY_TOKEN_ID = 2,
  32. APPLET_REGISTRY_PARAMETER = 3,
  33. APPLET_REGISTRY_NONE = 4,
  34. }
  35. AppletRegistryItemType;
  36. typedef enum tagAppletModificationRights
  37. {
  38. APPLET_OWNER_RIGHTS = 0,
  39. APPLET_SESSION_RIGHTS = 1,
  40. APPLET_PUBLIC_RIGHTS = 2,
  41. APPLET_NO_MODIFICATION_RIGHTS_SPECIFIED = 3,
  42. }
  43. AppletModificationRights;
  44. //
  45. // MCS Channel
  46. //
  47. typedef enum tagAppletChannelCommand
  48. {
  49. APPLET_JOIN_CHANNEL = 0,
  50. APPLET_LEAVE_CHANNEL = 1,
  51. APPLET_CONVENE_CHANNEL = 2,
  52. APPLET_DISBAND_CHANNEL = 3,
  53. APPLET_ADMIT_CHANNEL = 4,
  54. APPLET_EXPEL_CHANNEL = 5, // indication only
  55. }
  56. AppletChannelCommand;
  57. typedef enum tagAppletChannelType
  58. {
  59. APPLET_STATIC_CHANNEL = 0,
  60. APPLET_DYNAMIC_MULTICAST_CHANNEL = 1,
  61. APPLET_DYNAMIC_PRIVATE_CHANNEL = 2,
  62. APPLET_DYNAMIC_USER_ID_CHANNEL = 3,
  63. APPLET_NO_CHANNEL_TYPE_SPECIFIED = 4
  64. }
  65. AppletChannelType;
  66. //
  67. // MCS Token
  68. //
  69. typedef enum tagAppletTokenCommand
  70. {
  71. APPLET_GRAB_TOKEN = 0,
  72. APPLET_INHIBIT_TOKEN = 1,
  73. APPLET_GIVE_TOKEN = 2,
  74. APPLET_PLEASE_TOKEN = 3,
  75. APPLET_RELEASE_TOKEN = 4,
  76. APPLET_TEST_TOKEN = 5,
  77. APPLET_GIVE_TOKEN_RESPONSE = 6,
  78. }
  79. AppletTokenCommand;
  80. typedef enum tagAppletTokenStatus
  81. {
  82. APPLET_TOKEN_NOT_IN_USE = 0,
  83. APPLET_TOKEN_SELF_GRABBED = 1,
  84. APPLET_TOKEN_OTHER_GRABBED = 2,
  85. APPLET_TOKEN_SELF_INHIBITED = 3,
  86. APPLET_TOKEN_OTHER_INHIBITED = 4,
  87. APPLET_TOKEN_SELF_RECIPIENT = 5,
  88. APPLET_TOKEN_SELF_GIVING = 6,
  89. APPLET_TOKEN_OTHER_GIVING = 7,
  90. }
  91. AppletTokenStatus;
  92. //
  93. // GCC Capability
  94. //
  95. typedef enum tagAppletCapabilityType
  96. {
  97. APPLET_UNKNOWN_CAP_TYPE = 0, // for non-collapsing caps
  98. APPLET_LOGICAL_CAPABILITY = 1,
  99. APPLET_UNSIGNED_MINIMUM_CAPABILITY = 2,
  100. APPLET_UNSIGNED_MAXIMUM_CAPABILITY = 3,
  101. }
  102. AppletCapabilityType;
  103. typedef struct tagAppletCapabilityClass
  104. {
  105. AppletCapabilityType eType;
  106. ULONG nMinOrMax;
  107. }
  108. AppletCapabilityClass;
  109. typedef enum tagAppletCapIDType
  110. {
  111. APPLET_STANDARD_CAPABILITY = 0,
  112. APPLET_NONSTD_CAPABILITY = 1,
  113. }
  114. AppletCapIDType;
  115. //
  116. // GCC/MCS Resource Allocation Command
  117. //
  118. typedef enum tagAppletResourceAllocCommand
  119. {
  120. APPLET_JOIN_DYNAMIC_CHANNEL = 0, // compete among all members
  121. APPLET_GRAB_TOKEN_REQUEST = 1, // nyi in SDK
  122. }
  123. AppletResourceAllocCommand;
  124. //
  125. // Send Data
  126. //
  127. typedef enum tagAppletPriority
  128. {
  129. APPLET_TOP_PRIORITY = 0,
  130. APPLET_HIGH_PRIORITY = 1,
  131. APPLET_MEDIUM_PRIORITY = 2,
  132. APPLET_LOW_PRIORITY = 3,
  133. }
  134. AppletPriority;
  135. //
  136. // Key Type
  137. //
  138. typedef enum tagAppletKeyType
  139. {
  140. APPLET_OBJECT_KEY = 1,
  141. APPLET_H221_NONSTD_KEY = 2,
  142. }
  143. AppletKeyType;
  144. //
  145. // Error Code
  146. //
  147. enum tagAppletErrorCode
  148. {
  149. APPLET_E_NO_SERVICE = 0x82000001,
  150. APPLET_E_SERVICE_FAIL = 0x82000002,
  151. APPLET_E_ALREADY_REGISTERED = 0x82000003,
  152. APPLET_E_NOT_REGISTERED = 0x82000004,
  153. APPLET_E_INVALID_CONFERENCE = 0x82000005,
  154. APPLET_E_INVALID_COOKIE = 0x82000006,
  155. APPLET_E_ALREADY_JOIN = 0x82000007,
  156. APPLET_E_NOT_JOINED = 0x82000008,
  157. APPLET_E_INVALID_JOIN_REQUEST = 0x82000009,
  158. APPLET_E_ENTRY_ALREADY_EXISTS = 0x8200000a,
  159. APPLET_E_ENTRY_DOES_NOT_EXIST = 0x8200000b,
  160. APPLET_E_NOT_OWNER = 0x8200000c,
  161. APPLET_E_NOT_ADVISED = 0x8200000d,
  162. APPLET_E_ALREADY_ADVISED = 0x8200000e,
  163. };
  164. //
  165. // Reason Code
  166. //
  167. typedef enum tagAppletReason
  168. {
  169. APPLET_R_UNSPECIFIED = 0,
  170. APPLET_R_CONFERENCE_GONE = 1,
  171. APPLET_R_USER_REJECTED = 2,
  172. APPLET_R_RESOURCE_PURGED = 3,
  173. }
  174. AppletReason;
  175. #endif // _NM_APPLET_BASE_H_