Mercurial > games > semicongine
comparison fuhtark_test/include/winapi/correg.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /** | |
| 2 * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 * This file is part of the w64 mingw-runtime package. | |
| 4 * No warranty is given; refer to the file DISCLAIMER within this package. | |
| 5 */ | |
| 6 #ifndef _CORREG_H_ | |
| 7 #define _CORREG_H_ | |
| 8 | |
| 9 #include <ole2.h> | |
| 10 | |
| 11 #ifdef __cplusplus | |
| 12 extern "C" { | |
| 13 #endif | |
| 14 | |
| 15 #include <pshpack1.h> | |
| 16 | |
| 17 #ifndef NODLLIMPORT | |
| 18 #define DLLIMPORT __declspec(dllimport) | |
| 19 #else | |
| 20 #define DLLIMPORT | |
| 21 #endif | |
| 22 | |
| 23 #if !defined(_META_DATA_NO_SCOPE_) || defined(_META_DATA_SCOPE_WRAPPER_) | |
| 24 | |
| 25 STDAPI CoGetCor(REFIID riid,void **ppv); | |
| 26 #endif | |
| 27 | |
| 28 STDAPI CoInitializeCor(DWORD fFlags); | |
| 29 STDAPI_(void) CoUninitializeCor(void); | |
| 30 | |
| 31 typedef INT_PTR mdScope; | |
| 32 #define mdScopeNil ((mdScope)0) | |
| 33 | |
| 34 typedef INT_PTR mdToken; | |
| 35 typedef INT_PTR mdModule; | |
| 36 typedef INT_PTR mdTypeDef; | |
| 37 typedef INT_PTR mdInterfaceImpl; | |
| 38 typedef INT_PTR mdTypeRef; | |
| 39 typedef INT_PTR mdNamespace; | |
| 40 typedef INT_PTR mdCustomValue; | |
| 41 typedef INT_PTR mdResource; | |
| 42 typedef INT_PTR mdCocatdef; | |
| 43 typedef INT_PTR mdCocatImpl; | |
| 44 typedef INT_PTR mdMimeTypeImpl; | |
| 45 typedef INT_PTR mdFormatImpl; | |
| 46 typedef INT_PTR mdProgID; | |
| 47 typedef INT_PTR mdRoleCheck; | |
| 48 typedef unsigned long RID; | |
| 49 | |
| 50 enum CorRegTokenType { | |
| 51 mdtTypeDef = 0x00000000,mdtInterfaceImpl = 0x01000000,mdtTypeRef = 0x03000000,mdtNamespace = 0x06000000,mdtCustomValue = 0x07000000, | |
| 52 mdtResource = 0x0B000000,mdtCocatImpl = 0x0D000000,mdtMimeTypeImpl = 0x0E000000,mdtFormatImpl = 0x0F000000,mdtProgID = 0x10000000, | |
| 53 mdtRoleCheck = 0x11000000,mdtModule = 0x14000000 | |
| 54 }; | |
| 55 | |
| 56 #define RidToToken(rid,tktype) ((rid) |= (tktype)) | |
| 57 #define TokenFromRid(rid,tktype) ((rid) | (tktype)) | |
| 58 #define RidFromToken(tk) ((RID) ((tk) & 0x00ffffff)) | |
| 59 #define TypeFromToken(tk) ((tk) & 0xff000000) | |
| 60 | |
| 61 #define mdTokenNil ((mdToken)0) | |
| 62 #define mdModuleNil ((mdModule)mdtModule) | |
| 63 #define mdTypeDefNil ((mdTypeDef)mdtTypeDef) | |
| 64 #define mdInterfaceImplNil ((mdInterfaceImpl)mdtInterfaceImpl) | |
| 65 #define mdTypeRefNil ((mdTypeRef)mdtTypeRef) | |
| 66 #define mdNamespaceNil ((mdNamespace)mdtNamespace) | |
| 67 #define mdCustomValueNil ((mdCustomValue)mdtCustomValue) | |
| 68 #define mdResourceNil ((mdResource)mdtResource) | |
| 69 #define mdCocatImplNil ((mdCocatImpl)mdtCocatImpl) | |
| 70 #define mdMimeTypeImplNil ((mdMimeTypeImpl)mdtMimeTypeImpl) | |
| 71 #define mdFormatImplNil ((mdFormatImpl)mdtFormatImpl) | |
| 72 #define mdProgIDNil ((mdProgID)mdtProgID) | |
| 73 #define mdRoleCheckNil ((mdRoleCheck)mdtRoleCheck) | |
| 74 | |
| 75 enum CorRegTypeAttr { | |
| 76 tdPublic = 0x0001,tdLayoutMask = 0x0006,tdAutoLayout = 0x0000,tdLayoutSequential = 0x0002,tdExplicitLayout = 0x0004,tdWrapperClass = 0x0008, | |
| 77 tdFinal = 0x0010,tdISSCompat = 0x0020,tdStringFormatMask = 0x00c0,tdAnsiClass = 0x0000,tdUnicodeClass = 0x0040,tdAutoClass = 0x0080, | |
| 78 tdValueClass = 0x0100,tdInterface = 0x0200,tdAbstract = 0x0400,tdImport = 0x1000,tdRecord = 0x2000,tdEnum = 0x4000,tdReserved1 = 0x0800 | |
| 79 }; | |
| 80 | |
| 81 enum CorImplementType { | |
| 82 itImplements = 0x0000,itEvents = 0x0001,itRequires = 0x0002,itInherits = 0x0004 | |
| 83 }; | |
| 84 | |
| 85 enum CorClassActivateAttr { | |
| 86 caaDeferCreate = 0x0001,caaAppObject = 0x0002,caaFixedIfaceSet = 0x0004,caaIndependentlyCreateable = 0x0100,caaPredefined = 0x0200, | |
| 87 caaLoadBalancing = 0x0c00,caaLBNotSupported = 0x0400,caaLBSupported = 0x0800,caaLBNotSpecified = 0x0000,caaObjectPooling = 0x3000, | |
| 88 caaOPNotSupported = 0x1000,caaOPSupported = 0x2000,caaOPNotSpecified = 0x0000,caaJITActivation = 0xc000,caaJANotSupported = 0x4000, | |
| 89 caaJASupported = 0x8000,caaJANotSpecified = 0x0000 | |
| 90 }; | |
| 91 | |
| 92 enum CorIfaceSvcAttr { | |
| 93 mlNone = 0x0001,mlAutomation = 0x0002,mlProxyStub = 0x0004,mlDeferrable = 0x0018,mlDeferNotSupported = 0x0008,mlDeferSupported = 0x0010, | |
| 94 mlDeferNotSpecified = 0x0000 | |
| 95 }; | |
| 96 | |
| 97 enum CocatImplAttr { | |
| 98 catiaImplements = 0x0001,catiaRequires = 0x0002 | |
| 99 }; | |
| 100 | |
| 101 enum CorModuleExportAttr { | |
| 102 moUsesGetLastError = 0x0001 | |
| 103 }; | |
| 104 | |
| 105 enum CorModuleRegAttr { | |
| 106 rmaCustomReg = 0x0001 | |
| 107 }; | |
| 108 | |
| 109 enum CorRegFormatAttr { | |
| 110 rfaSupportsFormat = 0x0001,rfaConvertsFromFormat = 0x0002,rfaConvertsToFormat = 0x0003,rfaDefaultFormat = 0x0004,rfaIsFileExt = 0x0005, | |
| 111 rfaIsFileType = 0x0006,rfaIsDataFormat = 0x0007 | |
| 112 }; | |
| 113 | |
| 114 enum CorSynchAttr { | |
| 115 sySupported = 0x0001,syRequired = 0x0002,syRequiresNew = 0x0004,syNotSupported = 0x0008,syThreadAffinity = 0x0010 | |
| 116 }; | |
| 117 | |
| 118 enum CorThreadingAttr { | |
| 119 taMain = 0x0001,taSTA = 0x0002,taMTA = 0x0004,taNeutral = 0x0008,taBoth = 0x0010 | |
| 120 }; | |
| 121 | |
| 122 enum CorXactionAttr { | |
| 123 xaSupported = 0x0001,xaRequired = 0x0002,xaRequiresNew = 0x0004,xaNotSupported = 0x0008,xaNoVote = 0x0010 | |
| 124 }; | |
| 125 | |
| 126 enum CorRoleCheckAttr { | |
| 127 rcChecksFor = 0x0001 | |
| 128 }; | |
| 129 | |
| 130 typedef void *HCORENUM; | |
| 131 | |
| 132 #ifndef _CORSAVESIZE_DEFINED_ | |
| 133 #define _CORSAVESIZE_DEFINED_ | |
| 134 typedef enum CorSaveSize { | |
| 135 cssAccurate = 0x0000,cssQuick = 0x0001 | |
| 136 } CorSaveSize; | |
| 137 #endif | |
| 138 | |
| 139 #define MAX_CLASS_NAME 255 | |
| 140 #define MAX_PACKAGE_NAME 255 | |
| 141 | |
| 142 __MINGW_EXTENSION typedef unsigned __int64 CLASSVERSION; | |
| 143 | |
| 144 #ifndef DECLSPEC_SELECT_ANY | |
| 145 #define DECLSPEC_SELECT_ANY __declspec(selectany) | |
| 146 #endif | |
| 147 | |
| 148 extern const GUID DECLSPEC_SELECT_ANY CLSID_Cor = { 0xbee00010,0xee77,0x11d0,{0xa0,0x15,0x00,0xc0,0x4f,0xbb,0xb8,0x84 } }; | |
| 149 extern const GUID DECLSPEC_SELECT_ANY CLSID_CorMetaDataDispenser = { 0xe5cb7a31,0x7512,0x11d2,{ 0x89,0xce,0x0,0x80,0xc7,0x92,0xe5,0xd8 } }; | |
| 150 extern const GUID DECLSPEC_SELECT_ANY CLSID_CorMetaDataDispenserReg = { 0x435755ff,0x7397,0x11d2,{ 0x97,0x71,0x0,0xa0,0xc9,0xb4,0xd5,0xc } }; | |
| 151 extern const GUID DECLSPEC_SELECT_ANY CLSID_CorMetaDataReg = { 0x87f3a1f5,0x7397,0x11d2,{ 0x97,0x71,0x0,0xa0,0xc9,0xb4,0xd5,0xc } }; | |
| 152 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataInternal = { 0x2d601bb,0xc5b9,0x11d1,{0x93,0xf9,0x0,0x0,0xf8,0x8,0x34,0x60 } }; | |
| 153 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataEmitTemp = { 0xad93d71d,0xe1f2,0x11d1,{0x94,0x9,0x0,0x0,0xf8,0x8,0x34,0x60 } }; | |
| 154 | |
| 155 struct IMetaDataRegEmit; | |
| 156 struct IMetaDataRegImport; | |
| 157 struct IMetaDataDispenser; | |
| 158 | |
| 159 extern const GUID DECLSPEC_SELECT_ANY IID_IMemory = { 0x6a3ea8a,0x225,0x11d1,{0xbf,0x72,0x0,0xc0,0x4f,0xc3,0x1e,0x12 } }; | |
| 160 | |
| 161 #undef INTERFACE | |
| 162 #define INTERFACE IMemory | |
| 163 DECLARE_INTERFACE_(IMemory,IUnknown) { | |
| 164 STDMETHOD(QueryInterface)(THIS_ REFIID riid,LPVOID *ppvObj) PURE; | |
| 165 STDMETHOD_(ULONG,AddRef)(THIS) PURE; | |
| 166 STDMETHOD_(ULONG,Release)(THIS) PURE; | |
| 167 STDMETHOD(GetMemory)(void **pMem,ULONG *iSize) PURE; | |
| 168 STDMETHOD(SetMemory)(void *pMem,ULONG iSize) PURE; | |
| 169 }; | |
| 170 | |
| 171 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataError = { 0xb81ff171,0x20f3,0x11d2,{ 0x8d,0xcc,0x0,0xa0,0xc9,0xb0,0x9c,0x19 } }; | |
| 172 | |
| 173 #undef INTERFACE | |
| 174 #define INTERFACE IMetaDataError | |
| 175 DECLARE_INTERFACE_(IMetaDataError,IUnknown) { | |
| 176 STDMETHOD(OnError)(HRESULT hrError,mdToken token) PURE; | |
| 177 }; | |
| 178 | |
| 179 extern const GUID DECLSPEC_SELECT_ANY IID_IMapToken = { 0x6a3ea8b,0x225,0x11d1,{0xbf,0x72,0x0,0xc0,0x4f,0xc3,0x1e,0x12 } }; | |
| 180 | |
| 181 #undef INTERFACE | |
| 182 #define INTERFACE IMapToken | |
| 183 DECLARE_INTERFACE_(IMapToken,IUnknown) { | |
| 184 STDMETHOD(Map)(ULONG tkImp,ULONG tkEmit) PURE; | |
| 185 }; | |
| 186 | |
| 187 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataDispenser = { 0x809c652e,0x7396,0x11d2,{ 0x97,0x71,0x0,0xa0,0xc9,0xb4,0xd5,0xc } }; | |
| 188 | |
| 189 #undef INTERFACE | |
| 190 #define INTERFACE IMetaDataDispenser | |
| 191 DECLARE_INTERFACE_(IMetaDataDispenser,IUnknown) { | |
| 192 STDMETHOD(DefineScope)(REFCLSID rclsid,DWORD dwCreateFlags,REFIID riid,IUnknown **ppIUnk) PURE; | |
| 193 STDMETHOD(OpenScope)(LPCWSTR szScope,DWORD dwOpenFlags,REFIID riid,IUnknown **ppIUnk) PURE; | |
| 194 STDMETHOD(OpenScopeOnStream)(IStream *pIStream,DWORD dwOpenFlags,REFIID riid,IUnknown **ppIUnk) PURE; | |
| 195 STDMETHOD(OpenScopeOnMemory)(LPCVOID pData,ULONG cbData,DWORD dwOpenFlags,REFIID riid,IUnknown **ppIUnk) PURE; | |
| 196 }; | |
| 197 | |
| 198 #if defined(_META_DATA_NO_SCOPE_) || defined(_META_DATA_SCOPE_WRAPPER_) | |
| 199 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataRegEmit = { 0x601c95b9,0x7398,0x11d2,{ 0x97,0x71,0x0,0xa0,0xc9,0xb4,0xd5,0xc } }; | |
| 200 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataRegEmitOld = { 0xf28f419b,0x62ca,0x11d2,{ 0x8f,0x2c,0x0,0xa0,0xc9,0xa6,0x18,0x6d } }; | |
| 201 | |
| 202 #undef INTERFACE | |
| 203 #define INTERFACE IMetaDataRegEmit | |
| 204 DECLARE_INTERFACE_(IMetaDataRegEmit,IUnknown) { | |
| 205 STDMETHOD(SetModuleProps)(LPCWSTR szName,const GUID *ppid,LCID lcid) PURE; | |
| 206 STDMETHOD(Save)(LPCWSTR szFile,DWORD dwSaveFlags) PURE; | |
| 207 STDMETHOD(SaveToStream)(IStream *pIStream,DWORD dwSaveFlags) PURE; | |
| 208 STDMETHOD(GetSaveSize)(CorSaveSize fSave,DWORD *pdwSaveSize) PURE; | |
| 209 STDMETHOD(Merge)(IMetaDataRegImport *pImport,IMapToken *pIMap) PURE; | |
| 210 STDMETHOD(DefineCustomValueAsBlob)(mdToken tkObj,LPCWSTR szName,void const *pCustomValue,ULONG cbCustomValue,mdCustomValue *pcv) PURE; | |
| 211 STDMETHOD(DefineTypeDef)(LPCWSTR szNamespace,LPCWSTR szTypeDef,const GUID *pguid,CLASSVERSION *pVer,DWORD dwTypeDefFlags,mdToken tkExtends,DWORD dwExtendsFlags,mdToken rtkImplements[],mdToken rtkEvents[],mdTypeDef *ptd) PURE; | |
| 212 STDMETHOD(SetTypeDefProps)(mdTypeDef td,CLASSVERSION *pVer,DWORD dwTypeDefFlags,mdToken tkExtends,DWORD dwExtendsFlags,mdToken rtkImplements[],mdToken rtkEvents[]) PURE; | |
| 213 STDMETHOD(SetClassSvcsContext)(mdTypeDef td,DWORD dwClassActivateAttr,DWORD dwClassThreadAttr,DWORD dwXactionAttr,DWORD dwSynchAttr) PURE; | |
| 214 STDMETHOD(DefineTypeRefByGUID)(GUID *pguid,mdTypeRef *ptr) PURE; | |
| 215 STDMETHOD(SetModuleReg)(DWORD dwModuleRegAttr,const GUID *pguid) PURE; | |
| 216 STDMETHOD(SetClassReg)(mdTypeDef td,LPCWSTR szProgID,LPCWSTR szVIProgID,LPCWSTR szIconURL,ULONG ulIconResource,LPCWSTR szSmallIconURL,ULONG ulSmallIconResource,LPCWSTR szDefaultDispName) PURE; | |
| 217 STDMETHOD(SetIfaceReg)(mdTypeDef td,DWORD dwIfaceSvcs,const GUID *proxyStub) PURE; | |
| 218 STDMETHOD(SetCategoryImpl)(mdTypeDef td,GUID rGuidCoCatImpl[],GUID rGuidCoCatReqd[]) PURE; | |
| 219 STDMETHOD(SetRedirectProgID)(mdTypeDef td,LPCWSTR rszRedirectProgID[]) PURE; | |
| 220 STDMETHOD(SetMimeTypeImpl)(mdTypeDef td,LPCWSTR rszMimeType[]) PURE; | |
| 221 STDMETHOD(SetFormatImpl)(mdTypeDef td,LPCWSTR rszFormatSupported[],LPCWSTR rszFormatConvertsFrom[],LPCWSTR rszFormatConvertsTo[],LPCWSTR rszFormatDefault[],LPCWSTR rszFileExt[],LPCWSTR rszFileType[]) PURE; | |
| 222 STDMETHOD(SetRoleCheck)(mdToken tk,LPCWSTR rszName[],DWORD rdwRoleFlags[]) PURE; | |
| 223 STDMETHOD(SetHandler)(IUnknown *pUnk) PURE; | |
| 224 }; | |
| 225 #endif | |
| 226 | |
| 227 #if !defined(_META_DATA_NO_SCOPE_) | |
| 228 #if !defined(_META_DATA_SCOPE_WRAPPER_) | |
| 229 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataRegEmit = { 0xf28f419b,0x62ca,0x11d2,{ 0x8f,0x2c,0x0,0xa0,0xc9,0xa6,0x18,0x6d } }; | |
| 230 #endif | |
| 231 | |
| 232 #undef INTERFACE | |
| 233 #if defined(_META_DATA_SCOPE_WRAPPER_) | |
| 234 #define INTERFACE IMetaDataRegEmitOld | |
| 235 #else | |
| 236 #define INTERFACE IMetaDataRegEmit | |
| 237 #endif | |
| 238 DECLARE_INTERFACE_(INTERFACE,IUnknown) { | |
| 239 STDMETHOD(DefineScope)(DWORD dwCreateFlags,mdScope *pscope) PURE; | |
| 240 STDMETHOD(SetModuleProps)(mdScope scope,LPCWSTR szName,const GUID *ppid,LCID lcid) PURE; | |
| 241 STDMETHOD(Save)(mdScope es,LPCWSTR szFile,DWORD dwSaveFlags) PURE; | |
| 242 STDMETHOD(SaveToStream)(mdScope es,IStream *pIStream,DWORD dwSaveFlags) PURE; | |
| 243 STDMETHOD(GetSaveSize)(mdScope es,CorSaveSize fSave,DWORD *pdwSaveSize) PURE; | |
| 244 STDMETHOD_(void,Close)(mdScope scope) PURE; | |
| 245 STDMETHOD(Merge)(mdScope scEmit,mdScope scImport,IMapToken *pIMap) PURE; | |
| 246 STDMETHOD(DefineCustomValueAsBlob)(mdScope es,mdToken tkObj,LPCWSTR szName,void const *pCustomValue,ULONG cbCustomValue,mdCustomValue *pcv) PURE; | |
| 247 STDMETHOD(DefineTypeDef)(mdScope es,LPCWSTR szNamespace,LPCWSTR szTypeDef,const GUID *pguid,CLASSVERSION *pVer,DWORD dwTypeDefFlags,mdToken tkExtends,DWORD dwExtendsFlags,mdToken rtkImplements[],mdToken rtkEvents[],mdTypeDef *ptd) PURE; | |
| 248 STDMETHOD(SetTypeDefProps)(mdScope es,mdTypeDef td,CLASSVERSION *pVer,DWORD dwTypeDefFlags,mdToken tkExtends,DWORD dwExtendsFlags,mdToken rtkImplements[],mdToken rtkEvents[]) PURE; | |
| 249 STDMETHOD(SetClassSvcsContext)(mdScope es,mdTypeDef td,DWORD dwClassActivateAttr,DWORD dwClassThreadAttr,DWORD dwXactionAttr,DWORD dwSynchAttr) PURE; | |
| 250 STDMETHOD(DefineTypeRefByGUID)(mdScope sc,GUID *pguid,mdTypeRef *ptr) PURE; | |
| 251 STDMETHOD(SetModuleReg)(mdScope es,DWORD dwModuleRegAttr,const GUID *pguid) PURE; | |
| 252 STDMETHOD(SetClassReg)(mdScope es,mdTypeDef td,LPCWSTR szProgID,LPCWSTR szVIProgID,LPCWSTR szIconURL,ULONG ulIconResource,LPCWSTR szSmallIconURL,ULONG ulSmallIconResource,LPCWSTR szDefaultDispName) PURE; | |
| 253 STDMETHOD(SetIfaceReg)(mdScope es,mdTypeDef td,DWORD dwIfaceSvcs,const GUID *proxyStub) PURE; | |
| 254 STDMETHOD(SetCategoryImpl)(mdScope es,mdTypeDef td,GUID rGuidCoCatImpl[],GUID rGuidCoCatReqd[]) PURE; | |
| 255 STDMETHOD(SetRedirectProgID)(mdScope es,mdTypeDef td,LPCWSTR rszRedirectProgID[]) PURE; | |
| 256 STDMETHOD(SetMimeTypeImpl)(mdScope es,mdTypeDef td,LPCWSTR rszMimeType[]) PURE; | |
| 257 STDMETHOD(SetFormatImpl)(mdScope es,mdTypeDef td,LPCWSTR rszFormatSupported[],LPCWSTR rszFormatConvertsFrom[],LPCWSTR rszFormatConvertsTo[],LPCWSTR rszFormatDefault[],LPCWSTR rszFileExt[],LPCWSTR rszFileType[]) PURE; | |
| 258 STDMETHOD(SetRoleCheck)(mdScope es,mdToken tk,LPCWSTR rszName[],DWORD rdwRoleFlags[]) PURE; | |
| 259 STDMETHOD(SetHandler)(mdScope sc,IUnknown *pUnk) PURE; | |
| 260 }; | |
| 261 #endif | |
| 262 | |
| 263 #if defined(_META_DATA_NO_SCOPE_) || defined(_META_DATA_SCOPE_WRAPPER_) | |
| 264 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataRegImport = { 0x4398b4fd,0x7399,0x11d2,{ 0x97,0x71,0x0,0xa0,0xc9,0xb4,0xd5,0xc } }; | |
| 265 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataRegImportOld = { 0xf28f419a,0x62ca,0x11d2,{ 0x8f,0x2c,0x0,0xa0,0xc9,0xa6,0x18,0x6d } }; | |
| 266 | |
| 267 #undef INTERFACE | |
| 268 #define INTERFACE IMetaDataRegImport | |
| 269 DECLARE_INTERFACE_(IMetaDataRegImport,IUnknown) { | |
| 270 STDMETHOD_(void,CloseEnum)(HCORENUM hEnum) PURE; | |
| 271 STDMETHOD(CountEnum)(HCORENUM hEnum,ULONG *pulCount) PURE; | |
| 272 STDMETHOD(ResetEnum)(HCORENUM hEnum,ULONG ulPos) PURE; | |
| 273 STDMETHOD(EnumTypeDefs)(HCORENUM *phEnum,mdTypeDef rTypeDefs[],ULONG cMax,ULONG *pcTypeDefs) PURE; | |
| 274 STDMETHOD(EnumInterfaceImpls)(HCORENUM *phEnum,mdTypeDef td,mdInterfaceImpl rImpls[],ULONG cMax,ULONG *pcImpls) PURE; | |
| 275 STDMETHOD(EnumTypeRefs)(HCORENUM *phEnum,mdTypeRef rTypeRefs[],ULONG cMax,ULONG *pcTypeRefs) PURE; | |
| 276 STDMETHOD(EnumCustomValues)(HCORENUM *phEnum,mdToken tk,mdCustomValue rCustomValues[],ULONG cMax,ULONG *pcCustomValues) PURE; | |
| 277 STDMETHOD(EnumResources)(HCORENUM *phEnum,mdResource rResources[],ULONG cMax,ULONG *pcResources) PURE; | |
| 278 STDMETHOD(EnumCategoryImpls)(HCORENUM *phEnum,mdTypeDef td,mdCocatImpl rCocatImpls[],ULONG cMax,ULONG *pcCocatImpls) PURE; | |
| 279 STDMETHOD(EnumRedirectProgIDs)(HCORENUM *phEnum,mdTypeDef td,mdProgID rRedirectProgIDs[],ULONG cMax,ULONG *pcRedirectProgIDs) PURE; | |
| 280 STDMETHOD(EnumMimeTypeImpls)(HCORENUM *phEnum,mdTypeDef td,mdMimeTypeImpl rMimeTypeImpls[],ULONG cMax,ULONG *pcMimeTypeImpls) PURE; | |
| 281 STDMETHOD(EnumFormatImpls)(HCORENUM *phEnum,mdTypeDef td,mdFormatImpl rFormatImpls[],ULONG cMax,ULONG *pcFormatImpls) PURE; | |
| 282 STDMETHOD(EnumRoleChecks)(HCORENUM *phEnum,mdToken tk,mdRoleCheck rRoleChecks[],ULONG cMax,ULONG *pcRoleChecks) PURE; | |
| 283 STDMETHOD(FindTypeDefByName)(LPCWSTR szNamespace,LPCWSTR szTypeDef,mdTypeDef *ptd) PURE; | |
| 284 STDMETHOD(FindTypeDefByGUID)(const GUID *pguid,mdTypeDef *ptd) PURE; | |
| 285 STDMETHOD(FindCustomValue)(mdToken tk,LPCWSTR szName,mdCustomValue *pcv,DWORD *pdwValueType) PURE; | |
| 286 STDMETHOD(GetScopeProps)(LPWSTR szName,ULONG cchName,ULONG *pchName,GUID *ppid,GUID *pmvid,LCID *pLcid) PURE; | |
| 287 STDMETHOD(GetModuleFromScope)(mdModule *pmd) PURE; | |
| 288 STDMETHOD(GetTypeDefProps)(mdTypeDef td,LPWSTR szNamespace,ULONG cchNamespace,ULONG *pchNamespace,LPWSTR szTypeDef,ULONG cchTypeDef,ULONG *pchTypeDef,GUID *pguid,CLASSVERSION *pver,DWORD *pdwTypeDefFlags,mdToken *ptkExtends,DWORD *pdwExtendsFlags) PURE; | |
| 289 STDMETHOD(GetClassSvcsContext)(mdTypeDef td,DWORD *pdwClassActivateAttr,DWORD *pdwThreadAttr,DWORD *pdwXactonAttr,DWORD *pdwSynchAttr) PURE; | |
| 290 STDMETHOD(GetInterfaceImplProps)(mdInterfaceImpl iiImpl,mdTypeDef *pClass,mdToken *ptkIface,DWORD *pdwFlags) PURE; | |
| 291 STDMETHOD(GetCustomValueProps)(mdCustomValue cv,LPWSTR szName,ULONG cchName,ULONG *pchName,DWORD *pdwValueType) PURE; | |
| 292 STDMETHOD(GetCustomValueAsBlob)(mdCustomValue cv,void const **ppBlob,ULONG *pcbSize) PURE; | |
| 293 STDMETHOD(GetTypeRefProps)(mdTypeRef tr,LPWSTR szTypeRef,ULONG cchTypeRef,ULONG *pchTypeRef,GUID *pGuid,DWORD *pdwBind) PURE; | |
| 294 STDMETHOD(GetModuleRegProps)(DWORD *pModuleRegAttr,GUID *pguid) PURE; | |
| 295 STDMETHOD(GetClassRegProps)(mdTypeDef td,LPWSTR szProgid,ULONG cchProgid,ULONG *pchProgid,LPWSTR szVIProgid,ULONG cchVIProgid,ULONG *pchVIProgid,LPWSTR szIconURL,ULONG cchIconURL,ULONG *pchIconURL,ULONG *pIconResource,LPWSTR szSmallIconURL,ULONG cchSmallIconURL,ULONG *pchSmallIconURL,ULONG *pSmallIconResource,LPWSTR szDefaultDispname,ULONG cchDefaultDispname,ULONG *pchDefaultDispname) PURE; | |
| 296 STDMETHOD(GetIfaceRegProps)(mdTypeDef td,DWORD *pdwIfaceSvcs,GUID *pProxyStub) PURE; | |
| 297 STDMETHOD(GetResourceProps)(mdResource rs,LPWSTR szURL,ULONG cchURL,ULONG *pchURL) PURE; | |
| 298 STDMETHOD(GetCategoryImplProps)(mdCocatImpl cocat,GUID *pguid,DWORD *pdwCocatImplAttr) PURE; | |
| 299 STDMETHOD(GetRedirectProgIDProps)(mdProgID progid,LPWSTR szProgID,ULONG cchProgID,ULONG *pchProgID) PURE; | |
| 300 STDMETHOD(GetMimeTypeImplProps)(mdMimeTypeImpl mime,LPWSTR szMime,ULONG cchMime,ULONG *pchMime) PURE; | |
| 301 STDMETHOD(GetFormatImplProps)(mdFormatImpl format,LPWSTR szFormat,ULONG cchFormat,ULONG *pchFormat,DWORD *pdwRegFormatAttr) PURE; | |
| 302 STDMETHOD(GetRoleCheckProps)(mdRoleCheck rc,LPWSTR szName,ULONG cchName,ULONG *pchName,DWORD *pdwRoleFlags) PURE; | |
| 303 STDMETHOD(ResolveTypeRef)(mdTypeRef tr,REFIID riid,IUnknown **ppIScope,mdTypeDef *ptd) PURE; | |
| 304 }; | |
| 305 #endif | |
| 306 | |
| 307 #if !defined(_META_DATA_NO_SCOPE_) | |
| 308 #if !defined(_META_DATA_SCOPE_WRAPPER_) | |
| 309 extern const GUID DECLSPEC_SELECT_ANY IID_IMetaDataRegImport = { 0xf28f419a,0x62ca,0x11d2,{ 0x8f,0x2c,0x0,0xa0,0xc9,0xa6,0x18,0x6d } }; | |
| 310 #endif | |
| 311 | |
| 312 #undef INTERFACE | |
| 313 #if defined(_META_DATA_SCOPE_WRAPPER_) | |
| 314 #define INTERFACE IMetaDataRegImportOld | |
| 315 #else | |
| 316 #define INTERFACE IMetaDataRegImport | |
| 317 #endif | |
| 318 DECLARE_INTERFACE_(INTERFACE,IUnknown) { | |
| 319 STDMETHOD(OpenScope)(LPCWSTR szScope,DWORD dwOpenFlags,mdScope *pscope) PURE; | |
| 320 STDMETHOD(OpenScopeOnStream)(IStream *pIStream,DWORD dwOpenFlags,mdScope *psc) PURE; | |
| 321 STDMETHOD(OpenScopeOnMemory)(LPCVOID pData,ULONG cbData,mdScope *psc) PURE; | |
| 322 STDMETHOD_(void,Close)(mdScope scope) PURE; | |
| 323 STDMETHOD_(void,CloseEnum)(mdScope scope,HCORENUM hEnum) PURE; | |
| 324 STDMETHOD(CountEnum)(mdScope scope,HCORENUM hEnum,ULONG *pulCount) PURE; | |
| 325 STDMETHOD(ResetEnum)(mdScope scope,HCORENUM hEnum,ULONG ulPos) PURE; | |
| 326 STDMETHOD(EnumTypeDefs)(mdScope scope,HCORENUM *phEnum,mdTypeDef rTypeDefs[],ULONG cMax,ULONG *pcTypeDefs) PURE; | |
| 327 STDMETHOD(EnumInterfaceImpls)(mdScope scope,HCORENUM *phEnum,mdTypeDef td,mdInterfaceImpl rImpls[],ULONG cMax,ULONG *pcImpls) PURE; | |
| 328 STDMETHOD(EnumTypeRefs)(mdScope scope,HCORENUM *phEnum,mdTypeRef rTypeRefs[],ULONG cMax,ULONG *pcTypeRefs) PURE; | |
| 329 STDMETHOD(EnumCustomValues)(mdScope scope,HCORENUM *phEnum,mdToken tk,mdCustomValue rCustomValues[],ULONG cMax,ULONG *pcCustomValues) PURE; | |
| 330 STDMETHOD(EnumResources)(mdScope scope,HCORENUM *phEnum,mdResource rResources[],ULONG cMax,ULONG *pcResources) PURE; | |
| 331 STDMETHOD(EnumCategoryImpls)(mdScope scope,HCORENUM *phEnum,mdTypeDef td,mdCocatImpl rCocatImpls[],ULONG cMax,ULONG *pcCocatImpls) PURE; | |
| 332 STDMETHOD(EnumRedirectProgIDs)(mdScope scope,HCORENUM *phEnum,mdTypeDef td,mdProgID rRedirectProgIDs[],ULONG cMax,ULONG *pcRedirectProgIDs) PURE; | |
| 333 STDMETHOD(EnumMimeTypeImpls)(mdScope scope,HCORENUM *phEnum,mdTypeDef td,mdMimeTypeImpl rMimeTypeImpls[],ULONG cMax,ULONG *pcMimeTypeImpls) PURE; | |
| 334 STDMETHOD(EnumFormatImpls)(mdScope scope,HCORENUM *phEnum,mdTypeDef td,mdFormatImpl rFormatImpls[],ULONG cMax,ULONG *pcFormatImpls) PURE; | |
| 335 STDMETHOD(EnumRoleChecks)(mdScope scope,HCORENUM *phEnum,mdToken tk,mdRoleCheck rRoleChecks[],ULONG cMax,ULONG *pcRoleChecks) PURE; | |
| 336 STDMETHOD(FindTypeDefByName)(mdScope scope,LPCWSTR szNamespace,LPCWSTR szTypeDef,mdTypeDef *ptd) PURE; | |
| 337 STDMETHOD(FindTypeDefByGUID)(mdScope scope,const GUID *pguid,mdTypeDef *ptd) PURE; | |
| 338 STDMETHOD(FindCustomValue)(mdScope scope,mdToken tk,LPCWSTR szName,mdCustomValue *pcv,DWORD *pdwValueType) PURE; | |
| 339 STDMETHOD(GetScopeProps)(mdScope scope,LPWSTR szName,ULONG cchName,ULONG *pchName,GUID *ppid,GUID *pmvid,LCID *pLcid) PURE; | |
| 340 STDMETHOD(GetModuleFromScope)(mdScope scope,mdModule *pmd) PURE; | |
| 341 STDMETHOD(GetTypeDefProps)(mdScope scope,mdTypeDef td,LPWSTR szNamespace,ULONG cchNamespace,ULONG *pchNamespace,LPWSTR szTypeDef,ULONG cchTypeDef,ULONG *pchTypeDef,GUID *pguid,CLASSVERSION *pver,DWORD *pdwTypeDefFlags,mdToken *ptkExtends,DWORD *pdwExtendsFlags) PURE; | |
| 342 STDMETHOD(GetClassSvcsContext)(mdScope es,mdTypeDef td,DWORD *pdwClassActivateAttr,DWORD *pdwThreadAttr,DWORD *pdwXactonAttr,DWORD *pdwSynchAttr) PURE; | |
| 343 STDMETHOD(GetInterfaceImplProps)(mdScope scope,mdInterfaceImpl iiImpl,mdTypeDef *pClass,mdToken *ptkIface,DWORD *pdwFlags) PURE; | |
| 344 STDMETHOD(GetCustomValueProps)(mdScope scope,mdCustomValue cv,LPWSTR szName,ULONG cchName,ULONG *pchName,DWORD *pdwValueType) PURE; | |
| 345 STDMETHOD(GetCustomValueAsBlob)(mdScope scope,mdCustomValue cv,void const **ppBlob,ULONG *pcbSize) PURE; | |
| 346 STDMETHOD(GetTypeRefProps)(mdScope scope,mdTypeRef tr,LPWSTR szTypeRef,ULONG cchTypeRef,ULONG *pchTypeRef,GUID *pGuid,DWORD *pdwBind) PURE; | |
| 347 STDMETHOD(GetModuleRegProps)(mdScope scope,DWORD *pModuleRegAttr,GUID *pguid) PURE; | |
| 348 STDMETHOD(GetClassRegProps)(mdScope scope,mdTypeDef td,LPWSTR szProgid,ULONG cchProgid,ULONG *pchProgid,LPWSTR szVIProgid,ULONG cchVIProgid,ULONG *pchVIProgid,LPWSTR szIconURL,ULONG cchIconURL,ULONG *pchIconURL,ULONG *pIconResource,LPWSTR szSmallIconURL,ULONG cchSmallIconURL,ULONG *pchSmallIconURL,ULONG *pSmallIconResource,LPWSTR szDefaultDispname,ULONG cchDefaultDispname,ULONG *pchDefaultDispname) PURE; | |
| 349 STDMETHOD(GetIfaceRegProps)(mdScope scope,mdTypeDef td,DWORD *pdwIfaceSvcs,GUID *pProxyStub) PURE; | |
| 350 STDMETHOD(GetResourceProps)(mdScope scope,mdResource rs,LPWSTR szURL,ULONG cchURL,ULONG *pchURL) PURE; | |
| 351 STDMETHOD(GetCategoryImplProps)(mdScope scope,mdCocatImpl cocat,GUID *pguid,DWORD *pdwCocatImplAttr) PURE; | |
| 352 STDMETHOD(GetRedirectProgIDProps)(mdScope scope,mdProgID progid,LPWSTR szProgID,ULONG cchProgID,ULONG *pchProgID) PURE; | |
| 353 STDMETHOD(GetMimeTypeImplProps)(mdScope scope,mdMimeTypeImpl mime,LPWSTR szMime,ULONG cchMime,ULONG *pchMime) PURE; | |
| 354 STDMETHOD(GetFormatImplProps)(mdScope scope,mdFormatImpl format,LPWSTR szFormat,ULONG cchFormat,ULONG *pchFormat,DWORD *pdwRegFormatAttr) PURE; | |
| 355 STDMETHOD(GetRoleCheckProps)(mdScope scope,mdRoleCheck rc,LPWSTR szName,ULONG cchName,ULONG *pchName,DWORD *pdwRoleFlags) PURE; | |
| 356 STDMETHOD(ResolveTypeRef)(mdScope is,mdTypeRef tr,mdScope *pes,mdTypeDef *ptd) PURE; | |
| 357 }; | |
| 358 #endif | |
| 359 | |
| 360 #include <poppack.h> | |
| 361 | |
| 362 #ifdef __cplusplus | |
| 363 } | |
| 364 #endif | |
| 365 #endif |
