//+------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1997 - 1998 // // File: colschem.idl // // Contents: Column schema definitions // // History: Aug-18-1997 AlanPe Created // //-------------------------------------------------------------------------- typedef struct tagDBID DBID; typedef WORD DBTYPE; //+------------------------------------------------------------------------- // // Interface : IColumnMapper // // Description : A CI provided interface that exposes mappings for global // column friendly names to DBIDs // //+------------------------------------------------------------------------- LOCAL_INTERFACE(0b63e37a-9ccc-11d0-bcdb-00805fccce04) interface IColumnMapper : IUnknown { HRESULT GetPropInfoFromName( [in, string] WCHAR const * wcsPropName, [out] DBID ** ppPropId, [out] DBTYPE * pPropType, [out] unsigned int * puiWidth ); HRESULT GetPropInfoFromId( [in] DBID const * pPropId, [out] WCHAR ** pwcsName, [out] DBTYPE * pPropType, [out] unsigned int * puiWidth ); HRESULT EnumPropInfo( [in] ULONG iEntry, [out] WCHAR const ** pwcsName, [out] DBID ** ppPropId, [out] DBTYPE * pPropType, [out] unsigned int * puiWidth ); HRESULT IsMapUpToDate(); }; const WCHAR * LOCAL_MACHINE = L"."; const WCHAR * SYSTEM_DEFAULT_CAT = L"__SystemDefault__"; const WCHAR * INDEX_SERVER_DEFAULT_CAT = L"__IndexServerDefault__"; //+------------------------------------------------------------------------- // // Interface : IColumnMapperCreator // // Description : A CI provided interface that exposes IColumnMapper for a // particular catalog on a specified machine. // // Notes : Use SYSTEM_DEFAULT_CAT as the catalog name to get at the static // list of default properties. // Use INDEX_SERVER_DEFAULT_CAT as the catalog name to get at the // default properties as specified by the property file in the // ContentIndex registry. // //+------------------------------------------------------------------------- LOCAL_INTERFACE(0b63e37b-9ccc-11d0-bcdb-00805fccce04) interface IColumnMapperCreator : IUnknown { HRESULT GetColumnMapper( [in, string] WCHAR const * wcsMachineName, [in, string] WCHAR const * wcsCatalogName, [out] IColumnMapper ** ppColumnMapper ); };