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