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.

217 lines
9.0 KiB

  1. /******************************************************************************
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. SEMgr.idl
  5. Abstract:
  6. This file contains the declaration of the set of coclasses and interfaces
  7. implemented by the Search Engine extensible mechanism.
  8. Revision History:
  9. Ghim-Sim Chua (gschua) 04/15/2000
  10. created
  11. Davide Massarenti (Dmassare) 04/30/2000
  12. modified
  13. ******************************************************************************/
  14. cpp_quote( "#include <semgrDID.h>" )
  15. #include <semgrDID.h>
  16. [
  17. object,
  18. uuid(833E4160-AFF7-4AC3-AAC2-9F24C1457BCE),
  19. dual,
  20. oleautomation,
  21. helpstring("IPCHSEManager Interface"),
  22. pointer_default(unique)
  23. ]
  24. interface IPCHSEManager : IDispatch
  25. {
  26. //
  27. // Properties
  28. //
  29. [propget, id(DISPID_SE_MGR__QUERYSTRING)] HRESULT QueryString( [out, retval] BSTR *pVal );
  30. [propput, id(DISPID_SE_MGR__QUERYSTRING)] HRESULT QueryString( [in] BSTR newVal );
  31. [propget, id(DISPID_SE_MGR__NUMRESULT )] HRESULT NumResult ( [out, retval] long *pVal );
  32. [propput, id(DISPID_SE_MGR__NUMRESULT )] HRESULT NumResult ( [in] long newVal );
  33. [propput, id(DISPID_SE_MGR__ONCOMPLETE )] HRESULT onComplete ( [in] IDispatch* function );
  34. [propput, id(DISPID_SE_MGR__ONPROGRESS )] HRESULT onProgress ( [in] IDispatch* function );
  35. [propput, id(DISPID_SE_MGR__ONWRAPPERCOMPLETE )] HRESULT onWrapperComplete ( [in] IDispatch* function );
  36. [propget, id(DISPID_SE_MGR__SKU )] HRESULT SKU ( [out, retval] BSTR *pVal );
  37. [propget, id(DISPID_SE_MGR__LCID )] HRESULT LCID( [out, retval] long *pVal );
  38. ////////////////////////////////////////
  39. //
  40. // Methods
  41. //
  42. [id(DISPID_SE_MGR__EXECUTEASYNCHQUERY)] HRESULT ExecuteAsynchQuery( );
  43. [id(DISPID_SE_MGR__ABORTQUERY )] HRESULT AbortQuery ( );
  44. [id(DISPID_SE_MGR__ENUMENGINE )] HRESULT EnumEngine ( [out, retval] IPCHCollection* *ppC );
  45. };
  46. [
  47. object,
  48. uuid(833E4161-AFF7-4AC3-AAC2-9F24C1457BCE),
  49. dual,
  50. oleautomation,
  51. helpstring("IPCHSEWrapperItem Interface"),
  52. pointer_default(unique)
  53. ]
  54. interface IPCHSEWrapperItem : IDispatch
  55. {
  56. //
  57. // Properties
  58. //
  59. [propget, id(DISPID_SE_WRAPPER__ENABLED )] HRESULT Enabled ( [out, retval] VARIANT_BOOL * pVal );
  60. [propput, id(DISPID_SE_WRAPPER__ENABLED )] HRESULT Enabled ( [in] VARIANT_BOOL newVal );
  61. [propget, id(DISPID_SE_WRAPPER__OWNER )] HRESULT Owner ( [out, retval] BSTR * pVal );
  62. [propget, id(DISPID_SE_WRAPPER__DESCRIPTION)] HRESULT Description( [out, retval] BSTR * pVal );
  63. [propget, id(DISPID_SE_WRAPPER__NAME )] HRESULT Name ( [out, retval] BSTR * pVal );
  64. [propget, id(DISPID_SE_WRAPPER__ID )] HRESULT ID ( [out, retval] BSTR * pVal );
  65. [propget, id(DISPID_SE_WRAPPER__HELPURL )] HRESULT HelpURL ( [out, retval] BSTR * pVal );
  66. [propget, id(DISPID_SE_WRAPPER__SEARCHTERMS)] HRESULT SearchTerms( [out, retval] VARIANT * pVal );
  67. ////////////////////////////////////////
  68. //
  69. // Methods
  70. //
  71. [id(DISPID_SE_WRAPPER__RESULT)] HRESULT Result( [in] long lStart, [in] long lEnd, [out, retval] IPCHCollection* *ppC );
  72. [id(DISPID_SE_WRAPPER__PARAM )] HRESULT Param ( [out, retval] IPCHCollection* *ppC );
  73. [id(DISPID_SE_WRAPPER__ADDPARAM)] HRESULT AddParam( [in] BSTR bstrParamName, [in ] VARIANT varValue );
  74. [id(DISPID_SE_WRAPPER__GETPARAM)] HRESULT GetParam( [in] BSTR bstrParamName, [out, retval] VARIANT *pvarValue );
  75. [id(DISPID_SE_WRAPPER__DELPARAM)] HRESULT DelParam( [in] BSTR bstrParamName );
  76. };
  77. [
  78. object,
  79. uuid(833E4162-AFF7-4AC3-AAC2-9F24C1457BCE),
  80. dual,
  81. oleautomation,
  82. helpstring("IPCHSEResultItem Interface"),
  83. pointer_default(unique)
  84. ]
  85. interface IPCHSEResultItem : IDispatch
  86. {
  87. //
  88. // Properties
  89. //
  90. [propget, id(DISPID_SE_RESULTITEM__TITLE )] HRESULT Title ( [out, retval] BSTR *pVal );
  91. [propget, id(DISPID_SE_RESULTITEM__URI )] HRESULT URI ( [out, retval] BSTR *pVal );
  92. [propget, id(DISPID_SE_RESULTITEM__CONTENTTYPE)] HRESULT ContentType( [out, retval] long *pVal );
  93. [propget, id(DISPID_SE_RESULTITEM__LOCATION )] HRESULT Location ( [out, retval] BSTR *pVal );
  94. [propget, id(DISPID_SE_RESULTITEM__HITS )] HRESULT Hits ( [out, retval] long *pVal );
  95. [propget, id(DISPID_SE_RESULTITEM__RANK )] HRESULT Rank ( [out, retval] double *pVal );
  96. [propget, id(DISPID_SE_RESULTITEM__DESCRIPTION)] HRESULT Description( [out, retval] BSTR *pVal );
  97. };
  98. ////////////////////////////////////////////////////////////////////////////////
  99. typedef enum {
  100. PARAM_UI1 , // Byte
  101. PARAM_I2 , // Short
  102. PARAM_I4 , // long
  103. PARAM_R4 , // float
  104. PARAM_R8 , // double
  105. PARAM_BOOL , // VARIANT_BOOL
  106. PARAM_DATE , // DATE
  107. PARAM_BSTR , // BSTR
  108. PARAM_I1 , // char
  109. PARAM_UI2 , // unsigned short
  110. PARAM_UI4 , // unsigned long
  111. PARAM_INT , // int
  112. PARAM_UINT , // unsigned int
  113. PARAM_LIST
  114. } ParamTypeEnum;
  115. [
  116. object,
  117. uuid(74932280-7AB6-4670-9704-128DEF4932EC),
  118. dual,
  119. oleautomation,
  120. helpstring("IPCHSEParamItem Interface"),
  121. pointer_default(unique)
  122. ]
  123. interface IPCHSEParamItem : IDispatch
  124. {
  125. //
  126. // Properties
  127. //
  128. [propget, id(DISPID_SE_PARAMITEM__TYPE )] HRESULT Type ( [out, retval] ParamTypeEnum *pVal );
  129. [propget, id(DISPID_SE_PARAMITEM__DISPLAY )] HRESULT Display ( [out, retval] BSTR *pVal );
  130. [propget, id(DISPID_SE_PARAMITEM__TITLE )] HRESULT Name ( [out, retval] BSTR *pVal );
  131. [propget, id(DISPID_SE_PARAMITEM__REQUIRED)] HRESULT Required( [out, retval] VARIANT_BOOL *pVal );
  132. [propget, id(DISPID_SE_PARAMITEM__VISIBLE )] HRESULT Visible ( [out, retval] VARIANT_BOOL *pVal );
  133. [propget, id(DISPID_SE_PARAMITEM__DATA )] HRESULT Data ( [out, retval] VARIANT *pVal );
  134. };
  135. ////////////////////////////////////////////////////////////////////////////////
  136. [
  137. object,
  138. uuid(833E4163-AFF7-4AC3-AAC2-9F24C1457BCE),
  139. dual,
  140. oleautomation,
  141. helpstring("IPCHSEManagerInternal Interface"),
  142. pointer_default(unique)
  143. ]
  144. interface IPCHSEManagerInternal : IDispatch
  145. {
  146. [id(DISPID_SE_MGRINNER__WRAPPERCOMPLETE )] HRESULT WrapperComplete( [in] long lSucceeded, [in] IPCHSEWrapperItem* pIPCHSEWICompleted );
  147. [id(DISPID_SE_MGRINNER__ISNETWORKALIVE )] HRESULT IsNetworkAlive ( [out] VARIANT_BOOL *pvbVar );
  148. [id(DISPID_SE_MGRINNER__ISDESTINATIONREACHABLE)] HRESULT IsDestinationReachable( [in] BSTR bstrDestination, [out] VARIANT_BOOL *pvbVar );
  149. [id(DISPID_SE_MGRINNER__LOGRECORD )] HRESULT LogRecord( [in] BSTR bstrRecord );
  150. };
  151. [
  152. object,
  153. uuid(833E4164-AFF7-4AC3-AAC2-9F24C1457BCE),
  154. dual,
  155. oleautomation,
  156. helpstring("IPCHSEWrapperInternal Interface"),
  157. pointer_default(unique)
  158. ]
  159. interface IPCHSEWrapperInternal : IDispatch
  160. {
  161. //
  162. // Properties
  163. //
  164. [propget, id(DISPID_SE_WRAPPERINNER__QUERYSTRING)] HRESULT QueryString( [out, retval] BSTR *pVal );
  165. [propput, id(DISPID_SE_WRAPPERINNER__QUERYSTRING)] HRESULT QueryString( [in] BSTR newVal );
  166. [propget, id(DISPID_SE_WRAPPERINNER__NUMRESULT )] HRESULT NumResult ( [out, retval] long *pVal );
  167. [propput, id(DISPID_SE_WRAPPERINNER__NUMRESULT )] HRESULT NumResult ( [in] long newVal );
  168. ////////////////////////////////////////
  169. //
  170. // Methods
  171. //
  172. [id(DISPID_SE_WRAPPERINNER__EXECASYNCQUERY )] HRESULT ExecAsyncQuery ( );
  173. [id(DISPID_SE_WRAPPERINNER__ABORTQUERY )] HRESULT AbortQuery ( );
  174. [id(DISPID_SE_WRAPPERINNER__SECALLBACKINTERFACE)] HRESULT SECallbackInterface( [in] IPCHSEManagerInternal* pMgr );
  175. [id(DISPID_SE_WRAPPERINNER__INITIALIZE )] HRESULT Initialize ( [in] BSTR bstrID, [in] BSTR bstrSKU, [in] long lLCID, [in] BSTR bstrData );
  176. };
  177. ////////////////////////////////////////////////////////////////////////////////
  178. [
  179. uuid(833E4165-AFF7-4AC3-AAC2-9F24C1457BCE),
  180. helpstring("DPCHSEMgrEvents Interface")
  181. ]
  182. dispinterface DPCHSEMgrEvents
  183. {
  184. properties:
  185. methods:
  186. [id(DISPID_SE_EVENTS__ONPROGRESS)] HRESULT onProgress ( [in] long lDone, [in] long lTotal, [in] BSTR bstrSEWrapperName );
  187. [id(DISPID_SE_EVENTS__ONCOMPLETE)] HRESULT onComplete ( [in] long lSucceeded );
  188. [id(DISPID_SE_EVENTS__ONWRAPPERCOMPLETE)] HRESULT onWrapperComplete ( [in] IPCHSEWrapperItem* pIPCHSEWICompleted );
  189. };