| 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 |
|
| 7 |
#ifndef DO_NO_IMPORTS |
| 8 |
import "unknwn.idl"; |
| 9 |
#endif |
| 10 |
|
| 11 |
cpp_quote("#include <winapifamily.h>") |
| 12 |
cpp_quote("") |
| 13 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") |
| 14 |
interface IEnumGUID; |
| 15 |
cpp_quote("#endif") |
| 16 |
|
| 17 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| 18 |
interface IEnumCATEGORYINFO; |
| 19 |
interface ICatRegister; |
| 20 |
interface ICatInformation; |
| 21 |
cpp_quote("") |
| 22 |
cpp_quote("EXTERN_C const CLSID CLSID_StdComponentCategoriesMgr;") |
| 23 |
cpp_quote("#endif") |
| 24 |
cpp_quote("") |
| 25 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") |
| 26 |
typedef GUID CATID; |
| 27 |
typedef REFGUID REFCATID; |
| 28 |
cpp_quote("#endif") |
| 29 |
cpp_quote("") |
| 30 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| 31 |
cpp_quote("#define IID_IEnumCLSID IID_IEnumGUID") |
| 32 |
cpp_quote("#define IEnumCLSID IEnumGUID") |
| 33 |
cpp_quote("#define LPENUMCLSID LPENUMGUID") |
| 34 |
cpp_quote("") |
| 35 |
|
| 36 |
#define IEnumCLSID IEnumGUID |
| 37 |
|
| 38 |
cpp_quote("#define CATID_NULL GUID_NULL") |
| 39 |
cpp_quote("#define IsEqualCATID(rcatid1, rcatid2) IsEqualGUID(rcatid1, rcatid2)") |
| 40 |
cpp_quote("#define IID_IEnumCATID IID_IEnumGUID") |
| 41 |
cpp_quote("#define IEnumCATID IEnumGUID") |
| 42 |
cpp_quote("") |
| 43 |
|
| 44 |
#define IEnumCATID IEnumGUID |
| 45 |
|
| 46 |
cpp_quote("") |
| 47 |
cpp_quote("EXTERN_C const CATID CATID_Insertable;") |
| 48 |
cpp_quote("EXTERN_C const CATID CATID_Control;") |
| 49 |
cpp_quote("EXTERN_C const CATID CATID_Programmable;") |
| 50 |
cpp_quote("EXTERN_C const CATID CATID_IsShortcut;") |
| 51 |
cpp_quote("EXTERN_C const CATID CATID_NeverShowExt;") |
| 52 |
cpp_quote("EXTERN_C const CATID CATID_DocObject;") |
| 53 |
cpp_quote("EXTERN_C const CATID CATID_Printable;") |
| 54 |
cpp_quote("EXTERN_C const CATID CATID_RequiresDataPathHost;") |
| 55 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToMoniker;") |
| 56 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToStorage;") |
| 57 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToStreamInit;") |
| 58 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToStream;") |
| 59 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToMemory;") |
| 60 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToFile;") |
| 61 |
cpp_quote("EXTERN_C const CATID CATID_PersistsToPropertyBag;") |
| 62 |
cpp_quote("EXTERN_C const CATID CATID_InternetAware;") |
| 63 |
cpp_quote("EXTERN_C const CATID CATID_DesignTimeUIActivatableControl;") |
| 64 |
cpp_quote("#endif") |
| 65 |
cpp_quote("") |
| 66 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") |
| 67 |
cpp_quote("#ifndef _LPENUMGUID_DEFINED") |
| 68 |
cpp_quote("#define _LPENUMGUID_DEFINED") |
| 69 |
[object, uuid (0002e000-0000-0000-C000-000000000046), pointer_default (unique)] |
| 70 |
interface IEnumGUID : IUnknown { |
| 71 |
typedef [unique] IEnumGUID *LPENUMGUID; |
| 72 |
[local] HRESULT Next ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)] GUID *rgelt,[out] ULONG *pceltFetched); |
| 73 |
[call_as (Next)] HRESULT RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)] GUID *rgelt,[out] ULONG *pceltFetched); |
| 74 |
HRESULT Skip ([in] ULONG celt); |
| 75 |
HRESULT Reset (); |
| 76 |
HRESULT Clone ([out] IEnumGUID **ppenum); |
| 77 |
} |
| 78 |
cpp_quote("#endif") |
| 79 |
cpp_quote("#endif") |
| 80 |
cpp_quote("") |
| 81 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| 82 |
cpp_quote("#ifndef _LPENUMCATEGORYINFO_DEFINED") |
| 83 |
cpp_quote("#define _LPENUMCATEGORYINFO_DEFINED") |
| 84 |
[object, uuid (0002e011-0000-0000-C000-000000000046), pointer_default (unique)] |
| 85 |
interface IEnumCATEGORYINFO : IUnknown { |
| 86 |
typedef [unique] IEnumCATEGORYINFO *LPENUMCATEGORYINFO; |
| 87 |
|
| 88 |
#define CATDESC_MAX 128 |
| 89 |
|
| 90 |
cpp_quote("") |
| 91 |
typedef struct tagCATEGORYINFO { |
| 92 |
CATID catid; |
| 93 |
LCID lcid; |
| 94 |
OLECHAR szDescription[CATDESC_MAX]; |
| 95 |
} CATEGORYINFO,*LPCATEGORYINFO; |
| 96 |
cpp_quote("") |
| 97 |
HRESULT Next ([in] ULONG celt,[out, size_is (celt), length_is (*pceltFetched)] CATEGORYINFO *rgelt,[out] ULONG *pceltFetched); |
| 98 |
HRESULT Skip ([in] ULONG celt); |
| 99 |
HRESULT Reset (); |
| 100 |
HRESULT Clone ([out] IEnumCATEGORYINFO **ppenum); |
| 101 |
} |
| 102 |
cpp_quote("#endif") |
| 103 |
cpp_quote("") |
| 104 |
cpp_quote("#ifndef _LPCATREGISTER_DEFINED") |
| 105 |
cpp_quote("#define _LPCATREGISTER_DEFINED") |
| 106 |
[object, uuid (0002e012-0000-0000-C000-000000000046), pointer_default (unique)] |
| 107 |
interface ICatRegister : IUnknown { |
| 108 |
typedef [unique] ICatRegister *LPCATREGISTER; |
| 109 |
cpp_quote("") |
| 110 |
HRESULT RegisterCategories ([in] ULONG cCategories,[in, size_is (cCategories)] CATEGORYINFO rgCategoryInfo[]); |
| 111 |
HRESULT UnRegisterCategories ([in] ULONG cCategories,[in, size_is (cCategories)] CATID rgcatid[]); |
| 112 |
HRESULT RegisterClassImplCategories ([in] REFCLSID rclsid,[in] ULONG cCategories,[in, size_is (cCategories)] CATID rgcatid[]); |
| 113 |
HRESULT UnRegisterClassImplCategories ([in] REFCLSID rclsid,[in] ULONG cCategories,[in, size_is (cCategories)] CATID rgcatid[]); |
| 114 |
HRESULT RegisterClassReqCategories ([in] REFCLSID rclsid,[in] ULONG cCategories,[in, size_is (cCategories)] CATID rgcatid[]); |
| 115 |
HRESULT UnRegisterClassReqCategories ([in] REFCLSID rclsid,[in] ULONG cCategories,[in, size_is (cCategories)] CATID rgcatid[]); |
| 116 |
} |
| 117 |
cpp_quote("#endif") |
| 118 |
cpp_quote("") |
| 119 |
cpp_quote("#ifndef _LPCATINFORMATION_DEFINED") |
| 120 |
cpp_quote("#define _LPCATINFORMATION_DEFINED") |
| 121 |
[object, uuid (0002e013-0000-0000-C000-000000000046), pointer_default (unique)] |
| 122 |
interface ICatInformation : IUnknown { |
| 123 |
typedef [unique] ICatInformation *LPCATINFORMATION; |
| 124 |
cpp_quote("") |
| 125 |
HRESULT EnumCategories ([in] LCID lcid,[out] IEnumCATEGORYINFO **ppenumCategoryInfo); |
| 126 |
HRESULT GetCategoryDesc ([in] REFCATID rcatid,[in] LCID lcid,[out] LPWSTR *pszDesc); |
| 127 |
[local] HRESULT EnumClassesOfCategories ([in] ULONG cImplemented,[in, size_is (cImplemented)] const CATID rgcatidImpl[],[in] ULONG cRequired,[in, size_is (cRequired)] const CATID rgcatidReq[],[out] IEnumCLSID **ppenumClsid); |
| 128 |
[call_as (EnumClassesOfCategories)] HRESULT RemoteEnumClassesOfCategories ([in] ULONG cImplemented,[in, unique, size_is (cImplemented)] const CATID rgcatidImpl[],[in] ULONG cRequired,[in, unique, size_is (cRequired)] const CATID rgcatidReq[],[out] IEnumCLSID **ppenumClsid); |
| 129 |
[local] HRESULT IsClassOfCategories ([in] REFCLSID rclsid,[in] ULONG cImplemented,[in, size_is (cImplemented)] const CATID rgcatidImpl[],[in] ULONG cRequired,[in, size_is (cRequired)] const CATID rgcatidReq[]); |
| 130 |
[call_as (IsClassOfCategories)] HRESULT RemoteIsClassOfCategories ([in] REFCLSID rclsid,[in] ULONG cImplemented,[in, unique, size_is (cImplemented)] const CATID rgcatidImpl[],[in] ULONG cRequired,[in, unique, size_is (cRequired)] const CATID rgcatidReq[]); |
| 131 |
HRESULT EnumImplCategoriesOfClass ([in] REFCLSID rclsid,[out] IEnumCATID **ppenumCatid); |
| 132 |
HRESULT EnumReqCategoriesOfClass ([in] REFCLSID rclsid,[out] IEnumCATID **ppenumCatid); |
| 133 |
} |
| 134 |
cpp_quote("#endif") |
| 135 |
cpp_quote("#endif") |