structuredquerycondition.idl 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. cpp_quote("/**")
  2. cpp_quote(" * This file is part of the mingw-w64 runtime package.")
  3. cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
  4. cpp_quote(" */")
  5. cpp_quote("")
  6. cpp_quote("#include <winapifamily.h>")
  7. import "oaidl.idl";
  8. import "ocidl.idl";
  9. import "objidl.idl";
  10. import "propidl.idl";
  11. cpp_quote("")
  12. typedef [v1_enum] enum tagCONDITION_TYPE {
  13. CT_AND_CONDITION,
  14. CT_OR_CONDITION,
  15. CT_NOT_CONDITION,
  16. CT_LEAF_CONDITION
  17. } CONDITION_TYPE;
  18. cpp_quote("")
  19. typedef [v1_enum] enum tagCONDITION_OPERATION {
  20. COP_IMPLICIT,
  21. COP_EQUAL,
  22. COP_NOTEQUAL,
  23. COP_LESSTHAN,
  24. COP_GREATERTHAN,
  25. COP_LESSTHANOREQUAL,
  26. COP_GREATERTHANOREQUAL,
  27. COP_VALUE_STARTSWITH,
  28. COP_VALUE_ENDSWITH,
  29. COP_VALUE_CONTAINS,
  30. COP_VALUE_NOTCONTAINS,
  31. COP_DOSWILDCARDS,
  32. COP_WORD_EQUAL,
  33. COP_WORD_STARTSWITH,
  34. COP_APPLICATION_SPECIFIC
  35. } CONDITION_OPERATION;
  36. cpp_quote("")
  37. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  38. [object, uuid (4fdef69c-DBC9-454e-9910-B34F3C64B510), pointer_default (unique),]
  39. interface IRichChunk : IUnknown {
  40. [local] HRESULT GetData ([out, unique] ULONG *pFirstPos,[out, unique] ULONG *pLength,[out, unique] LPWSTR *ppsz,[out, unique] PROPVARIANT *pValue);
  41. [call_as (GetData)] HRESULT RemoteGetData ([out] ULONG *pFirstPos,[out] ULONG *pLength,[out] LPWSTR *ppsz,[out] PROPVARIANT *pValue);
  42. }
  43. cpp_quote("")
  44. [object, uuid (0fc988d4-C935-4b97-A973-46282ea175c8), pointer_default (unique),]
  45. interface ICondition : IPersistStream {
  46. HRESULT GetConditionType ([out, retval] CONDITION_TYPE *pNodeType);
  47. HRESULT GetSubConditions ([in] REFIID riid,[out, retval, iid_is (riid)] void **ppv);
  48. [local] HRESULT GetComparisonInfo ([out, unique] LPWSTR *ppszPropertyName,[out, unique] CONDITION_OPERATION *pcop,[out, unique] PROPVARIANT *ppropvar);
  49. [call_as (GetComparisonInfo)] HRESULT RemoteGetComparisonInfo ([out] LPWSTR *ppszPropertyName,[out] CONDITION_OPERATION *pcop,[out] PROPVARIANT *ppropvar);
  50. HRESULT GetValueType ([out, retval] LPWSTR *ppszValueTypeName);
  51. HRESULT GetValueNormalization ([out, retval] LPWSTR *ppszNormalization);
  52. [local] HRESULT GetInputTerms ([out, unique] IRichChunk **ppPropertyTerm,[out, unique] IRichChunk **ppOperationTerm,[out, unique] IRichChunk **ppValueTerm);
  53. [call_as (GetInputTerms)] HRESULT RemoteGetInputTerms ([out] IRichChunk **ppPropertyTerm,[out] IRichChunk **ppOperationTerm,[out] IRichChunk **ppValueTerm);
  54. HRESULT Clone ([out, retval] ICondition **ppc);
  55. };
  56. cpp_quote("")
  57. [uuid (0db8851d-2e5b-47eb-9208-D28C325A01D7), object, pointer_default (unique),]
  58. interface ICondition2 : ICondition {
  59. HRESULT GetLocale ([out] LPWSTR *ppszLocaleName);
  60. [local] HRESULT GetLeafConditionInfo ([out] PROPERTYKEY *ppropkey,[out] CONDITION_OPERATION *pcop,[out] PROPVARIANT *ppropvar);
  61. [call_as (GetLeafConditionInfo)] HRESULT RemoteGetLeafConditionInfo ([out] PROPERTYKEY *ppropkey,[out] CONDITION_OPERATION *pcop,[out] PROPVARIANT *ppropvar);
  62. }
  63. cpp_quote("#endif")