1 /*** Autogenerated by WIDL 1.6 from include/comcat.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __comcat_h__ 16 #define __comcat_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __IEnumGUID_FWD_DEFINED__ 21 #define __IEnumGUID_FWD_DEFINED__ 22 typedef interface IEnumGUID IEnumGUID; 23 #endif 24 25 #ifndef __IEnumCATEGORYINFO_FWD_DEFINED__ 26 #define __IEnumCATEGORYINFO_FWD_DEFINED__ 27 typedef interface IEnumCATEGORYINFO IEnumCATEGORYINFO; 28 #endif 29 30 #ifndef __ICatRegister_FWD_DEFINED__ 31 #define __ICatRegister_FWD_DEFINED__ 32 typedef interface ICatRegister ICatRegister; 33 #endif 34 35 #ifndef __ICatInformation_FWD_DEFINED__ 36 #define __ICatInformation_FWD_DEFINED__ 37 typedef interface ICatInformation ICatInformation; 38 #endif 39 40 /* Headers for imported files */ 41 42 #include <unknwn.h> 43 44 #ifdef __cplusplus 45 extern "C" { 46 #endif 47 48 /** 49 * This file is part of the mingw-w64 runtime package. 50 * No warranty is given; refer to the file DISCLAIMER within this package. 51 */ 52 53 #include <winapifamily.h> 54 55 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 56 #ifndef __IEnumGUID_FWD_DEFINED__ 57 #define __IEnumGUID_FWD_DEFINED__ 58 typedef interface IEnumGUID IEnumGUID; 59 #endif 60 61 #endif 62 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 63 #ifndef __IEnumCATEGORYINFO_FWD_DEFINED__ 64 #define __IEnumCATEGORYINFO_FWD_DEFINED__ 65 typedef interface IEnumCATEGORYINFO IEnumCATEGORYINFO; 66 #endif 67 68 #ifndef __ICatRegister_FWD_DEFINED__ 69 #define __ICatRegister_FWD_DEFINED__ 70 typedef interface ICatRegister ICatRegister; 71 #endif 72 73 #ifndef __ICatInformation_FWD_DEFINED__ 74 #define __ICatInformation_FWD_DEFINED__ 75 typedef interface ICatInformation ICatInformation; 76 #endif 77 78 79 EXTERN_C const CLSID CLSID_StdComponentCategoriesMgr; 80 #endif 81 82 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 83 typedef GUID CATID; 84 typedef REFGUID REFCATID; 85 #endif 86 87 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 88 #define IID_IEnumCLSID IID_IEnumGUID 89 #define IEnumCLSID IEnumGUID 90 #define LPENUMCLSID LPENUMGUID 91 92 #define CATID_NULL GUID_NULL 93 #define IsEqualCATID(rcatid1, rcatid2) IsEqualGUID(rcatid1, rcatid2) 94 #define IID_IEnumCATID IID_IEnumGUID 95 #define IEnumCATID IEnumGUID 96 97 98 EXTERN_C const CATID CATID_Insertable; 99 EXTERN_C const CATID CATID_Control; 100 EXTERN_C const CATID CATID_Programmable; 101 EXTERN_C const CATID CATID_IsShortcut; 102 EXTERN_C const CATID CATID_NeverShowExt; 103 EXTERN_C const CATID CATID_DocObject; 104 EXTERN_C const CATID CATID_Printable; 105 EXTERN_C const CATID CATID_RequiresDataPathHost; 106 EXTERN_C const CATID CATID_PersistsToMoniker; 107 EXTERN_C const CATID CATID_PersistsToStorage; 108 EXTERN_C const CATID CATID_PersistsToStreamInit; 109 EXTERN_C const CATID CATID_PersistsToStream; 110 EXTERN_C const CATID CATID_PersistsToMemory; 111 EXTERN_C const CATID CATID_PersistsToFile; 112 EXTERN_C const CATID CATID_PersistsToPropertyBag; 113 EXTERN_C const CATID CATID_InternetAware; 114 EXTERN_C const CATID CATID_DesignTimeUIActivatableControl; 115 #endif 116 117 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 118 #ifndef _LPENUMGUID_DEFINED 119 #define _LPENUMGUID_DEFINED 120 /***************************************************************************** 121 * IEnumGUID interface 122 */ 123 #ifndef __IEnumGUID_INTERFACE_DEFINED__ 124 #define __IEnumGUID_INTERFACE_DEFINED__ 125 126 typedef IEnumGUID *LPENUMGUID; 127 DEFINE_GUID(IID_IEnumGUID, 0x0002e000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 128 #if defined(__cplusplus) && !defined(CINTERFACE) 129 MIDL_INTERFACE("0002e000-0000-0000-c000-000000000046") 130 IEnumGUID : public IUnknown 131 { 132 virtual HRESULT STDMETHODCALLTYPE Next( 133 ULONG celt, 134 GUID *rgelt, 135 ULONG *pceltFetched) = 0; 136 137 virtual HRESULT STDMETHODCALLTYPE Skip( 138 ULONG celt) = 0; 139 140 virtual HRESULT STDMETHODCALLTYPE Reset( 141 ) = 0; 142 143 virtual HRESULT STDMETHODCALLTYPE Clone( 144 IEnumGUID **ppenum) = 0; 145 146 }; 147 #ifdef __CRT_UUID_DECL 148 __CRT_UUID_DECL(IEnumGUID, 0x0002e000, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 149 #endif 150 #else 151 typedef struct IEnumGUIDVtbl { 152 BEGIN_INTERFACE 153 154 /*** IUnknown methods ***/ 155 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 156 IEnumGUID* This, 157 REFIID riid, 158 void **ppvObject); 159 160 ULONG (STDMETHODCALLTYPE *AddRef)( 161 IEnumGUID* This); 162 163 ULONG (STDMETHODCALLTYPE *Release)( 164 IEnumGUID* This); 165 166 /*** IEnumGUID methods ***/ 167 HRESULT (STDMETHODCALLTYPE *Next)( 168 IEnumGUID* This, 169 ULONG celt, 170 GUID *rgelt, 171 ULONG *pceltFetched); 172 173 HRESULT (STDMETHODCALLTYPE *Skip)( 174 IEnumGUID* This, 175 ULONG celt); 176 177 HRESULT (STDMETHODCALLTYPE *Reset)( 178 IEnumGUID* This); 179 180 HRESULT (STDMETHODCALLTYPE *Clone)( 181 IEnumGUID* This, 182 IEnumGUID **ppenum); 183 184 END_INTERFACE 185 } IEnumGUIDVtbl; 186 interface IEnumGUID { 187 CONST_VTBL IEnumGUIDVtbl* lpVtbl; 188 }; 189 190 #ifdef COBJMACROS 191 #ifndef WIDL_C_INLINE_WRAPPERS 192 /*** IUnknown methods ***/ 193 #define IEnumGUID_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 194 #define IEnumGUID_AddRef(This) (This)->lpVtbl->AddRef(This) 195 #define IEnumGUID_Release(This) (This)->lpVtbl->Release(This) 196 /*** IEnumGUID methods ***/ 197 #define IEnumGUID_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 198 #define IEnumGUID_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 199 #define IEnumGUID_Reset(This) (This)->lpVtbl->Reset(This) 200 #define IEnumGUID_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 201 #else 202 /*** IUnknown methods ***/ 203 static FORCEINLINE HRESULT IEnumGUID_QueryInterface(IEnumGUID* This,REFIID riid,void **ppvObject) { 204 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 205 } 206 static FORCEINLINE ULONG IEnumGUID_AddRef(IEnumGUID* This) { 207 return This->lpVtbl->AddRef(This); 208 } 209 static FORCEINLINE ULONG IEnumGUID_Release(IEnumGUID* This) { 210 return This->lpVtbl->Release(This); 211 } 212 /*** IEnumGUID methods ***/ 213 static FORCEINLINE HRESULT IEnumGUID_Next(IEnumGUID* This,ULONG celt,GUID *rgelt,ULONG *pceltFetched) { 214 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 215 } 216 static FORCEINLINE HRESULT IEnumGUID_Skip(IEnumGUID* This,ULONG celt) { 217 return This->lpVtbl->Skip(This,celt); 218 } 219 static FORCEINLINE HRESULT IEnumGUID_Reset(IEnumGUID* This) { 220 return This->lpVtbl->Reset(This); 221 } 222 static FORCEINLINE HRESULT IEnumGUID_Clone(IEnumGUID* This,IEnumGUID **ppenum) { 223 return This->lpVtbl->Clone(This,ppenum); 224 } 225 #endif 226 #endif 227 228 #endif 229 230 HRESULT STDMETHODCALLTYPE IEnumGUID_RemoteNext_Proxy( 231 IEnumGUID* This, 232 ULONG celt, 233 GUID *rgelt, 234 ULONG *pceltFetched); 235 void __RPC_STUB IEnumGUID_RemoteNext_Stub( 236 IRpcStubBuffer* This, 237 IRpcChannelBuffer* pRpcChannelBuffer, 238 PRPC_MESSAGE pRpcMessage, 239 DWORD* pdwStubPhase); 240 HRESULT STDMETHODCALLTYPE IEnumGUID_Skip_Proxy( 241 IEnumGUID* This, 242 ULONG celt); 243 void __RPC_STUB IEnumGUID_Skip_Stub( 244 IRpcStubBuffer* This, 245 IRpcChannelBuffer* pRpcChannelBuffer, 246 PRPC_MESSAGE pRpcMessage, 247 DWORD* pdwStubPhase); 248 HRESULT STDMETHODCALLTYPE IEnumGUID_Reset_Proxy( 249 IEnumGUID* This); 250 void __RPC_STUB IEnumGUID_Reset_Stub( 251 IRpcStubBuffer* This, 252 IRpcChannelBuffer* pRpcChannelBuffer, 253 PRPC_MESSAGE pRpcMessage, 254 DWORD* pdwStubPhase); 255 HRESULT STDMETHODCALLTYPE IEnumGUID_Clone_Proxy( 256 IEnumGUID* This, 257 IEnumGUID **ppenum); 258 void __RPC_STUB IEnumGUID_Clone_Stub( 259 IRpcStubBuffer* This, 260 IRpcChannelBuffer* pRpcChannelBuffer, 261 PRPC_MESSAGE pRpcMessage, 262 DWORD* pdwStubPhase); 263 HRESULT CALLBACK IEnumGUID_Next_Proxy( 264 IEnumGUID* This, 265 ULONG celt, 266 GUID *rgelt, 267 ULONG *pceltFetched); 268 HRESULT __RPC_STUB IEnumGUID_Next_Stub( 269 IEnumGUID* This, 270 ULONG celt, 271 GUID *rgelt, 272 ULONG *pceltFetched); 273 274 #endif /* __IEnumGUID_INTERFACE_DEFINED__ */ 275 276 #endif 277 #endif 278 279 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 280 #ifndef _LPENUMCATEGORYINFO_DEFINED 281 #define _LPENUMCATEGORYINFO_DEFINED 282 /***************************************************************************** 283 * IEnumCATEGORYINFO interface 284 */ 285 #ifndef __IEnumCATEGORYINFO_INTERFACE_DEFINED__ 286 #define __IEnumCATEGORYINFO_INTERFACE_DEFINED__ 287 288 typedef IEnumCATEGORYINFO *LPENUMCATEGORYINFO; 289 290 typedef struct tagCATEGORYINFO { 291 CATID catid; 292 LCID lcid; 293 OLECHAR szDescription[128]; 294 } CATEGORYINFO; 295 typedef struct tagCATEGORYINFO *LPCATEGORYINFO; 296 297 DEFINE_GUID(IID_IEnumCATEGORYINFO, 0x0002e011, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 298 #if defined(__cplusplus) && !defined(CINTERFACE) 299 MIDL_INTERFACE("0002e011-0000-0000-c000-000000000046") 300 IEnumCATEGORYINFO : public IUnknown 301 { 302 virtual HRESULT STDMETHODCALLTYPE Next( 303 ULONG celt, 304 CATEGORYINFO *rgelt, 305 ULONG *pceltFetched) = 0; 306 307 virtual HRESULT STDMETHODCALLTYPE Skip( 308 ULONG celt) = 0; 309 310 virtual HRESULT STDMETHODCALLTYPE Reset( 311 ) = 0; 312 313 virtual HRESULT STDMETHODCALLTYPE Clone( 314 IEnumCATEGORYINFO **ppenum) = 0; 315 316 }; 317 #ifdef __CRT_UUID_DECL 318 __CRT_UUID_DECL(IEnumCATEGORYINFO, 0x0002e011, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 319 #endif 320 #else 321 typedef struct IEnumCATEGORYINFOVtbl { 322 BEGIN_INTERFACE 323 324 /*** IUnknown methods ***/ 325 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 326 IEnumCATEGORYINFO* This, 327 REFIID riid, 328 void **ppvObject); 329 330 ULONG (STDMETHODCALLTYPE *AddRef)( 331 IEnumCATEGORYINFO* This); 332 333 ULONG (STDMETHODCALLTYPE *Release)( 334 IEnumCATEGORYINFO* This); 335 336 /*** IEnumCATEGORYINFO methods ***/ 337 HRESULT (STDMETHODCALLTYPE *Next)( 338 IEnumCATEGORYINFO* This, 339 ULONG celt, 340 CATEGORYINFO *rgelt, 341 ULONG *pceltFetched); 342 343 HRESULT (STDMETHODCALLTYPE *Skip)( 344 IEnumCATEGORYINFO* This, 345 ULONG celt); 346 347 HRESULT (STDMETHODCALLTYPE *Reset)( 348 IEnumCATEGORYINFO* This); 349 350 HRESULT (STDMETHODCALLTYPE *Clone)( 351 IEnumCATEGORYINFO* This, 352 IEnumCATEGORYINFO **ppenum); 353 354 END_INTERFACE 355 } IEnumCATEGORYINFOVtbl; 356 interface IEnumCATEGORYINFO { 357 CONST_VTBL IEnumCATEGORYINFOVtbl* lpVtbl; 358 }; 359 360 #ifdef COBJMACROS 361 #ifndef WIDL_C_INLINE_WRAPPERS 362 /*** IUnknown methods ***/ 363 #define IEnumCATEGORYINFO_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 364 #define IEnumCATEGORYINFO_AddRef(This) (This)->lpVtbl->AddRef(This) 365 #define IEnumCATEGORYINFO_Release(This) (This)->lpVtbl->Release(This) 366 /*** IEnumCATEGORYINFO methods ***/ 367 #define IEnumCATEGORYINFO_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 368 #define IEnumCATEGORYINFO_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 369 #define IEnumCATEGORYINFO_Reset(This) (This)->lpVtbl->Reset(This) 370 #define IEnumCATEGORYINFO_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 371 #else 372 /*** IUnknown methods ***/ 373 static FORCEINLINE HRESULT IEnumCATEGORYINFO_QueryInterface(IEnumCATEGORYINFO* This,REFIID riid,void **ppvObject) { 374 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 375 } 376 static FORCEINLINE ULONG IEnumCATEGORYINFO_AddRef(IEnumCATEGORYINFO* This) { 377 return This->lpVtbl->AddRef(This); 378 } 379 static FORCEINLINE ULONG IEnumCATEGORYINFO_Release(IEnumCATEGORYINFO* This) { 380 return This->lpVtbl->Release(This); 381 } 382 /*** IEnumCATEGORYINFO methods ***/ 383 static FORCEINLINE HRESULT IEnumCATEGORYINFO_Next(IEnumCATEGORYINFO* This,ULONG celt,CATEGORYINFO *rgelt,ULONG *pceltFetched) { 384 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 385 } 386 static FORCEINLINE HRESULT IEnumCATEGORYINFO_Skip(IEnumCATEGORYINFO* This,ULONG celt) { 387 return This->lpVtbl->Skip(This,celt); 388 } 389 static FORCEINLINE HRESULT IEnumCATEGORYINFO_Reset(IEnumCATEGORYINFO* This) { 390 return This->lpVtbl->Reset(This); 391 } 392 static FORCEINLINE HRESULT IEnumCATEGORYINFO_Clone(IEnumCATEGORYINFO* This,IEnumCATEGORYINFO **ppenum) { 393 return This->lpVtbl->Clone(This,ppenum); 394 } 395 #endif 396 #endif 397 398 #endif 399 400 HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Next_Proxy( 401 IEnumCATEGORYINFO* This, 402 ULONG celt, 403 CATEGORYINFO *rgelt, 404 ULONG *pceltFetched); 405 void __RPC_STUB IEnumCATEGORYINFO_Next_Stub( 406 IRpcStubBuffer* This, 407 IRpcChannelBuffer* pRpcChannelBuffer, 408 PRPC_MESSAGE pRpcMessage, 409 DWORD* pdwStubPhase); 410 HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Skip_Proxy( 411 IEnumCATEGORYINFO* This, 412 ULONG celt); 413 void __RPC_STUB IEnumCATEGORYINFO_Skip_Stub( 414 IRpcStubBuffer* This, 415 IRpcChannelBuffer* pRpcChannelBuffer, 416 PRPC_MESSAGE pRpcMessage, 417 DWORD* pdwStubPhase); 418 HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Reset_Proxy( 419 IEnumCATEGORYINFO* This); 420 void __RPC_STUB IEnumCATEGORYINFO_Reset_Stub( 421 IRpcStubBuffer* This, 422 IRpcChannelBuffer* pRpcChannelBuffer, 423 PRPC_MESSAGE pRpcMessage, 424 DWORD* pdwStubPhase); 425 HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Clone_Proxy( 426 IEnumCATEGORYINFO* This, 427 IEnumCATEGORYINFO **ppenum); 428 void __RPC_STUB IEnumCATEGORYINFO_Clone_Stub( 429 IRpcStubBuffer* This, 430 IRpcChannelBuffer* pRpcChannelBuffer, 431 PRPC_MESSAGE pRpcMessage, 432 DWORD* pdwStubPhase); 433 434 #endif /* __IEnumCATEGORYINFO_INTERFACE_DEFINED__ */ 435 436 #endif 437 438 #ifndef _LPCATREGISTER_DEFINED 439 #define _LPCATREGISTER_DEFINED 440 /***************************************************************************** 441 * ICatRegister interface 442 */ 443 #ifndef __ICatRegister_INTERFACE_DEFINED__ 444 #define __ICatRegister_INTERFACE_DEFINED__ 445 446 typedef ICatRegister *LPCATREGISTER; 447 448 DEFINE_GUID(IID_ICatRegister, 0x0002e012, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 449 #if defined(__cplusplus) && !defined(CINTERFACE) 450 MIDL_INTERFACE("0002e012-0000-0000-c000-000000000046") 451 ICatRegister : public IUnknown 452 { 453 virtual HRESULT STDMETHODCALLTYPE RegisterCategories( 454 ULONG cCategories, 455 CATEGORYINFO rgCategoryInfo[]) = 0; 456 457 virtual HRESULT STDMETHODCALLTYPE UnRegisterCategories( 458 ULONG cCategories, 459 CATID rgcatid[]) = 0; 460 461 virtual HRESULT STDMETHODCALLTYPE RegisterClassImplCategories( 462 REFCLSID rclsid, 463 ULONG cCategories, 464 CATID rgcatid[]) = 0; 465 466 virtual HRESULT STDMETHODCALLTYPE UnRegisterClassImplCategories( 467 REFCLSID rclsid, 468 ULONG cCategories, 469 CATID rgcatid[]) = 0; 470 471 virtual HRESULT STDMETHODCALLTYPE RegisterClassReqCategories( 472 REFCLSID rclsid, 473 ULONG cCategories, 474 CATID rgcatid[]) = 0; 475 476 virtual HRESULT STDMETHODCALLTYPE UnRegisterClassReqCategories( 477 REFCLSID rclsid, 478 ULONG cCategories, 479 CATID rgcatid[]) = 0; 480 481 }; 482 #ifdef __CRT_UUID_DECL 483 __CRT_UUID_DECL(ICatRegister, 0x0002e012, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 484 #endif 485 #else 486 typedef struct ICatRegisterVtbl { 487 BEGIN_INTERFACE 488 489 /*** IUnknown methods ***/ 490 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 491 ICatRegister* This, 492 REFIID riid, 493 void **ppvObject); 494 495 ULONG (STDMETHODCALLTYPE *AddRef)( 496 ICatRegister* This); 497 498 ULONG (STDMETHODCALLTYPE *Release)( 499 ICatRegister* This); 500 501 /*** ICatRegister methods ***/ 502 HRESULT (STDMETHODCALLTYPE *RegisterCategories)( 503 ICatRegister* This, 504 ULONG cCategories, 505 CATEGORYINFO rgCategoryInfo[]); 506 507 HRESULT (STDMETHODCALLTYPE *UnRegisterCategories)( 508 ICatRegister* This, 509 ULONG cCategories, 510 CATID rgcatid[]); 511 512 HRESULT (STDMETHODCALLTYPE *RegisterClassImplCategories)( 513 ICatRegister* This, 514 REFCLSID rclsid, 515 ULONG cCategories, 516 CATID rgcatid[]); 517 518 HRESULT (STDMETHODCALLTYPE *UnRegisterClassImplCategories)( 519 ICatRegister* This, 520 REFCLSID rclsid, 521 ULONG cCategories, 522 CATID rgcatid[]); 523 524 HRESULT (STDMETHODCALLTYPE *RegisterClassReqCategories)( 525 ICatRegister* This, 526 REFCLSID rclsid, 527 ULONG cCategories, 528 CATID rgcatid[]); 529 530 HRESULT (STDMETHODCALLTYPE *UnRegisterClassReqCategories)( 531 ICatRegister* This, 532 REFCLSID rclsid, 533 ULONG cCategories, 534 CATID rgcatid[]); 535 536 END_INTERFACE 537 } ICatRegisterVtbl; 538 interface ICatRegister { 539 CONST_VTBL ICatRegisterVtbl* lpVtbl; 540 }; 541 542 #ifdef COBJMACROS 543 #ifndef WIDL_C_INLINE_WRAPPERS 544 /*** IUnknown methods ***/ 545 #define ICatRegister_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 546 #define ICatRegister_AddRef(This) (This)->lpVtbl->AddRef(This) 547 #define ICatRegister_Release(This) (This)->lpVtbl->Release(This) 548 /*** ICatRegister methods ***/ 549 #define ICatRegister_RegisterCategories(This,cCategories,rgCategoryInfo) (This)->lpVtbl->RegisterCategories(This,cCategories,rgCategoryInfo) 550 #define ICatRegister_UnRegisterCategories(This,cCategories,rgcatid) (This)->lpVtbl->UnRegisterCategories(This,cCategories,rgcatid) 551 #define ICatRegister_RegisterClassImplCategories(This,rclsid,cCategories,rgcatid) (This)->lpVtbl->RegisterClassImplCategories(This,rclsid,cCategories,rgcatid) 552 #define ICatRegister_UnRegisterClassImplCategories(This,rclsid,cCategories,rgcatid) (This)->lpVtbl->UnRegisterClassImplCategories(This,rclsid,cCategories,rgcatid) 553 #define ICatRegister_RegisterClassReqCategories(This,rclsid,cCategories,rgcatid) (This)->lpVtbl->RegisterClassReqCategories(This,rclsid,cCategories,rgcatid) 554 #define ICatRegister_UnRegisterClassReqCategories(This,rclsid,cCategories,rgcatid) (This)->lpVtbl->UnRegisterClassReqCategories(This,rclsid,cCategories,rgcatid) 555 #else 556 /*** IUnknown methods ***/ 557 static FORCEINLINE HRESULT ICatRegister_QueryInterface(ICatRegister* This,REFIID riid,void **ppvObject) { 558 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 559 } 560 static FORCEINLINE ULONG ICatRegister_AddRef(ICatRegister* This) { 561 return This->lpVtbl->AddRef(This); 562 } 563 static FORCEINLINE ULONG ICatRegister_Release(ICatRegister* This) { 564 return This->lpVtbl->Release(This); 565 } 566 /*** ICatRegister methods ***/ 567 static FORCEINLINE HRESULT ICatRegister_RegisterCategories(ICatRegister* This,ULONG cCategories,CATEGORYINFO rgCategoryInfo[]) { 568 return This->lpVtbl->RegisterCategories(This,cCategories,rgCategoryInfo); 569 } 570 static FORCEINLINE HRESULT ICatRegister_UnRegisterCategories(ICatRegister* This,ULONG cCategories,CATID rgcatid[]) { 571 return This->lpVtbl->UnRegisterCategories(This,cCategories,rgcatid); 572 } 573 static FORCEINLINE HRESULT ICatRegister_RegisterClassImplCategories(ICatRegister* This,REFCLSID rclsid,ULONG cCategories,CATID rgcatid[]) { 574 return This->lpVtbl->RegisterClassImplCategories(This,rclsid,cCategories,rgcatid); 575 } 576 static FORCEINLINE HRESULT ICatRegister_UnRegisterClassImplCategories(ICatRegister* This,REFCLSID rclsid,ULONG cCategories,CATID rgcatid[]) { 577 return This->lpVtbl->UnRegisterClassImplCategories(This,rclsid,cCategories,rgcatid); 578 } 579 static FORCEINLINE HRESULT ICatRegister_RegisterClassReqCategories(ICatRegister* This,REFCLSID rclsid,ULONG cCategories,CATID rgcatid[]) { 580 return This->lpVtbl->RegisterClassReqCategories(This,rclsid,cCategories,rgcatid); 581 } 582 static FORCEINLINE HRESULT ICatRegister_UnRegisterClassReqCategories(ICatRegister* This,REFCLSID rclsid,ULONG cCategories,CATID rgcatid[]) { 583 return This->lpVtbl->UnRegisterClassReqCategories(This,rclsid,cCategories,rgcatid); 584 } 585 #endif 586 #endif 587 588 #endif 589 590 HRESULT STDMETHODCALLTYPE ICatRegister_RegisterCategories_Proxy( 591 ICatRegister* This, 592 ULONG cCategories, 593 CATEGORYINFO rgCategoryInfo[]); 594 void __RPC_STUB ICatRegister_RegisterCategories_Stub( 595 IRpcStubBuffer* This, 596 IRpcChannelBuffer* pRpcChannelBuffer, 597 PRPC_MESSAGE pRpcMessage, 598 DWORD* pdwStubPhase); 599 HRESULT STDMETHODCALLTYPE ICatRegister_UnRegisterCategories_Proxy( 600 ICatRegister* This, 601 ULONG cCategories, 602 CATID rgcatid[]); 603 void __RPC_STUB ICatRegister_UnRegisterCategories_Stub( 604 IRpcStubBuffer* This, 605 IRpcChannelBuffer* pRpcChannelBuffer, 606 PRPC_MESSAGE pRpcMessage, 607 DWORD* pdwStubPhase); 608 HRESULT STDMETHODCALLTYPE ICatRegister_RegisterClassImplCategories_Proxy( 609 ICatRegister* This, 610 REFCLSID rclsid, 611 ULONG cCategories, 612 CATID rgcatid[]); 613 void __RPC_STUB ICatRegister_RegisterClassImplCategories_Stub( 614 IRpcStubBuffer* This, 615 IRpcChannelBuffer* pRpcChannelBuffer, 616 PRPC_MESSAGE pRpcMessage, 617 DWORD* pdwStubPhase); 618 HRESULT STDMETHODCALLTYPE ICatRegister_UnRegisterClassImplCategories_Proxy( 619 ICatRegister* This, 620 REFCLSID rclsid, 621 ULONG cCategories, 622 CATID rgcatid[]); 623 void __RPC_STUB ICatRegister_UnRegisterClassImplCategories_Stub( 624 IRpcStubBuffer* This, 625 IRpcChannelBuffer* pRpcChannelBuffer, 626 PRPC_MESSAGE pRpcMessage, 627 DWORD* pdwStubPhase); 628 HRESULT STDMETHODCALLTYPE ICatRegister_RegisterClassReqCategories_Proxy( 629 ICatRegister* This, 630 REFCLSID rclsid, 631 ULONG cCategories, 632 CATID rgcatid[]); 633 void __RPC_STUB ICatRegister_RegisterClassReqCategories_Stub( 634 IRpcStubBuffer* This, 635 IRpcChannelBuffer* pRpcChannelBuffer, 636 PRPC_MESSAGE pRpcMessage, 637 DWORD* pdwStubPhase); 638 HRESULT STDMETHODCALLTYPE ICatRegister_UnRegisterClassReqCategories_Proxy( 639 ICatRegister* This, 640 REFCLSID rclsid, 641 ULONG cCategories, 642 CATID rgcatid[]); 643 void __RPC_STUB ICatRegister_UnRegisterClassReqCategories_Stub( 644 IRpcStubBuffer* This, 645 IRpcChannelBuffer* pRpcChannelBuffer, 646 PRPC_MESSAGE pRpcMessage, 647 DWORD* pdwStubPhase); 648 649 #endif /* __ICatRegister_INTERFACE_DEFINED__ */ 650 651 #endif 652 653 #ifndef _LPCATINFORMATION_DEFINED 654 #define _LPCATINFORMATION_DEFINED 655 /***************************************************************************** 656 * ICatInformation interface 657 */ 658 #ifndef __ICatInformation_INTERFACE_DEFINED__ 659 #define __ICatInformation_INTERFACE_DEFINED__ 660 661 typedef ICatInformation *LPCATINFORMATION; 662 663 DEFINE_GUID(IID_ICatInformation, 0x0002e013, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 664 #if defined(__cplusplus) && !defined(CINTERFACE) 665 MIDL_INTERFACE("0002e013-0000-0000-c000-000000000046") 666 ICatInformation : public IUnknown 667 { 668 virtual HRESULT STDMETHODCALLTYPE EnumCategories( 669 LCID lcid, 670 IEnumCATEGORYINFO **ppenumCategoryInfo) = 0; 671 672 virtual HRESULT STDMETHODCALLTYPE GetCategoryDesc( 673 REFCATID rcatid, 674 LCID lcid, 675 LPWSTR *pszDesc) = 0; 676 677 virtual HRESULT STDMETHODCALLTYPE EnumClassesOfCategories( 678 ULONG cImplemented, 679 const CATID rgcatidImpl[], 680 ULONG cRequired, 681 const CATID rgcatidReq[], 682 IEnumGUID **ppenumClsid) = 0; 683 684 virtual HRESULT STDMETHODCALLTYPE IsClassOfCategories( 685 REFCLSID rclsid, 686 ULONG cImplemented, 687 const CATID rgcatidImpl[], 688 ULONG cRequired, 689 const CATID rgcatidReq[]) = 0; 690 691 virtual HRESULT STDMETHODCALLTYPE EnumImplCategoriesOfClass( 692 REFCLSID rclsid, 693 IEnumGUID **ppenumCatid) = 0; 694 695 virtual HRESULT STDMETHODCALLTYPE EnumReqCategoriesOfClass( 696 REFCLSID rclsid, 697 IEnumGUID **ppenumCatid) = 0; 698 699 }; 700 #ifdef __CRT_UUID_DECL 701 __CRT_UUID_DECL(ICatInformation, 0x0002e013, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 702 #endif 703 #else 704 typedef struct ICatInformationVtbl { 705 BEGIN_INTERFACE 706 707 /*** IUnknown methods ***/ 708 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 709 ICatInformation* This, 710 REFIID riid, 711 void **ppvObject); 712 713 ULONG (STDMETHODCALLTYPE *AddRef)( 714 ICatInformation* This); 715 716 ULONG (STDMETHODCALLTYPE *Release)( 717 ICatInformation* This); 718 719 /*** ICatInformation methods ***/ 720 HRESULT (STDMETHODCALLTYPE *EnumCategories)( 721 ICatInformation* This, 722 LCID lcid, 723 IEnumCATEGORYINFO **ppenumCategoryInfo); 724 725 HRESULT (STDMETHODCALLTYPE *GetCategoryDesc)( 726 ICatInformation* This, 727 REFCATID rcatid, 728 LCID lcid, 729 LPWSTR *pszDesc); 730 731 HRESULT (STDMETHODCALLTYPE *EnumClassesOfCategories)( 732 ICatInformation* This, 733 ULONG cImplemented, 734 const CATID rgcatidImpl[], 735 ULONG cRequired, 736 const CATID rgcatidReq[], 737 IEnumGUID **ppenumClsid); 738 739 HRESULT (STDMETHODCALLTYPE *IsClassOfCategories)( 740 ICatInformation* This, 741 REFCLSID rclsid, 742 ULONG cImplemented, 743 const CATID rgcatidImpl[], 744 ULONG cRequired, 745 const CATID rgcatidReq[]); 746 747 HRESULT (STDMETHODCALLTYPE *EnumImplCategoriesOfClass)( 748 ICatInformation* This, 749 REFCLSID rclsid, 750 IEnumGUID **ppenumCatid); 751 752 HRESULT (STDMETHODCALLTYPE *EnumReqCategoriesOfClass)( 753 ICatInformation* This, 754 REFCLSID rclsid, 755 IEnumGUID **ppenumCatid); 756 757 END_INTERFACE 758 } ICatInformationVtbl; 759 interface ICatInformation { 760 CONST_VTBL ICatInformationVtbl* lpVtbl; 761 }; 762 763 #ifdef COBJMACROS 764 #ifndef WIDL_C_INLINE_WRAPPERS 765 /*** IUnknown methods ***/ 766 #define ICatInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 767 #define ICatInformation_AddRef(This) (This)->lpVtbl->AddRef(This) 768 #define ICatInformation_Release(This) (This)->lpVtbl->Release(This) 769 /*** ICatInformation methods ***/ 770 #define ICatInformation_EnumCategories(This,lcid,ppenumCategoryInfo) (This)->lpVtbl->EnumCategories(This,lcid,ppenumCategoryInfo) 771 #define ICatInformation_GetCategoryDesc(This,rcatid,lcid,pszDesc) (This)->lpVtbl->GetCategoryDesc(This,rcatid,lcid,pszDesc) 772 #define ICatInformation_EnumClassesOfCategories(This,cImplemented,rgcatidImpl,cRequired,rgcatidReq,ppenumClsid) (This)->lpVtbl->EnumClassesOfCategories(This,cImplemented,rgcatidImpl,cRequired,rgcatidReq,ppenumClsid) 773 #define ICatInformation_IsClassOfCategories(This,rclsid,cImplemented,rgcatidImpl,cRequired,rgcatidReq) (This)->lpVtbl->IsClassOfCategories(This,rclsid,cImplemented,rgcatidImpl,cRequired,rgcatidReq) 774 #define ICatInformation_EnumImplCategoriesOfClass(This,rclsid,ppenumCatid) (This)->lpVtbl->EnumImplCategoriesOfClass(This,rclsid,ppenumCatid) 775 #define ICatInformation_EnumReqCategoriesOfClass(This,rclsid,ppenumCatid) (This)->lpVtbl->EnumReqCategoriesOfClass(This,rclsid,ppenumCatid) 776 #else 777 /*** IUnknown methods ***/ 778 static FORCEINLINE HRESULT ICatInformation_QueryInterface(ICatInformation* This,REFIID riid,void **ppvObject) { 779 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 780 } 781 static FORCEINLINE ULONG ICatInformation_AddRef(ICatInformation* This) { 782 return This->lpVtbl->AddRef(This); 783 } 784 static FORCEINLINE ULONG ICatInformation_Release(ICatInformation* This) { 785 return This->lpVtbl->Release(This); 786 } 787 /*** ICatInformation methods ***/ 788 static FORCEINLINE HRESULT ICatInformation_EnumCategories(ICatInformation* This,LCID lcid,IEnumCATEGORYINFO **ppenumCategoryInfo) { 789 return This->lpVtbl->EnumCategories(This,lcid,ppenumCategoryInfo); 790 } 791 static FORCEINLINE HRESULT ICatInformation_GetCategoryDesc(ICatInformation* This,REFCATID rcatid,LCID lcid,LPWSTR *pszDesc) { 792 return This->lpVtbl->GetCategoryDesc(This,rcatid,lcid,pszDesc); 793 } 794 static FORCEINLINE HRESULT ICatInformation_EnumClassesOfCategories(ICatInformation* This,ULONG cImplemented,const CATID rgcatidImpl[],ULONG cRequired,const CATID rgcatidReq[],IEnumGUID **ppenumClsid) { 795 return This->lpVtbl->EnumClassesOfCategories(This,cImplemented,rgcatidImpl,cRequired,rgcatidReq,ppenumClsid); 796 } 797 static FORCEINLINE HRESULT ICatInformation_IsClassOfCategories(ICatInformation* This,REFCLSID rclsid,ULONG cImplemented,const CATID rgcatidImpl[],ULONG cRequired,const CATID rgcatidReq[]) { 798 return This->lpVtbl->IsClassOfCategories(This,rclsid,cImplemented,rgcatidImpl,cRequired,rgcatidReq); 799 } 800 static FORCEINLINE HRESULT ICatInformation_EnumImplCategoriesOfClass(ICatInformation* This,REFCLSID rclsid,IEnumGUID **ppenumCatid) { 801 return This->lpVtbl->EnumImplCategoriesOfClass(This,rclsid,ppenumCatid); 802 } 803 static FORCEINLINE HRESULT ICatInformation_EnumReqCategoriesOfClass(ICatInformation* This,REFCLSID rclsid,IEnumGUID **ppenumCatid) { 804 return This->lpVtbl->EnumReqCategoriesOfClass(This,rclsid,ppenumCatid); 805 } 806 #endif 807 #endif 808 809 #endif 810 811 HRESULT STDMETHODCALLTYPE ICatInformation_EnumCategories_Proxy( 812 ICatInformation* This, 813 LCID lcid, 814 IEnumCATEGORYINFO **ppenumCategoryInfo); 815 void __RPC_STUB ICatInformation_EnumCategories_Stub( 816 IRpcStubBuffer* This, 817 IRpcChannelBuffer* pRpcChannelBuffer, 818 PRPC_MESSAGE pRpcMessage, 819 DWORD* pdwStubPhase); 820 HRESULT STDMETHODCALLTYPE ICatInformation_GetCategoryDesc_Proxy( 821 ICatInformation* This, 822 REFCATID rcatid, 823 LCID lcid, 824 LPWSTR *pszDesc); 825 void __RPC_STUB ICatInformation_GetCategoryDesc_Stub( 826 IRpcStubBuffer* This, 827 IRpcChannelBuffer* pRpcChannelBuffer, 828 PRPC_MESSAGE pRpcMessage, 829 DWORD* pdwStubPhase); 830 HRESULT STDMETHODCALLTYPE ICatInformation_RemoteEnumClassesOfCategories_Proxy( 831 ICatInformation* This, 832 ULONG cImplemented, 833 const CATID rgcatidImpl[], 834 ULONG cRequired, 835 const CATID rgcatidReq[], 836 IEnumGUID **ppenumClsid); 837 void __RPC_STUB ICatInformation_RemoteEnumClassesOfCategories_Stub( 838 IRpcStubBuffer* This, 839 IRpcChannelBuffer* pRpcChannelBuffer, 840 PRPC_MESSAGE pRpcMessage, 841 DWORD* pdwStubPhase); 842 HRESULT STDMETHODCALLTYPE ICatInformation_RemoteIsClassOfCategories_Proxy( 843 ICatInformation* This, 844 REFCLSID rclsid, 845 ULONG cImplemented, 846 const CATID rgcatidImpl[], 847 ULONG cRequired, 848 const CATID rgcatidReq[]); 849 void __RPC_STUB ICatInformation_RemoteIsClassOfCategories_Stub( 850 IRpcStubBuffer* This, 851 IRpcChannelBuffer* pRpcChannelBuffer, 852 PRPC_MESSAGE pRpcMessage, 853 DWORD* pdwStubPhase); 854 HRESULT STDMETHODCALLTYPE ICatInformation_EnumImplCategoriesOfClass_Proxy( 855 ICatInformation* This, 856 REFCLSID rclsid, 857 IEnumGUID **ppenumCatid); 858 void __RPC_STUB ICatInformation_EnumImplCategoriesOfClass_Stub( 859 IRpcStubBuffer* This, 860 IRpcChannelBuffer* pRpcChannelBuffer, 861 PRPC_MESSAGE pRpcMessage, 862 DWORD* pdwStubPhase); 863 HRESULT STDMETHODCALLTYPE ICatInformation_EnumReqCategoriesOfClass_Proxy( 864 ICatInformation* This, 865 REFCLSID rclsid, 866 IEnumGUID **ppenumCatid); 867 void __RPC_STUB ICatInformation_EnumReqCategoriesOfClass_Stub( 868 IRpcStubBuffer* This, 869 IRpcChannelBuffer* pRpcChannelBuffer, 870 PRPC_MESSAGE pRpcMessage, 871 DWORD* pdwStubPhase); 872 HRESULT CALLBACK ICatInformation_EnumClassesOfCategories_Proxy( 873 ICatInformation* This, 874 ULONG cImplemented, 875 const CATID rgcatidImpl[], 876 ULONG cRequired, 877 const CATID rgcatidReq[], 878 IEnumGUID **ppenumClsid); 879 HRESULT __RPC_STUB ICatInformation_EnumClassesOfCategories_Stub( 880 ICatInformation* This, 881 ULONG cImplemented, 882 const CATID rgcatidImpl[], 883 ULONG cRequired, 884 const CATID rgcatidReq[], 885 IEnumGUID **ppenumClsid); 886 HRESULT CALLBACK ICatInformation_IsClassOfCategories_Proxy( 887 ICatInformation* This, 888 REFCLSID rclsid, 889 ULONG cImplemented, 890 const CATID rgcatidImpl[], 891 ULONG cRequired, 892 const CATID rgcatidReq[]); 893 HRESULT __RPC_STUB ICatInformation_IsClassOfCategories_Stub( 894 ICatInformation* This, 895 REFCLSID rclsid, 896 ULONG cImplemented, 897 const CATID rgcatidImpl[], 898 ULONG cRequired, 899 const CATID rgcatidReq[]); 900 901 #endif /* __ICatInformation_INTERFACE_DEFINED__ */ 902 903 #endif 904 #endif 905 /* Begin additional prototypes for all interfaces */ 906 907 908 /* End additional prototypes */ 909 910 #ifdef __cplusplus 911 } 912 #endif 913 914 #endif /* __comcat_h__ */ 915