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.

77 lines
2.7 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1997 - 1998
  5. //
  6. // File: colschem.idl
  7. //
  8. // Contents: Column schema definitions
  9. //
  10. // History: Aug-18-1997 AlanPe Created
  11. //
  12. //--------------------------------------------------------------------------
  13. typedef struct tagDBID DBID;
  14. typedef WORD DBTYPE;
  15. //+-------------------------------------------------------------------------
  16. //
  17. // Interface : IColumnMapper
  18. //
  19. // Description : A CI provided interface that exposes mappings for global
  20. // column friendly names to DBIDs
  21. //
  22. //+-------------------------------------------------------------------------
  23. LOCAL_INTERFACE(0b63e37a-9ccc-11d0-bcdb-00805fccce04)
  24. interface IColumnMapper : IUnknown
  25. {
  26. HRESULT GetPropInfoFromName( [in, string] WCHAR const * wcsPropName,
  27. [out] DBID ** ppPropId,
  28. [out] DBTYPE * pPropType,
  29. [out] unsigned int * puiWidth );
  30. HRESULT GetPropInfoFromId( [in] DBID const * pPropId,
  31. [out] WCHAR ** pwcsName,
  32. [out] DBTYPE * pPropType,
  33. [out] unsigned int * puiWidth );
  34. HRESULT EnumPropInfo( [in] ULONG iEntry,
  35. [out] WCHAR const ** pwcsName,
  36. [out] DBID ** ppPropId,
  37. [out] DBTYPE * pPropType,
  38. [out] unsigned int * puiWidth );
  39. HRESULT IsMapUpToDate();
  40. };
  41. const WCHAR * LOCAL_MACHINE = L".";
  42. const WCHAR * SYSTEM_DEFAULT_CAT = L"__SystemDefault__";
  43. const WCHAR * INDEX_SERVER_DEFAULT_CAT = L"__IndexServerDefault__";
  44. //+-------------------------------------------------------------------------
  45. //
  46. // Interface : IColumnMapperCreator
  47. //
  48. // Description : A CI provided interface that exposes IColumnMapper for a
  49. // particular catalog on a specified machine.
  50. //
  51. // Notes : Use SYSTEM_DEFAULT_CAT as the catalog name to get at the static
  52. // list of default properties.
  53. // Use INDEX_SERVER_DEFAULT_CAT as the catalog name to get at the
  54. // default properties as specified by the property file in the
  55. // ContentIndex registry.
  56. //
  57. //+-------------------------------------------------------------------------
  58. LOCAL_INTERFACE(0b63e37b-9ccc-11d0-bcdb-00805fccce04)
  59. interface IColumnMapperCreator : IUnknown
  60. {
  61. HRESULT GetColumnMapper( [in, string] WCHAR const * wcsMachineName,
  62. [in, string] WCHAR const * wcsCatalogName,
  63. [out] IColumnMapper ** ppColumnMapper );
  64. };