PortAudio 2.0
|
00001 00002 00003 /* this ALWAYS GENERATED file contains the definitions for the interfaces */ 00004 00005 00006 /* File created by MIDL compiler version 7.00.0499 */ 00007 /* Compiler settings for propsys.idl: 00008 Oicf, W1, Zp8, env=Win32 (32b run) 00009 protocol : dce , ms_ext, c_ext, robust 00010 error checks: allocation ref bounds_check enum stub_data 00011 VC __declspec() decoration level: 00012 __declspec(uuid()), __declspec(selectany), __declspec(novtable) 00013 DECLSPEC_UUID(), MIDL_INTERFACE() 00014 */ 00015 //@@MIDL_FILE_HEADING( ) 00016 00017 #pragma warning( disable: 4049 ) /* more than 64k source lines */ 00018 00019 00020 /* verify that the <rpcndr.h> version is high enough to compile this file*/ 00021 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 00022 #define __REQUIRED_RPCNDR_H_VERSION__ 475 00023 #endif 00024 00025 /* verify that the <rpcsal.h> version is high enough to compile this file*/ 00026 #ifndef __REQUIRED_RPCSAL_H_VERSION__ 00027 #define __REQUIRED_RPCSAL_H_VERSION__ 100 00028 #endif 00029 00030 #include "rpc.h" 00031 #include "rpcndr.h" 00032 00033 #ifndef __RPCNDR_H_VERSION__ 00034 #error this stub requires an updated version of <rpcndr.h> 00035 #endif // __RPCNDR_H_VERSION__ 00036 00037 #ifndef COM_NO_WINDOWS_H 00038 #include "windows.h" 00039 #include "ole2.h" 00040 #endif /*COM_NO_WINDOWS_H*/ 00041 00042 #ifndef __propsys_h__ 00043 #define __propsys_h__ 00044 00045 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 00046 #pragma once 00047 #endif 00048 00049 /* Forward Declarations */ 00050 00051 #ifndef __IInitializeWithFile_FWD_DEFINED__ 00052 #define __IInitializeWithFile_FWD_DEFINED__ 00053 typedef interface IInitializeWithFile IInitializeWithFile; 00054 #endif /* __IInitializeWithFile_FWD_DEFINED__ */ 00055 00056 00057 #ifndef __IInitializeWithStream_FWD_DEFINED__ 00058 #define __IInitializeWithStream_FWD_DEFINED__ 00059 typedef interface IInitializeWithStream IInitializeWithStream; 00060 #endif /* __IInitializeWithStream_FWD_DEFINED__ */ 00061 00062 00063 #ifndef __IPropertyStore_FWD_DEFINED__ 00064 #define __IPropertyStore_FWD_DEFINED__ 00065 typedef interface IPropertyStore IPropertyStore; 00066 #endif /* __IPropertyStore_FWD_DEFINED__ */ 00067 00068 00069 #ifndef __INamedPropertyStore_FWD_DEFINED__ 00070 #define __INamedPropertyStore_FWD_DEFINED__ 00071 typedef interface INamedPropertyStore INamedPropertyStore; 00072 #endif /* __INamedPropertyStore_FWD_DEFINED__ */ 00073 00074 00075 #ifndef __IObjectWithPropertyKey_FWD_DEFINED__ 00076 #define __IObjectWithPropertyKey_FWD_DEFINED__ 00077 typedef interface IObjectWithPropertyKey IObjectWithPropertyKey; 00078 #endif /* __IObjectWithPropertyKey_FWD_DEFINED__ */ 00079 00080 00081 #ifndef __IPropertyChange_FWD_DEFINED__ 00082 #define __IPropertyChange_FWD_DEFINED__ 00083 typedef interface IPropertyChange IPropertyChange; 00084 #endif /* __IPropertyChange_FWD_DEFINED__ */ 00085 00086 00087 #ifndef __IPropertyChangeArray_FWD_DEFINED__ 00088 #define __IPropertyChangeArray_FWD_DEFINED__ 00089 typedef interface IPropertyChangeArray IPropertyChangeArray; 00090 #endif /* __IPropertyChangeArray_FWD_DEFINED__ */ 00091 00092 00093 #ifndef __IPropertyStoreCapabilities_FWD_DEFINED__ 00094 #define __IPropertyStoreCapabilities_FWD_DEFINED__ 00095 typedef interface IPropertyStoreCapabilities IPropertyStoreCapabilities; 00096 #endif /* __IPropertyStoreCapabilities_FWD_DEFINED__ */ 00097 00098 00099 #ifndef __IPropertyStoreCache_FWD_DEFINED__ 00100 #define __IPropertyStoreCache_FWD_DEFINED__ 00101 typedef interface IPropertyStoreCache IPropertyStoreCache; 00102 #endif /* __IPropertyStoreCache_FWD_DEFINED__ */ 00103 00104 00105 #ifndef __IPropertyEnumType_FWD_DEFINED__ 00106 #define __IPropertyEnumType_FWD_DEFINED__ 00107 typedef interface IPropertyEnumType IPropertyEnumType; 00108 #endif /* __IPropertyEnumType_FWD_DEFINED__ */ 00109 00110 00111 #ifndef __IPropertyEnumTypeList_FWD_DEFINED__ 00112 #define __IPropertyEnumTypeList_FWD_DEFINED__ 00113 typedef interface IPropertyEnumTypeList IPropertyEnumTypeList; 00114 #endif /* __IPropertyEnumTypeList_FWD_DEFINED__ */ 00115 00116 00117 #ifndef __IPropertyDescription_FWD_DEFINED__ 00118 #define __IPropertyDescription_FWD_DEFINED__ 00119 typedef interface IPropertyDescription IPropertyDescription; 00120 #endif /* __IPropertyDescription_FWD_DEFINED__ */ 00121 00122 00123 #ifndef __IPropertyDescriptionAliasInfo_FWD_DEFINED__ 00124 #define __IPropertyDescriptionAliasInfo_FWD_DEFINED__ 00125 typedef interface IPropertyDescriptionAliasInfo IPropertyDescriptionAliasInfo; 00126 #endif /* __IPropertyDescriptionAliasInfo_FWD_DEFINED__ */ 00127 00128 00129 #ifndef __IPropertyDescriptionSearchInfo_FWD_DEFINED__ 00130 #define __IPropertyDescriptionSearchInfo_FWD_DEFINED__ 00131 typedef interface IPropertyDescriptionSearchInfo IPropertyDescriptionSearchInfo; 00132 #endif /* __IPropertyDescriptionSearchInfo_FWD_DEFINED__ */ 00133 00134 00135 #ifndef __IPropertySystem_FWD_DEFINED__ 00136 #define __IPropertySystem_FWD_DEFINED__ 00137 typedef interface IPropertySystem IPropertySystem; 00138 #endif /* __IPropertySystem_FWD_DEFINED__ */ 00139 00140 00141 #ifndef __IPropertyDescriptionList_FWD_DEFINED__ 00142 #define __IPropertyDescriptionList_FWD_DEFINED__ 00143 typedef interface IPropertyDescriptionList IPropertyDescriptionList; 00144 #endif /* __IPropertyDescriptionList_FWD_DEFINED__ */ 00145 00146 00147 #ifndef __IPropertyStoreFactory_FWD_DEFINED__ 00148 #define __IPropertyStoreFactory_FWD_DEFINED__ 00149 typedef interface IPropertyStoreFactory IPropertyStoreFactory; 00150 #endif /* __IPropertyStoreFactory_FWD_DEFINED__ */ 00151 00152 00153 #ifndef __IDelayedPropertyStoreFactory_FWD_DEFINED__ 00154 #define __IDelayedPropertyStoreFactory_FWD_DEFINED__ 00155 typedef interface IDelayedPropertyStoreFactory IDelayedPropertyStoreFactory; 00156 #endif /* __IDelayedPropertyStoreFactory_FWD_DEFINED__ */ 00157 00158 00159 #ifndef __IPersistSerializedPropStorage_FWD_DEFINED__ 00160 #define __IPersistSerializedPropStorage_FWD_DEFINED__ 00161 typedef interface IPersistSerializedPropStorage IPersistSerializedPropStorage; 00162 #endif /* __IPersistSerializedPropStorage_FWD_DEFINED__ */ 00163 00164 00165 #ifndef __IPropertySystemChangeNotify_FWD_DEFINED__ 00166 #define __IPropertySystemChangeNotify_FWD_DEFINED__ 00167 typedef interface IPropertySystemChangeNotify IPropertySystemChangeNotify; 00168 #endif /* __IPropertySystemChangeNotify_FWD_DEFINED__ */ 00169 00170 00171 #ifndef __ICreateObject_FWD_DEFINED__ 00172 #define __ICreateObject_FWD_DEFINED__ 00173 typedef interface ICreateObject ICreateObject; 00174 #endif /* __ICreateObject_FWD_DEFINED__ */ 00175 00176 00177 #ifndef __InMemoryPropertyStore_FWD_DEFINED__ 00178 #define __InMemoryPropertyStore_FWD_DEFINED__ 00179 00180 #ifdef __cplusplus 00181 typedef class InMemoryPropertyStore InMemoryPropertyStore; 00182 #else 00183 typedef struct InMemoryPropertyStore InMemoryPropertyStore; 00184 #endif /* __cplusplus */ 00185 00186 #endif /* __InMemoryPropertyStore_FWD_DEFINED__ */ 00187 00188 00189 #ifndef __PropertySystem_FWD_DEFINED__ 00190 #define __PropertySystem_FWD_DEFINED__ 00191 00192 #ifdef __cplusplus 00193 typedef class PropertySystem PropertySystem; 00194 #else 00195 typedef struct PropertySystem PropertySystem; 00196 #endif /* __cplusplus */ 00197 00198 #endif /* __PropertySystem_FWD_DEFINED__ */ 00199 00200 00201 /* header files for imported files */ 00202 #include "objidl.h" 00203 #include "oleidl.h" 00204 #include "ocidl.h" 00205 #include "shtypes.h" 00206 #include "structuredquery.h" 00207 00208 #ifdef __cplusplus 00209 extern "C"{ 00210 #endif 00211 00212 00213 /* interface __MIDL_itf_propsys_0000_0000 */ 00214 /* [local] */ 00215 00216 #ifndef PSSTDAPI 00217 #if defined(_PROPSYS_) 00218 #define PSSTDAPI STDAPI 00219 #define PSSTDAPI_(type) STDAPI_(type) 00220 #else 00221 #define PSSTDAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE 00222 #define PSSTDAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE 00223 #endif 00224 #endif // PSSTDAPI 00225 #if 0 00226 typedef PROPERTYKEY *REFPROPERTYKEY; 00227 00228 #endif // 0 00229 #include <propkeydef.h> 00230 00231 00232 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0000_v0_0_c_ifspec; 00233 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0000_v0_0_s_ifspec; 00234 00235 #ifndef __IInitializeWithFile_INTERFACE_DEFINED__ 00236 #define __IInitializeWithFile_INTERFACE_DEFINED__ 00237 00238 /* interface IInitializeWithFile */ 00239 /* [unique][object][uuid] */ 00240 00241 00242 EXTERN_C const IID IID_IInitializeWithFile; 00243 00244 #if defined(__cplusplus) && !defined(CINTERFACE) 00245 00246 MIDL_INTERFACE("b7d14566-0509-4cce-a71f-0a554233bd9b") 00247 IInitializeWithFile : public IUnknown 00248 { 00249 public: 00250 virtual HRESULT STDMETHODCALLTYPE Initialize( 00251 /* [string][in] */ __RPC__in LPCWSTR pszFilePath, 00252 /* [in] */ DWORD grfMode) = 0; 00253 00254 }; 00255 00256 #else /* C style interface */ 00257 00258 typedef struct IInitializeWithFileVtbl 00259 { 00260 BEGIN_INTERFACE 00261 00262 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00263 IInitializeWithFile * This, 00264 /* [in] */ __RPC__in REFIID riid, 00265 /* [iid_is][out] */ 00266 __RPC__deref_out void **ppvObject); 00267 00268 ULONG ( STDMETHODCALLTYPE *AddRef )( 00269 IInitializeWithFile * This); 00270 00271 ULONG ( STDMETHODCALLTYPE *Release )( 00272 IInitializeWithFile * This); 00273 00274 HRESULT ( STDMETHODCALLTYPE *Initialize )( 00275 IInitializeWithFile * This, 00276 /* [string][in] */ __RPC__in LPCWSTR pszFilePath, 00277 /* [in] */ DWORD grfMode); 00278 00279 END_INTERFACE 00280 } IInitializeWithFileVtbl; 00281 00282 interface IInitializeWithFile 00283 { 00284 CONST_VTBL struct IInitializeWithFileVtbl *lpVtbl; 00285 }; 00286 00287 00288 00289 #ifdef COBJMACROS 00290 00291 00292 #define IInitializeWithFile_QueryInterface(This,riid,ppvObject) \ 00293 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00294 00295 #define IInitializeWithFile_AddRef(This) \ 00296 ( (This)->lpVtbl -> AddRef(This) ) 00297 00298 #define IInitializeWithFile_Release(This) \ 00299 ( (This)->lpVtbl -> Release(This) ) 00300 00301 00302 #define IInitializeWithFile_Initialize(This,pszFilePath,grfMode) \ 00303 ( (This)->lpVtbl -> Initialize(This,pszFilePath,grfMode) ) 00304 00305 #endif /* COBJMACROS */ 00306 00307 00308 #endif /* C style interface */ 00309 00310 00311 00312 00313 #endif /* __IInitializeWithFile_INTERFACE_DEFINED__ */ 00314 00315 00316 #ifndef __IInitializeWithStream_INTERFACE_DEFINED__ 00317 #define __IInitializeWithStream_INTERFACE_DEFINED__ 00318 00319 /* interface IInitializeWithStream */ 00320 /* [unique][object][uuid] */ 00321 00322 00323 EXTERN_C const IID IID_IInitializeWithStream; 00324 00325 #if defined(__cplusplus) && !defined(CINTERFACE) 00326 00327 MIDL_INTERFACE("b824b49d-22ac-4161-ac8a-9916e8fa3f7f") 00328 IInitializeWithStream : public IUnknown 00329 { 00330 public: 00331 virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize( 00332 /* [in] */ IStream *pstream, 00333 /* [in] */ DWORD grfMode) = 0; 00334 00335 }; 00336 00337 #else /* C style interface */ 00338 00339 typedef struct IInitializeWithStreamVtbl 00340 { 00341 BEGIN_INTERFACE 00342 00343 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00344 IInitializeWithStream * This, 00345 /* [in] */ __RPC__in REFIID riid, 00346 /* [iid_is][out] */ 00347 __RPC__deref_out void **ppvObject); 00348 00349 ULONG ( STDMETHODCALLTYPE *AddRef )( 00350 IInitializeWithStream * This); 00351 00352 ULONG ( STDMETHODCALLTYPE *Release )( 00353 IInitializeWithStream * This); 00354 00355 /* [local] */ HRESULT ( STDMETHODCALLTYPE *Initialize )( 00356 IInitializeWithStream * This, 00357 /* [in] */ IStream *pstream, 00358 /* [in] */ DWORD grfMode); 00359 00360 END_INTERFACE 00361 } IInitializeWithStreamVtbl; 00362 00363 interface IInitializeWithStream 00364 { 00365 CONST_VTBL struct IInitializeWithStreamVtbl *lpVtbl; 00366 }; 00367 00368 00369 00370 #ifdef COBJMACROS 00371 00372 00373 #define IInitializeWithStream_QueryInterface(This,riid,ppvObject) \ 00374 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00375 00376 #define IInitializeWithStream_AddRef(This) \ 00377 ( (This)->lpVtbl -> AddRef(This) ) 00378 00379 #define IInitializeWithStream_Release(This) \ 00380 ( (This)->lpVtbl -> Release(This) ) 00381 00382 00383 #define IInitializeWithStream_Initialize(This,pstream,grfMode) \ 00384 ( (This)->lpVtbl -> Initialize(This,pstream,grfMode) ) 00385 00386 #endif /* COBJMACROS */ 00387 00388 00389 #endif /* C style interface */ 00390 00391 00392 00393 /* [call_as] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_RemoteInitialize_Proxy( 00394 IInitializeWithStream * This, 00395 /* [in] */ __RPC__in_opt IStream *pstream, 00396 /* [in] */ DWORD grfMode); 00397 00398 00399 void __RPC_STUB IInitializeWithStream_RemoteInitialize_Stub( 00400 IRpcStubBuffer *This, 00401 IRpcChannelBuffer *_pRpcChannelBuffer, 00402 PRPC_MESSAGE _pRpcMessage, 00403 DWORD *_pdwStubPhase); 00404 00405 00406 00407 #endif /* __IInitializeWithStream_INTERFACE_DEFINED__ */ 00408 00409 00410 #ifndef __IPropertyStore_INTERFACE_DEFINED__ 00411 #define __IPropertyStore_INTERFACE_DEFINED__ 00412 00413 /* interface IPropertyStore */ 00414 /* [unique][object][helpstring][uuid] */ 00415 00416 00417 EXTERN_C const IID IID_IPropertyStore; 00418 00419 #if defined(__cplusplus) && !defined(CINTERFACE) 00420 00421 MIDL_INTERFACE("886d8eeb-8cf2-4446-8d02-cdba1dbdcf99") 00422 IPropertyStore : public IUnknown 00423 { 00424 public: 00425 virtual HRESULT STDMETHODCALLTYPE GetCount( 00426 /* [out] */ __RPC__out DWORD *cProps) = 0; 00427 00428 virtual HRESULT STDMETHODCALLTYPE GetAt( 00429 /* [in] */ DWORD iProp, 00430 /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0; 00431 00432 virtual HRESULT STDMETHODCALLTYPE GetValue( 00433 /* [in] */ __RPC__in REFPROPERTYKEY key, 00434 /* [out] */ __RPC__out PROPVARIANT *pv) = 0; 00435 00436 virtual HRESULT STDMETHODCALLTYPE SetValue( 00437 /* [in] */ __RPC__in REFPROPERTYKEY key, 00438 /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0; 00439 00440 virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0; 00441 00442 }; 00443 00444 #else /* C style interface */ 00445 00446 typedef struct IPropertyStoreVtbl 00447 { 00448 BEGIN_INTERFACE 00449 00450 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00451 IPropertyStore * This, 00452 /* [in] */ __RPC__in REFIID riid, 00453 /* [iid_is][out] */ 00454 __RPC__deref_out void **ppvObject); 00455 00456 ULONG ( STDMETHODCALLTYPE *AddRef )( 00457 IPropertyStore * This); 00458 00459 ULONG ( STDMETHODCALLTYPE *Release )( 00460 IPropertyStore * This); 00461 00462 HRESULT ( STDMETHODCALLTYPE *GetCount )( 00463 IPropertyStore * This, 00464 /* [out] */ __RPC__out DWORD *cProps); 00465 00466 HRESULT ( STDMETHODCALLTYPE *GetAt )( 00467 IPropertyStore * This, 00468 /* [in] */ DWORD iProp, 00469 /* [out] */ __RPC__out PROPERTYKEY *pkey); 00470 00471 HRESULT ( STDMETHODCALLTYPE *GetValue )( 00472 IPropertyStore * This, 00473 /* [in] */ __RPC__in REFPROPERTYKEY key, 00474 /* [out] */ __RPC__out PROPVARIANT *pv); 00475 00476 HRESULT ( STDMETHODCALLTYPE *SetValue )( 00477 IPropertyStore * This, 00478 /* [in] */ __RPC__in REFPROPERTYKEY key, 00479 /* [in] */ __RPC__in REFPROPVARIANT propvar); 00480 00481 HRESULT ( STDMETHODCALLTYPE *Commit )( 00482 IPropertyStore * This); 00483 00484 END_INTERFACE 00485 } IPropertyStoreVtbl; 00486 00487 interface IPropertyStore 00488 { 00489 CONST_VTBL struct IPropertyStoreVtbl *lpVtbl; 00490 }; 00491 00492 00493 00494 #ifdef COBJMACROS 00495 00496 00497 #define IPropertyStore_QueryInterface(This,riid,ppvObject) \ 00498 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00499 00500 #define IPropertyStore_AddRef(This) \ 00501 ( (This)->lpVtbl -> AddRef(This) ) 00502 00503 #define IPropertyStore_Release(This) \ 00504 ( (This)->lpVtbl -> Release(This) ) 00505 00506 00507 #define IPropertyStore_GetCount(This,cProps) \ 00508 ( (This)->lpVtbl -> GetCount(This,cProps) ) 00509 00510 #define IPropertyStore_GetAt(This,iProp,pkey) \ 00511 ( (This)->lpVtbl -> GetAt(This,iProp,pkey) ) 00512 00513 #define IPropertyStore_GetValue(This,key,pv) \ 00514 ( (This)->lpVtbl -> GetValue(This,key,pv) ) 00515 00516 #define IPropertyStore_SetValue(This,key,propvar) \ 00517 ( (This)->lpVtbl -> SetValue(This,key,propvar) ) 00518 00519 #define IPropertyStore_Commit(This) \ 00520 ( (This)->lpVtbl -> Commit(This) ) 00521 00522 #endif /* COBJMACROS */ 00523 00524 00525 #endif /* C style interface */ 00526 00527 00528 00529 00530 #endif /* __IPropertyStore_INTERFACE_DEFINED__ */ 00531 00532 00533 /* interface __MIDL_itf_propsys_0000_0003 */ 00534 /* [local] */ 00535 00536 typedef /* [unique] */ __RPC_unique_pointer IPropertyStore *LPPROPERTYSTORE; 00537 00538 00539 00540 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0003_v0_0_c_ifspec; 00541 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0003_v0_0_s_ifspec; 00542 00543 #ifndef __INamedPropertyStore_INTERFACE_DEFINED__ 00544 #define __INamedPropertyStore_INTERFACE_DEFINED__ 00545 00546 /* interface INamedPropertyStore */ 00547 /* [unique][object][uuid] */ 00548 00549 00550 EXTERN_C const IID IID_INamedPropertyStore; 00551 00552 #if defined(__cplusplus) && !defined(CINTERFACE) 00553 00554 MIDL_INTERFACE("71604b0f-97b0-4764-8577-2f13e98a1422") 00555 INamedPropertyStore : public IUnknown 00556 { 00557 public: 00558 virtual HRESULT STDMETHODCALLTYPE GetNamedValue( 00559 /* [string][in] */ __RPC__in LPCWSTR pszName, 00560 /* [out] */ __RPC__out PROPVARIANT *ppropvar) = 0; 00561 00562 virtual HRESULT STDMETHODCALLTYPE SetNamedValue( 00563 /* [string][in] */ __RPC__in LPCWSTR pszName, 00564 /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0; 00565 00566 virtual HRESULT STDMETHODCALLTYPE GetNameCount( 00567 /* [out] */ __RPC__out DWORD *pdwCount) = 0; 00568 00569 virtual HRESULT STDMETHODCALLTYPE GetNameAt( 00570 /* [in] */ DWORD iProp, 00571 /* [out] */ __RPC__deref_out_opt BSTR *pbstrName) = 0; 00572 00573 }; 00574 00575 #else /* C style interface */ 00576 00577 typedef struct INamedPropertyStoreVtbl 00578 { 00579 BEGIN_INTERFACE 00580 00581 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00582 INamedPropertyStore * This, 00583 /* [in] */ __RPC__in REFIID riid, 00584 /* [iid_is][out] */ 00585 __RPC__deref_out void **ppvObject); 00586 00587 ULONG ( STDMETHODCALLTYPE *AddRef )( 00588 INamedPropertyStore * This); 00589 00590 ULONG ( STDMETHODCALLTYPE *Release )( 00591 INamedPropertyStore * This); 00592 00593 HRESULT ( STDMETHODCALLTYPE *GetNamedValue )( 00594 INamedPropertyStore * This, 00595 /* [string][in] */ __RPC__in LPCWSTR pszName, 00596 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 00597 00598 HRESULT ( STDMETHODCALLTYPE *SetNamedValue )( 00599 INamedPropertyStore * This, 00600 /* [string][in] */ __RPC__in LPCWSTR pszName, 00601 /* [in] */ __RPC__in REFPROPVARIANT propvar); 00602 00603 HRESULT ( STDMETHODCALLTYPE *GetNameCount )( 00604 INamedPropertyStore * This, 00605 /* [out] */ __RPC__out DWORD *pdwCount); 00606 00607 HRESULT ( STDMETHODCALLTYPE *GetNameAt )( 00608 INamedPropertyStore * This, 00609 /* [in] */ DWORD iProp, 00610 /* [out] */ __RPC__deref_out_opt BSTR *pbstrName); 00611 00612 END_INTERFACE 00613 } INamedPropertyStoreVtbl; 00614 00615 interface INamedPropertyStore 00616 { 00617 CONST_VTBL struct INamedPropertyStoreVtbl *lpVtbl; 00618 }; 00619 00620 00621 00622 #ifdef COBJMACROS 00623 00624 00625 #define INamedPropertyStore_QueryInterface(This,riid,ppvObject) \ 00626 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00627 00628 #define INamedPropertyStore_AddRef(This) \ 00629 ( (This)->lpVtbl -> AddRef(This) ) 00630 00631 #define INamedPropertyStore_Release(This) \ 00632 ( (This)->lpVtbl -> Release(This) ) 00633 00634 00635 #define INamedPropertyStore_GetNamedValue(This,pszName,ppropvar) \ 00636 ( (This)->lpVtbl -> GetNamedValue(This,pszName,ppropvar) ) 00637 00638 #define INamedPropertyStore_SetNamedValue(This,pszName,propvar) \ 00639 ( (This)->lpVtbl -> SetNamedValue(This,pszName,propvar) ) 00640 00641 #define INamedPropertyStore_GetNameCount(This,pdwCount) \ 00642 ( (This)->lpVtbl -> GetNameCount(This,pdwCount) ) 00643 00644 #define INamedPropertyStore_GetNameAt(This,iProp,pbstrName) \ 00645 ( (This)->lpVtbl -> GetNameAt(This,iProp,pbstrName) ) 00646 00647 #endif /* COBJMACROS */ 00648 00649 00650 #endif /* C style interface */ 00651 00652 00653 00654 00655 #endif /* __INamedPropertyStore_INTERFACE_DEFINED__ */ 00656 00657 00658 /* interface __MIDL_itf_propsys_0000_0004 */ 00659 /* [local] */ 00660 00661 /* [v1_enum] */ 00662 enum tagGETPROPERTYSTOREFLAGS 00663 { GPS_DEFAULT = 0, 00664 GPS_HANDLERPROPERTIESONLY = 0x1, 00665 GPS_READWRITE = 0x2, 00666 GPS_TEMPORARY = 0x4, 00667 GPS_FASTPROPERTIESONLY = 0x8, 00668 GPS_OPENSLOWITEM = 0x10, 00669 GPS_DELAYCREATION = 0x20, 00670 GPS_BESTEFFORT = 0x40, 00671 GPS_MASK_VALID = 0x7f 00672 } ; 00673 typedef int GETPROPERTYSTOREFLAGS; 00674 00675 00676 00677 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0004_v0_0_c_ifspec; 00678 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0004_v0_0_s_ifspec; 00679 00680 #ifndef __IObjectWithPropertyKey_INTERFACE_DEFINED__ 00681 #define __IObjectWithPropertyKey_INTERFACE_DEFINED__ 00682 00683 /* interface IObjectWithPropertyKey */ 00684 /* [uuid][object] */ 00685 00686 00687 EXTERN_C const IID IID_IObjectWithPropertyKey; 00688 00689 #if defined(__cplusplus) && !defined(CINTERFACE) 00690 00691 MIDL_INTERFACE("fc0ca0a7-c316-4fd2-9031-3e628e6d4f23") 00692 IObjectWithPropertyKey : public IUnknown 00693 { 00694 public: 00695 virtual HRESULT STDMETHODCALLTYPE SetPropertyKey( 00696 /* [in] */ __RPC__in REFPROPERTYKEY key) = 0; 00697 00698 virtual HRESULT STDMETHODCALLTYPE GetPropertyKey( 00699 /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0; 00700 00701 }; 00702 00703 #else /* C style interface */ 00704 00705 typedef struct IObjectWithPropertyKeyVtbl 00706 { 00707 BEGIN_INTERFACE 00708 00709 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00710 IObjectWithPropertyKey * This, 00711 /* [in] */ __RPC__in REFIID riid, 00712 /* [iid_is][out] */ 00713 __RPC__deref_out void **ppvObject); 00714 00715 ULONG ( STDMETHODCALLTYPE *AddRef )( 00716 IObjectWithPropertyKey * This); 00717 00718 ULONG ( STDMETHODCALLTYPE *Release )( 00719 IObjectWithPropertyKey * This); 00720 00721 HRESULT ( STDMETHODCALLTYPE *SetPropertyKey )( 00722 IObjectWithPropertyKey * This, 00723 /* [in] */ __RPC__in REFPROPERTYKEY key); 00724 00725 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 00726 IObjectWithPropertyKey * This, 00727 /* [out] */ __RPC__out PROPERTYKEY *pkey); 00728 00729 END_INTERFACE 00730 } IObjectWithPropertyKeyVtbl; 00731 00732 interface IObjectWithPropertyKey 00733 { 00734 CONST_VTBL struct IObjectWithPropertyKeyVtbl *lpVtbl; 00735 }; 00736 00737 00738 00739 #ifdef COBJMACROS 00740 00741 00742 #define IObjectWithPropertyKey_QueryInterface(This,riid,ppvObject) \ 00743 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00744 00745 #define IObjectWithPropertyKey_AddRef(This) \ 00746 ( (This)->lpVtbl -> AddRef(This) ) 00747 00748 #define IObjectWithPropertyKey_Release(This) \ 00749 ( (This)->lpVtbl -> Release(This) ) 00750 00751 00752 #define IObjectWithPropertyKey_SetPropertyKey(This,key) \ 00753 ( (This)->lpVtbl -> SetPropertyKey(This,key) ) 00754 00755 #define IObjectWithPropertyKey_GetPropertyKey(This,pkey) \ 00756 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 00757 00758 #endif /* COBJMACROS */ 00759 00760 00761 #endif /* C style interface */ 00762 00763 00764 00765 00766 #endif /* __IObjectWithPropertyKey_INTERFACE_DEFINED__ */ 00767 00768 00769 /* interface __MIDL_itf_propsys_0000_0005 */ 00770 /* [local] */ 00771 00772 typedef /* [v1_enum] */ 00773 enum tagPKA_FLAGS 00774 { PKA_SET = 0, 00775 PKA_APPEND = ( PKA_SET + 1 ) , 00776 PKA_DELETE = ( PKA_APPEND + 1 ) 00777 } PKA_FLAGS; 00778 00779 00780 00781 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0005_v0_0_c_ifspec; 00782 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0005_v0_0_s_ifspec; 00783 00784 #ifndef __IPropertyChange_INTERFACE_DEFINED__ 00785 #define __IPropertyChange_INTERFACE_DEFINED__ 00786 00787 /* interface IPropertyChange */ 00788 /* [unique][object][uuid] */ 00789 00790 00791 EXTERN_C const IID IID_IPropertyChange; 00792 00793 #if defined(__cplusplus) && !defined(CINTERFACE) 00794 00795 MIDL_INTERFACE("f917bc8a-1bba-4478-a245-1bde03eb9431") 00796 IPropertyChange : public IObjectWithPropertyKey 00797 { 00798 public: 00799 virtual HRESULT STDMETHODCALLTYPE ApplyToPropVariant( 00800 /* [in] */ __RPC__in REFPROPVARIANT propvarIn, 00801 /* [out] */ __RPC__out PROPVARIANT *ppropvarOut) = 0; 00802 00803 }; 00804 00805 #else /* C style interface */ 00806 00807 typedef struct IPropertyChangeVtbl 00808 { 00809 BEGIN_INTERFACE 00810 00811 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00812 IPropertyChange * This, 00813 /* [in] */ __RPC__in REFIID riid, 00814 /* [iid_is][out] */ 00815 __RPC__deref_out void **ppvObject); 00816 00817 ULONG ( STDMETHODCALLTYPE *AddRef )( 00818 IPropertyChange * This); 00819 00820 ULONG ( STDMETHODCALLTYPE *Release )( 00821 IPropertyChange * This); 00822 00823 HRESULT ( STDMETHODCALLTYPE *SetPropertyKey )( 00824 IPropertyChange * This, 00825 /* [in] */ __RPC__in REFPROPERTYKEY key); 00826 00827 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 00828 IPropertyChange * This, 00829 /* [out] */ __RPC__out PROPERTYKEY *pkey); 00830 00831 HRESULT ( STDMETHODCALLTYPE *ApplyToPropVariant )( 00832 IPropertyChange * This, 00833 /* [in] */ __RPC__in REFPROPVARIANT propvarIn, 00834 /* [out] */ __RPC__out PROPVARIANT *ppropvarOut); 00835 00836 END_INTERFACE 00837 } IPropertyChangeVtbl; 00838 00839 interface IPropertyChange 00840 { 00841 CONST_VTBL struct IPropertyChangeVtbl *lpVtbl; 00842 }; 00843 00844 00845 00846 #ifdef COBJMACROS 00847 00848 00849 #define IPropertyChange_QueryInterface(This,riid,ppvObject) \ 00850 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00851 00852 #define IPropertyChange_AddRef(This) \ 00853 ( (This)->lpVtbl -> AddRef(This) ) 00854 00855 #define IPropertyChange_Release(This) \ 00856 ( (This)->lpVtbl -> Release(This) ) 00857 00858 00859 #define IPropertyChange_SetPropertyKey(This,key) \ 00860 ( (This)->lpVtbl -> SetPropertyKey(This,key) ) 00861 00862 #define IPropertyChange_GetPropertyKey(This,pkey) \ 00863 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 00864 00865 00866 #define IPropertyChange_ApplyToPropVariant(This,propvarIn,ppropvarOut) \ 00867 ( (This)->lpVtbl -> ApplyToPropVariant(This,propvarIn,ppropvarOut) ) 00868 00869 #endif /* COBJMACROS */ 00870 00871 00872 #endif /* C style interface */ 00873 00874 00875 00876 00877 #endif /* __IPropertyChange_INTERFACE_DEFINED__ */ 00878 00879 00880 #ifndef __IPropertyChangeArray_INTERFACE_DEFINED__ 00881 #define __IPropertyChangeArray_INTERFACE_DEFINED__ 00882 00883 /* interface IPropertyChangeArray */ 00884 /* [unique][object][uuid] */ 00885 00886 00887 EXTERN_C const IID IID_IPropertyChangeArray; 00888 00889 #if defined(__cplusplus) && !defined(CINTERFACE) 00890 00891 MIDL_INTERFACE("380f5cad-1b5e-42f2-805d-637fd392d31e") 00892 IPropertyChangeArray : public IUnknown 00893 { 00894 public: 00895 virtual HRESULT STDMETHODCALLTYPE GetCount( 00896 /* [out] */ __RPC__out UINT *pcOperations) = 0; 00897 00898 virtual HRESULT STDMETHODCALLTYPE GetAt( 00899 /* [in] */ UINT iIndex, 00900 /* [in] */ __RPC__in REFIID riid, 00901 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 00902 00903 virtual HRESULT STDMETHODCALLTYPE InsertAt( 00904 /* [in] */ UINT iIndex, 00905 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0; 00906 00907 virtual HRESULT STDMETHODCALLTYPE Append( 00908 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0; 00909 00910 virtual HRESULT STDMETHODCALLTYPE AppendOrReplace( 00911 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0; 00912 00913 virtual HRESULT STDMETHODCALLTYPE RemoveAt( 00914 /* [in] */ UINT iIndex) = 0; 00915 00916 virtual HRESULT STDMETHODCALLTYPE IsKeyInArray( 00917 /* [in] */ __RPC__in REFPROPERTYKEY key) = 0; 00918 00919 }; 00920 00921 #else /* C style interface */ 00922 00923 typedef struct IPropertyChangeArrayVtbl 00924 { 00925 BEGIN_INTERFACE 00926 00927 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 00928 IPropertyChangeArray * This, 00929 /* [in] */ __RPC__in REFIID riid, 00930 /* [iid_is][out] */ 00931 __RPC__deref_out void **ppvObject); 00932 00933 ULONG ( STDMETHODCALLTYPE *AddRef )( 00934 IPropertyChangeArray * This); 00935 00936 ULONG ( STDMETHODCALLTYPE *Release )( 00937 IPropertyChangeArray * This); 00938 00939 HRESULT ( STDMETHODCALLTYPE *GetCount )( 00940 IPropertyChangeArray * This, 00941 /* [out] */ __RPC__out UINT *pcOperations); 00942 00943 HRESULT ( STDMETHODCALLTYPE *GetAt )( 00944 IPropertyChangeArray * This, 00945 /* [in] */ UINT iIndex, 00946 /* [in] */ __RPC__in REFIID riid, 00947 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 00948 00949 HRESULT ( STDMETHODCALLTYPE *InsertAt )( 00950 IPropertyChangeArray * This, 00951 /* [in] */ UINT iIndex, 00952 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange); 00953 00954 HRESULT ( STDMETHODCALLTYPE *Append )( 00955 IPropertyChangeArray * This, 00956 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange); 00957 00958 HRESULT ( STDMETHODCALLTYPE *AppendOrReplace )( 00959 IPropertyChangeArray * This, 00960 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange); 00961 00962 HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 00963 IPropertyChangeArray * This, 00964 /* [in] */ UINT iIndex); 00965 00966 HRESULT ( STDMETHODCALLTYPE *IsKeyInArray )( 00967 IPropertyChangeArray * This, 00968 /* [in] */ __RPC__in REFPROPERTYKEY key); 00969 00970 END_INTERFACE 00971 } IPropertyChangeArrayVtbl; 00972 00973 interface IPropertyChangeArray 00974 { 00975 CONST_VTBL struct IPropertyChangeArrayVtbl *lpVtbl; 00976 }; 00977 00978 00979 00980 #ifdef COBJMACROS 00981 00982 00983 #define IPropertyChangeArray_QueryInterface(This,riid,ppvObject) \ 00984 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 00985 00986 #define IPropertyChangeArray_AddRef(This) \ 00987 ( (This)->lpVtbl -> AddRef(This) ) 00988 00989 #define IPropertyChangeArray_Release(This) \ 00990 ( (This)->lpVtbl -> Release(This) ) 00991 00992 00993 #define IPropertyChangeArray_GetCount(This,pcOperations) \ 00994 ( (This)->lpVtbl -> GetCount(This,pcOperations) ) 00995 00996 #define IPropertyChangeArray_GetAt(This,iIndex,riid,ppv) \ 00997 ( (This)->lpVtbl -> GetAt(This,iIndex,riid,ppv) ) 00998 00999 #define IPropertyChangeArray_InsertAt(This,iIndex,ppropChange) \ 01000 ( (This)->lpVtbl -> InsertAt(This,iIndex,ppropChange) ) 01001 01002 #define IPropertyChangeArray_Append(This,ppropChange) \ 01003 ( (This)->lpVtbl -> Append(This,ppropChange) ) 01004 01005 #define IPropertyChangeArray_AppendOrReplace(This,ppropChange) \ 01006 ( (This)->lpVtbl -> AppendOrReplace(This,ppropChange) ) 01007 01008 #define IPropertyChangeArray_RemoveAt(This,iIndex) \ 01009 ( (This)->lpVtbl -> RemoveAt(This,iIndex) ) 01010 01011 #define IPropertyChangeArray_IsKeyInArray(This,key) \ 01012 ( (This)->lpVtbl -> IsKeyInArray(This,key) ) 01013 01014 #endif /* COBJMACROS */ 01015 01016 01017 #endif /* C style interface */ 01018 01019 01020 01021 01022 #endif /* __IPropertyChangeArray_INTERFACE_DEFINED__ */ 01023 01024 01025 #ifndef __IPropertyStoreCapabilities_INTERFACE_DEFINED__ 01026 #define __IPropertyStoreCapabilities_INTERFACE_DEFINED__ 01027 01028 /* interface IPropertyStoreCapabilities */ 01029 /* [unique][object][uuid] */ 01030 01031 01032 EXTERN_C const IID IID_IPropertyStoreCapabilities; 01033 01034 #if defined(__cplusplus) && !defined(CINTERFACE) 01035 01036 MIDL_INTERFACE("c8e2d566-186e-4d49-bf41-6909ead56acc") 01037 IPropertyStoreCapabilities : public IUnknown 01038 { 01039 public: 01040 virtual HRESULT STDMETHODCALLTYPE IsPropertyWritable( 01041 /* [in] */ __RPC__in REFPROPERTYKEY key) = 0; 01042 01043 }; 01044 01045 #else /* C style interface */ 01046 01047 typedef struct IPropertyStoreCapabilitiesVtbl 01048 { 01049 BEGIN_INTERFACE 01050 01051 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 01052 IPropertyStoreCapabilities * This, 01053 /* [in] */ __RPC__in REFIID riid, 01054 /* [iid_is][out] */ 01055 __RPC__deref_out void **ppvObject); 01056 01057 ULONG ( STDMETHODCALLTYPE *AddRef )( 01058 IPropertyStoreCapabilities * This); 01059 01060 ULONG ( STDMETHODCALLTYPE *Release )( 01061 IPropertyStoreCapabilities * This); 01062 01063 HRESULT ( STDMETHODCALLTYPE *IsPropertyWritable )( 01064 IPropertyStoreCapabilities * This, 01065 /* [in] */ __RPC__in REFPROPERTYKEY key); 01066 01067 END_INTERFACE 01068 } IPropertyStoreCapabilitiesVtbl; 01069 01070 interface IPropertyStoreCapabilities 01071 { 01072 CONST_VTBL struct IPropertyStoreCapabilitiesVtbl *lpVtbl; 01073 }; 01074 01075 01076 01077 #ifdef COBJMACROS 01078 01079 01080 #define IPropertyStoreCapabilities_QueryInterface(This,riid,ppvObject) \ 01081 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 01082 01083 #define IPropertyStoreCapabilities_AddRef(This) \ 01084 ( (This)->lpVtbl -> AddRef(This) ) 01085 01086 #define IPropertyStoreCapabilities_Release(This) \ 01087 ( (This)->lpVtbl -> Release(This) ) 01088 01089 01090 #define IPropertyStoreCapabilities_IsPropertyWritable(This,key) \ 01091 ( (This)->lpVtbl -> IsPropertyWritable(This,key) ) 01092 01093 #endif /* COBJMACROS */ 01094 01095 01096 #endif /* C style interface */ 01097 01098 01099 01100 01101 #endif /* __IPropertyStoreCapabilities_INTERFACE_DEFINED__ */ 01102 01103 01104 #ifndef __IPropertyStoreCache_INTERFACE_DEFINED__ 01105 #define __IPropertyStoreCache_INTERFACE_DEFINED__ 01106 01107 /* interface IPropertyStoreCache */ 01108 /* [unique][object][uuid] */ 01109 01110 typedef /* [v1_enum] */ 01111 enum _PSC_STATE 01112 { PSC_NORMAL = 0, 01113 PSC_NOTINSOURCE = 1, 01114 PSC_DIRTY = 2, 01115 PSC_READONLY = 3 01116 } PSC_STATE; 01117 01118 01119 EXTERN_C const IID IID_IPropertyStoreCache; 01120 01121 #if defined(__cplusplus) && !defined(CINTERFACE) 01122 01123 MIDL_INTERFACE("3017056d-9a91-4e90-937d-746c72abbf4f") 01124 IPropertyStoreCache : public IPropertyStore 01125 { 01126 public: 01127 virtual HRESULT STDMETHODCALLTYPE GetState( 01128 /* [in] */ __RPC__in REFPROPERTYKEY key, 01129 /* [out] */ __RPC__out PSC_STATE *pstate) = 0; 01130 01131 virtual HRESULT STDMETHODCALLTYPE GetValueAndState( 01132 /* [in] */ __RPC__in REFPROPERTYKEY key, 01133 /* [out] */ __RPC__out PROPVARIANT *ppropvar, 01134 /* [out] */ __RPC__out PSC_STATE *pstate) = 0; 01135 01136 virtual HRESULT STDMETHODCALLTYPE SetState( 01137 /* [in] */ __RPC__in REFPROPERTYKEY key, 01138 /* [in] */ PSC_STATE state) = 0; 01139 01140 virtual HRESULT STDMETHODCALLTYPE SetValueAndState( 01141 /* [in] */ __RPC__in REFPROPERTYKEY key, 01142 /* [unique][in] */ __RPC__in_opt const PROPVARIANT *ppropvar, 01143 /* [in] */ PSC_STATE state) = 0; 01144 01145 }; 01146 01147 #else /* C style interface */ 01148 01149 typedef struct IPropertyStoreCacheVtbl 01150 { 01151 BEGIN_INTERFACE 01152 01153 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 01154 IPropertyStoreCache * This, 01155 /* [in] */ __RPC__in REFIID riid, 01156 /* [iid_is][out] */ 01157 __RPC__deref_out void **ppvObject); 01158 01159 ULONG ( STDMETHODCALLTYPE *AddRef )( 01160 IPropertyStoreCache * This); 01161 01162 ULONG ( STDMETHODCALLTYPE *Release )( 01163 IPropertyStoreCache * This); 01164 01165 HRESULT ( STDMETHODCALLTYPE *GetCount )( 01166 IPropertyStoreCache * This, 01167 /* [out] */ __RPC__out DWORD *cProps); 01168 01169 HRESULT ( STDMETHODCALLTYPE *GetAt )( 01170 IPropertyStoreCache * This, 01171 /* [in] */ DWORD iProp, 01172 /* [out] */ __RPC__out PROPERTYKEY *pkey); 01173 01174 HRESULT ( STDMETHODCALLTYPE *GetValue )( 01175 IPropertyStoreCache * This, 01176 /* [in] */ __RPC__in REFPROPERTYKEY key, 01177 /* [out] */ __RPC__out PROPVARIANT *pv); 01178 01179 HRESULT ( STDMETHODCALLTYPE *SetValue )( 01180 IPropertyStoreCache * This, 01181 /* [in] */ __RPC__in REFPROPERTYKEY key, 01182 /* [in] */ __RPC__in REFPROPVARIANT propvar); 01183 01184 HRESULT ( STDMETHODCALLTYPE *Commit )( 01185 IPropertyStoreCache * This); 01186 01187 HRESULT ( STDMETHODCALLTYPE *GetState )( 01188 IPropertyStoreCache * This, 01189 /* [in] */ __RPC__in REFPROPERTYKEY key, 01190 /* [out] */ __RPC__out PSC_STATE *pstate); 01191 01192 HRESULT ( STDMETHODCALLTYPE *GetValueAndState )( 01193 IPropertyStoreCache * This, 01194 /* [in] */ __RPC__in REFPROPERTYKEY key, 01195 /* [out] */ __RPC__out PROPVARIANT *ppropvar, 01196 /* [out] */ __RPC__out PSC_STATE *pstate); 01197 01198 HRESULT ( STDMETHODCALLTYPE *SetState )( 01199 IPropertyStoreCache * This, 01200 /* [in] */ __RPC__in REFPROPERTYKEY key, 01201 /* [in] */ PSC_STATE state); 01202 01203 HRESULT ( STDMETHODCALLTYPE *SetValueAndState )( 01204 IPropertyStoreCache * This, 01205 /* [in] */ __RPC__in REFPROPERTYKEY key, 01206 /* [unique][in] */ __RPC__in_opt const PROPVARIANT *ppropvar, 01207 /* [in] */ PSC_STATE state); 01208 01209 END_INTERFACE 01210 } IPropertyStoreCacheVtbl; 01211 01212 interface IPropertyStoreCache 01213 { 01214 CONST_VTBL struct IPropertyStoreCacheVtbl *lpVtbl; 01215 }; 01216 01217 01218 01219 #ifdef COBJMACROS 01220 01221 01222 #define IPropertyStoreCache_QueryInterface(This,riid,ppvObject) \ 01223 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 01224 01225 #define IPropertyStoreCache_AddRef(This) \ 01226 ( (This)->lpVtbl -> AddRef(This) ) 01227 01228 #define IPropertyStoreCache_Release(This) \ 01229 ( (This)->lpVtbl -> Release(This) ) 01230 01231 01232 #define IPropertyStoreCache_GetCount(This,cProps) \ 01233 ( (This)->lpVtbl -> GetCount(This,cProps) ) 01234 01235 #define IPropertyStoreCache_GetAt(This,iProp,pkey) \ 01236 ( (This)->lpVtbl -> GetAt(This,iProp,pkey) ) 01237 01238 #define IPropertyStoreCache_GetValue(This,key,pv) \ 01239 ( (This)->lpVtbl -> GetValue(This,key,pv) ) 01240 01241 #define IPropertyStoreCache_SetValue(This,key,propvar) \ 01242 ( (This)->lpVtbl -> SetValue(This,key,propvar) ) 01243 01244 #define IPropertyStoreCache_Commit(This) \ 01245 ( (This)->lpVtbl -> Commit(This) ) 01246 01247 01248 #define IPropertyStoreCache_GetState(This,key,pstate) \ 01249 ( (This)->lpVtbl -> GetState(This,key,pstate) ) 01250 01251 #define IPropertyStoreCache_GetValueAndState(This,key,ppropvar,pstate) \ 01252 ( (This)->lpVtbl -> GetValueAndState(This,key,ppropvar,pstate) ) 01253 01254 #define IPropertyStoreCache_SetState(This,key,state) \ 01255 ( (This)->lpVtbl -> SetState(This,key,state) ) 01256 01257 #define IPropertyStoreCache_SetValueAndState(This,key,ppropvar,state) \ 01258 ( (This)->lpVtbl -> SetValueAndState(This,key,ppropvar,state) ) 01259 01260 #endif /* COBJMACROS */ 01261 01262 01263 #endif /* C style interface */ 01264 01265 01266 01267 01268 #endif /* __IPropertyStoreCache_INTERFACE_DEFINED__ */ 01269 01270 01271 #ifndef __IPropertyEnumType_INTERFACE_DEFINED__ 01272 #define __IPropertyEnumType_INTERFACE_DEFINED__ 01273 01274 /* interface IPropertyEnumType */ 01275 /* [unique][object][uuid] */ 01276 01277 /* [v1_enum] */ 01278 enum tagPROPENUMTYPE 01279 { PET_DISCRETEVALUE = 0, 01280 PET_RANGEDVALUE = 1, 01281 PET_DEFAULTVALUE = 2, 01282 PET_ENDRANGE = 3 01283 } ; 01284 typedef enum tagPROPENUMTYPE PROPENUMTYPE; 01285 01286 01287 EXTERN_C const IID IID_IPropertyEnumType; 01288 01289 #if defined(__cplusplus) && !defined(CINTERFACE) 01290 01291 MIDL_INTERFACE("11e1fbf9-2d56-4a6b-8db3-7cd193a471f2") 01292 IPropertyEnumType : public IUnknown 01293 { 01294 public: 01295 virtual HRESULT STDMETHODCALLTYPE GetEnumType( 01296 /* [out] */ __RPC__out PROPENUMTYPE *penumtype) = 0; 01297 01298 virtual HRESULT STDMETHODCALLTYPE GetValue( 01299 /* [out] */ __RPC__out PROPVARIANT *ppropvar) = 0; 01300 01301 virtual HRESULT STDMETHODCALLTYPE GetRangeMinValue( 01302 /* [out] */ __RPC__out PROPVARIANT *ppropvarMin) = 0; 01303 01304 virtual HRESULT STDMETHODCALLTYPE GetRangeSetValue( 01305 /* [out] */ __RPC__out PROPVARIANT *ppropvarSet) = 0; 01306 01307 virtual HRESULT STDMETHODCALLTYPE GetDisplayText( 01308 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszDisplay) = 0; 01309 01310 }; 01311 01312 #else /* C style interface */ 01313 01314 typedef struct IPropertyEnumTypeVtbl 01315 { 01316 BEGIN_INTERFACE 01317 01318 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 01319 IPropertyEnumType * This, 01320 /* [in] */ __RPC__in REFIID riid, 01321 /* [iid_is][out] */ 01322 __RPC__deref_out void **ppvObject); 01323 01324 ULONG ( STDMETHODCALLTYPE *AddRef )( 01325 IPropertyEnumType * This); 01326 01327 ULONG ( STDMETHODCALLTYPE *Release )( 01328 IPropertyEnumType * This); 01329 01330 HRESULT ( STDMETHODCALLTYPE *GetEnumType )( 01331 IPropertyEnumType * This, 01332 /* [out] */ __RPC__out PROPENUMTYPE *penumtype); 01333 01334 HRESULT ( STDMETHODCALLTYPE *GetValue )( 01335 IPropertyEnumType * This, 01336 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 01337 01338 HRESULT ( STDMETHODCALLTYPE *GetRangeMinValue )( 01339 IPropertyEnumType * This, 01340 /* [out] */ __RPC__out PROPVARIANT *ppropvarMin); 01341 01342 HRESULT ( STDMETHODCALLTYPE *GetRangeSetValue )( 01343 IPropertyEnumType * This, 01344 /* [out] */ __RPC__out PROPVARIANT *ppropvarSet); 01345 01346 HRESULT ( STDMETHODCALLTYPE *GetDisplayText )( 01347 IPropertyEnumType * This, 01348 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszDisplay); 01349 01350 END_INTERFACE 01351 } IPropertyEnumTypeVtbl; 01352 01353 interface IPropertyEnumType 01354 { 01355 CONST_VTBL struct IPropertyEnumTypeVtbl *lpVtbl; 01356 }; 01357 01358 01359 01360 #ifdef COBJMACROS 01361 01362 01363 #define IPropertyEnumType_QueryInterface(This,riid,ppvObject) \ 01364 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 01365 01366 #define IPropertyEnumType_AddRef(This) \ 01367 ( (This)->lpVtbl -> AddRef(This) ) 01368 01369 #define IPropertyEnumType_Release(This) \ 01370 ( (This)->lpVtbl -> Release(This) ) 01371 01372 01373 #define IPropertyEnumType_GetEnumType(This,penumtype) \ 01374 ( (This)->lpVtbl -> GetEnumType(This,penumtype) ) 01375 01376 #define IPropertyEnumType_GetValue(This,ppropvar) \ 01377 ( (This)->lpVtbl -> GetValue(This,ppropvar) ) 01378 01379 #define IPropertyEnumType_GetRangeMinValue(This,ppropvarMin) \ 01380 ( (This)->lpVtbl -> GetRangeMinValue(This,ppropvarMin) ) 01381 01382 #define IPropertyEnumType_GetRangeSetValue(This,ppropvarSet) \ 01383 ( (This)->lpVtbl -> GetRangeSetValue(This,ppropvarSet) ) 01384 01385 #define IPropertyEnumType_GetDisplayText(This,ppszDisplay) \ 01386 ( (This)->lpVtbl -> GetDisplayText(This,ppszDisplay) ) 01387 01388 #endif /* COBJMACROS */ 01389 01390 01391 #endif /* C style interface */ 01392 01393 01394 01395 01396 #endif /* __IPropertyEnumType_INTERFACE_DEFINED__ */ 01397 01398 01399 #ifndef __IPropertyEnumTypeList_INTERFACE_DEFINED__ 01400 #define __IPropertyEnumTypeList_INTERFACE_DEFINED__ 01401 01402 /* interface IPropertyEnumTypeList */ 01403 /* [unique][object][uuid] */ 01404 01405 01406 EXTERN_C const IID IID_IPropertyEnumTypeList; 01407 01408 #if defined(__cplusplus) && !defined(CINTERFACE) 01409 01410 MIDL_INTERFACE("a99400f4-3d84-4557-94ba-1242fb2cc9a6") 01411 IPropertyEnumTypeList : public IUnknown 01412 { 01413 public: 01414 virtual HRESULT STDMETHODCALLTYPE GetCount( 01415 /* [out] */ __RPC__out UINT *pctypes) = 0; 01416 01417 virtual HRESULT STDMETHODCALLTYPE GetAt( 01418 /* [in] */ UINT itype, 01419 /* [in] */ __RPC__in REFIID riid, 01420 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 01421 01422 virtual HRESULT STDMETHODCALLTYPE GetConditionAt( 01423 /* [in] */ UINT nIndex, 01424 /* [in] */ __RPC__in REFIID riid, 01425 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 01426 01427 virtual HRESULT STDMETHODCALLTYPE FindMatchingIndex( 01428 /* [in] */ __RPC__in REFPROPVARIANT propvarCmp, 01429 /* [out] */ __RPC__out UINT *pnIndex) = 0; 01430 01431 }; 01432 01433 #else /* C style interface */ 01434 01435 typedef struct IPropertyEnumTypeListVtbl 01436 { 01437 BEGIN_INTERFACE 01438 01439 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 01440 IPropertyEnumTypeList * This, 01441 /* [in] */ __RPC__in REFIID riid, 01442 /* [iid_is][out] */ 01443 __RPC__deref_out void **ppvObject); 01444 01445 ULONG ( STDMETHODCALLTYPE *AddRef )( 01446 IPropertyEnumTypeList * This); 01447 01448 ULONG ( STDMETHODCALLTYPE *Release )( 01449 IPropertyEnumTypeList * This); 01450 01451 HRESULT ( STDMETHODCALLTYPE *GetCount )( 01452 IPropertyEnumTypeList * This, 01453 /* [out] */ __RPC__out UINT *pctypes); 01454 01455 HRESULT ( STDMETHODCALLTYPE *GetAt )( 01456 IPropertyEnumTypeList * This, 01457 /* [in] */ UINT itype, 01458 /* [in] */ __RPC__in REFIID riid, 01459 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 01460 01461 HRESULT ( STDMETHODCALLTYPE *GetConditionAt )( 01462 IPropertyEnumTypeList * This, 01463 /* [in] */ UINT nIndex, 01464 /* [in] */ __RPC__in REFIID riid, 01465 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 01466 01467 HRESULT ( STDMETHODCALLTYPE *FindMatchingIndex )( 01468 IPropertyEnumTypeList * This, 01469 /* [in] */ __RPC__in REFPROPVARIANT propvarCmp, 01470 /* [out] */ __RPC__out UINT *pnIndex); 01471 01472 END_INTERFACE 01473 } IPropertyEnumTypeListVtbl; 01474 01475 interface IPropertyEnumTypeList 01476 { 01477 CONST_VTBL struct IPropertyEnumTypeListVtbl *lpVtbl; 01478 }; 01479 01480 01481 01482 #ifdef COBJMACROS 01483 01484 01485 #define IPropertyEnumTypeList_QueryInterface(This,riid,ppvObject) \ 01486 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 01487 01488 #define IPropertyEnumTypeList_AddRef(This) \ 01489 ( (This)->lpVtbl -> AddRef(This) ) 01490 01491 #define IPropertyEnumTypeList_Release(This) \ 01492 ( (This)->lpVtbl -> Release(This) ) 01493 01494 01495 #define IPropertyEnumTypeList_GetCount(This,pctypes) \ 01496 ( (This)->lpVtbl -> GetCount(This,pctypes) ) 01497 01498 #define IPropertyEnumTypeList_GetAt(This,itype,riid,ppv) \ 01499 ( (This)->lpVtbl -> GetAt(This,itype,riid,ppv) ) 01500 01501 #define IPropertyEnumTypeList_GetConditionAt(This,nIndex,riid,ppv) \ 01502 ( (This)->lpVtbl -> GetConditionAt(This,nIndex,riid,ppv) ) 01503 01504 #define IPropertyEnumTypeList_FindMatchingIndex(This,propvarCmp,pnIndex) \ 01505 ( (This)->lpVtbl -> FindMatchingIndex(This,propvarCmp,pnIndex) ) 01506 01507 #endif /* COBJMACROS */ 01508 01509 01510 #endif /* C style interface */ 01511 01512 01513 01514 01515 #endif /* __IPropertyEnumTypeList_INTERFACE_DEFINED__ */ 01516 01517 01518 #ifndef __IPropertyDescription_INTERFACE_DEFINED__ 01519 #define __IPropertyDescription_INTERFACE_DEFINED__ 01520 01521 /* interface IPropertyDescription */ 01522 /* [unique][object][uuid] */ 01523 01524 /* [v1_enum] */ 01525 enum tagPROPDESC_TYPE_FLAGS 01526 { PDTF_DEFAULT = 0, 01527 PDTF_MULTIPLEVALUES = 0x1, 01528 PDTF_ISINNATE = 0x2, 01529 PDTF_ISGROUP = 0x4, 01530 PDTF_CANGROUPBY = 0x8, 01531 PDTF_CANSTACKBY = 0x10, 01532 PDTF_ISTREEPROPERTY = 0x20, 01533 PDTF_INCLUDEINFULLTEXTQUERY = 0x40, 01534 PDTF_ISVIEWABLE = 0x80, 01535 PDTF_ISQUERYABLE = 0x100, 01536 PDTF_ISSYSTEMPROPERTY = 0x80000000, 01537 PDTF_MASK_ALL = 0x800001ff 01538 } ; 01539 typedef int PROPDESC_TYPE_FLAGS; 01540 01541 /* [v1_enum] */ 01542 enum tagPROPDESC_VIEW_FLAGS 01543 { PDVF_DEFAULT = 0, 01544 PDVF_CENTERALIGN = 0x1, 01545 PDVF_RIGHTALIGN = 0x2, 01546 PDVF_BEGINNEWGROUP = 0x4, 01547 PDVF_FILLAREA = 0x8, 01548 PDVF_SORTDESCENDING = 0x10, 01549 PDVF_SHOWONLYIFPRESENT = 0x20, 01550 PDVF_SHOWBYDEFAULT = 0x40, 01551 PDVF_SHOWINPRIMARYLIST = 0x80, 01552 PDVF_SHOWINSECONDARYLIST = 0x100, 01553 PDVF_HIDELABEL = 0x200, 01554 PDVF_HIDDEN = 0x800, 01555 PDVF_CANWRAP = 0x1000, 01556 PDVF_MASK_ALL = 0x1bff 01557 } ; 01558 typedef int PROPDESC_VIEW_FLAGS; 01559 01560 /* [v1_enum] */ 01561 enum tagPROPDESC_DISPLAYTYPE 01562 { PDDT_STRING = 0, 01563 PDDT_NUMBER = 1, 01564 PDDT_BOOLEAN = 2, 01565 PDDT_DATETIME = 3, 01566 PDDT_ENUMERATED = 4 01567 } ; 01568 typedef enum tagPROPDESC_DISPLAYTYPE PROPDESC_DISPLAYTYPE; 01569 01570 /* [v1_enum] */ 01571 enum tagPROPDESC_GROUPING_RANGE 01572 { PDGR_DISCRETE = 0, 01573 PDGR_ALPHANUMERIC = 1, 01574 PDGR_SIZE = 2, 01575 PDGR_DYNAMIC = 3, 01576 PDGR_DATE = 4, 01577 PDGR_PERCENT = 5, 01578 PDGR_ENUMERATED = 6 01579 } ; 01580 typedef enum tagPROPDESC_GROUPING_RANGE PROPDESC_GROUPING_RANGE; 01581 01582 /* [v1_enum] */ 01583 enum tagPROPDESC_FORMAT_FLAGS 01584 { PDFF_DEFAULT = 0, 01585 PDFF_PREFIXNAME = 0x1, 01586 PDFF_FILENAME = 0x2, 01587 PDFF_ALWAYSKB = 0x4, 01588 PDFF_RESERVED_RIGHTTOLEFT = 0x8, 01589 PDFF_SHORTTIME = 0x10, 01590 PDFF_LONGTIME = 0x20, 01591 PDFF_HIDETIME = 0x40, 01592 PDFF_SHORTDATE = 0x80, 01593 PDFF_LONGDATE = 0x100, 01594 PDFF_HIDEDATE = 0x200, 01595 PDFF_RELATIVEDATE = 0x400, 01596 PDFF_USEEDITINVITATION = 0x800, 01597 PDFF_READONLY = 0x1000, 01598 PDFF_NOAUTOREADINGORDER = 0x2000 01599 } ; 01600 typedef int PROPDESC_FORMAT_FLAGS; 01601 01602 /* [v1_enum] */ 01603 enum tagPROPDESC_SORTDESCRIPTION 01604 { PDSD_GENERAL = 0, 01605 PDSD_A_Z = 1, 01606 PDSD_LOWEST_HIGHEST = 2, 01607 PDSD_SMALLEST_BIGGEST = 3, 01608 PDSD_OLDEST_NEWEST = 4 01609 } ; 01610 typedef enum tagPROPDESC_SORTDESCRIPTION PROPDESC_SORTDESCRIPTION; 01611 01612 /* [v1_enum] */ 01613 enum tagPROPDESC_RELATIVEDESCRIPTION_TYPE 01614 { PDRDT_GENERAL = 0, 01615 PDRDT_DATE = 1, 01616 PDRDT_SIZE = 2, 01617 PDRDT_COUNT = 3, 01618 PDRDT_REVISION = 4, 01619 PDRDT_LENGTH = 5, 01620 PDRDT_DURATION = 6, 01621 PDRDT_SPEED = 7, 01622 PDRDT_RATE = 8, 01623 PDRDT_RATING = 9, 01624 PDRDT_PRIORITY = 10 01625 } ; 01626 typedef enum tagPROPDESC_RELATIVEDESCRIPTION_TYPE PROPDESC_RELATIVEDESCRIPTION_TYPE; 01627 01628 /* [v1_enum] */ 01629 enum tagPROPDESC_AGGREGATION_TYPE 01630 { PDAT_DEFAULT = 0, 01631 PDAT_FIRST = 1, 01632 PDAT_SUM = 2, 01633 PDAT_AVERAGE = 3, 01634 PDAT_DATERANGE = 4, 01635 PDAT_UNION = 5, 01636 PDAT_MAX = 6, 01637 PDAT_MIN = 7 01638 } ; 01639 typedef enum tagPROPDESC_AGGREGATION_TYPE PROPDESC_AGGREGATION_TYPE; 01640 01641 /* [v1_enum] */ 01642 enum tagPROPDESC_CONDITION_TYPE 01643 { PDCOT_NONE = 0, 01644 PDCOT_STRING = 1, 01645 PDCOT_SIZE = 2, 01646 PDCOT_DATETIME = 3, 01647 PDCOT_BOOLEAN = 4, 01648 PDCOT_NUMBER = 5 01649 } ; 01650 typedef enum tagPROPDESC_CONDITION_TYPE PROPDESC_CONDITION_TYPE; 01651 01652 01653 EXTERN_C const IID IID_IPropertyDescription; 01654 01655 #if defined(__cplusplus) && !defined(CINTERFACE) 01656 01657 MIDL_INTERFACE("6f79d558-3e96-4549-a1d1-7d75d2288814") 01658 IPropertyDescription : public IUnknown 01659 { 01660 public: 01661 virtual HRESULT STDMETHODCALLTYPE GetPropertyKey( 01662 /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0; 01663 01664 virtual HRESULT STDMETHODCALLTYPE GetCanonicalName( 01665 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName) = 0; 01666 01667 virtual HRESULT STDMETHODCALLTYPE GetPropertyType( 01668 /* [out] */ __RPC__out VARTYPE *pvartype) = 0; 01669 01670 virtual HRESULT STDMETHODCALLTYPE GetDisplayName( 01671 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName) = 0; 01672 01673 virtual HRESULT STDMETHODCALLTYPE GetEditInvitation( 01674 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite) = 0; 01675 01676 virtual HRESULT STDMETHODCALLTYPE GetTypeFlags( 01677 /* [in] */ PROPDESC_TYPE_FLAGS mask, 01678 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags) = 0; 01679 01680 virtual HRESULT STDMETHODCALLTYPE GetViewFlags( 01681 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags) = 0; 01682 01683 virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnWidth( 01684 /* [out] */ __RPC__out UINT *pcxChars) = 0; 01685 01686 virtual HRESULT STDMETHODCALLTYPE GetDisplayType( 01687 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype) = 0; 01688 01689 virtual HRESULT STDMETHODCALLTYPE GetColumnState( 01690 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags) = 0; 01691 01692 virtual HRESULT STDMETHODCALLTYPE GetGroupingRange( 01693 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr) = 0; 01694 01695 virtual HRESULT STDMETHODCALLTYPE GetRelativeDescriptionType( 01696 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) = 0; 01697 01698 virtual HRESULT STDMETHODCALLTYPE GetRelativeDescription( 01699 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 01700 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 01701 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 01702 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2) = 0; 01703 01704 virtual HRESULT STDMETHODCALLTYPE GetSortDescription( 01705 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd) = 0; 01706 01707 virtual HRESULT STDMETHODCALLTYPE GetSortDescriptionLabel( 01708 /* [in] */ BOOL fDescending, 01709 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription) = 0; 01710 01711 virtual HRESULT STDMETHODCALLTYPE GetAggregationType( 01712 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype) = 0; 01713 01714 virtual HRESULT STDMETHODCALLTYPE GetConditionType( 01715 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 01716 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault) = 0; 01717 01718 virtual HRESULT STDMETHODCALLTYPE GetEnumTypeList( 01719 /* [in] */ __RPC__in REFIID riid, 01720 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 01721 01722 virtual /* [local] */ HRESULT STDMETHODCALLTYPE CoerceToCanonicalValue( 01723 /* [out][in] */ PROPVARIANT *ppropvar) = 0; 01724 01725 virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( 01726 /* [in] */ __RPC__in REFPROPVARIANT propvar, 01727 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 01728 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay) = 0; 01729 01730 virtual HRESULT STDMETHODCALLTYPE IsValueCanonical( 01731 /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0; 01732 01733 }; 01734 01735 #else /* C style interface */ 01736 01737 typedef struct IPropertyDescriptionVtbl 01738 { 01739 BEGIN_INTERFACE 01740 01741 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 01742 IPropertyDescription * This, 01743 /* [in] */ __RPC__in REFIID riid, 01744 /* [iid_is][out] */ 01745 __RPC__deref_out void **ppvObject); 01746 01747 ULONG ( STDMETHODCALLTYPE *AddRef )( 01748 IPropertyDescription * This); 01749 01750 ULONG ( STDMETHODCALLTYPE *Release )( 01751 IPropertyDescription * This); 01752 01753 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 01754 IPropertyDescription * This, 01755 /* [out] */ __RPC__out PROPERTYKEY *pkey); 01756 01757 HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )( 01758 IPropertyDescription * This, 01759 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 01760 01761 HRESULT ( STDMETHODCALLTYPE *GetPropertyType )( 01762 IPropertyDescription * This, 01763 /* [out] */ __RPC__out VARTYPE *pvartype); 01764 01765 HRESULT ( STDMETHODCALLTYPE *GetDisplayName )( 01766 IPropertyDescription * This, 01767 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 01768 01769 HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )( 01770 IPropertyDescription * This, 01771 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite); 01772 01773 HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )( 01774 IPropertyDescription * This, 01775 /* [in] */ PROPDESC_TYPE_FLAGS mask, 01776 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags); 01777 01778 HRESULT ( STDMETHODCALLTYPE *GetViewFlags )( 01779 IPropertyDescription * This, 01780 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags); 01781 01782 HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )( 01783 IPropertyDescription * This, 01784 /* [out] */ __RPC__out UINT *pcxChars); 01785 01786 HRESULT ( STDMETHODCALLTYPE *GetDisplayType )( 01787 IPropertyDescription * This, 01788 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype); 01789 01790 HRESULT ( STDMETHODCALLTYPE *GetColumnState )( 01791 IPropertyDescription * This, 01792 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags); 01793 01794 HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )( 01795 IPropertyDescription * This, 01796 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr); 01797 01798 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )( 01799 IPropertyDescription * This, 01800 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); 01801 01802 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )( 01803 IPropertyDescription * This, 01804 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 01805 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 01806 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 01807 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2); 01808 01809 HRESULT ( STDMETHODCALLTYPE *GetSortDescription )( 01810 IPropertyDescription * This, 01811 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd); 01812 01813 HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )( 01814 IPropertyDescription * This, 01815 /* [in] */ BOOL fDescending, 01816 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription); 01817 01818 HRESULT ( STDMETHODCALLTYPE *GetAggregationType )( 01819 IPropertyDescription * This, 01820 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype); 01821 01822 HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 01823 IPropertyDescription * This, 01824 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 01825 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault); 01826 01827 HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )( 01828 IPropertyDescription * This, 01829 /* [in] */ __RPC__in REFIID riid, 01830 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 01831 01832 /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )( 01833 IPropertyDescription * This, 01834 /* [out][in] */ PROPVARIANT *ppropvar); 01835 01836 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 01837 IPropertyDescription * This, 01838 /* [in] */ __RPC__in REFPROPVARIANT propvar, 01839 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 01840 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 01841 01842 HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )( 01843 IPropertyDescription * This, 01844 /* [in] */ __RPC__in REFPROPVARIANT propvar); 01845 01846 END_INTERFACE 01847 } IPropertyDescriptionVtbl; 01848 01849 interface IPropertyDescription 01850 { 01851 CONST_VTBL struct IPropertyDescriptionVtbl *lpVtbl; 01852 }; 01853 01854 01855 01856 #ifdef COBJMACROS 01857 01858 01859 #define IPropertyDescription_QueryInterface(This,riid,ppvObject) \ 01860 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 01861 01862 #define IPropertyDescription_AddRef(This) \ 01863 ( (This)->lpVtbl -> AddRef(This) ) 01864 01865 #define IPropertyDescription_Release(This) \ 01866 ( (This)->lpVtbl -> Release(This) ) 01867 01868 01869 #define IPropertyDescription_GetPropertyKey(This,pkey) \ 01870 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 01871 01872 #define IPropertyDescription_GetCanonicalName(This,ppszName) \ 01873 ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) ) 01874 01875 #define IPropertyDescription_GetPropertyType(This,pvartype) \ 01876 ( (This)->lpVtbl -> GetPropertyType(This,pvartype) ) 01877 01878 #define IPropertyDescription_GetDisplayName(This,ppszName) \ 01879 ( (This)->lpVtbl -> GetDisplayName(This,ppszName) ) 01880 01881 #define IPropertyDescription_GetEditInvitation(This,ppszInvite) \ 01882 ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) ) 01883 01884 #define IPropertyDescription_GetTypeFlags(This,mask,ppdtFlags) \ 01885 ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) ) 01886 01887 #define IPropertyDescription_GetViewFlags(This,ppdvFlags) \ 01888 ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) ) 01889 01890 #define IPropertyDescription_GetDefaultColumnWidth(This,pcxChars) \ 01891 ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) ) 01892 01893 #define IPropertyDescription_GetDisplayType(This,pdisplaytype) \ 01894 ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) ) 01895 01896 #define IPropertyDescription_GetColumnState(This,pcsFlags) \ 01897 ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) ) 01898 01899 #define IPropertyDescription_GetGroupingRange(This,pgr) \ 01900 ( (This)->lpVtbl -> GetGroupingRange(This,pgr) ) 01901 01902 #define IPropertyDescription_GetRelativeDescriptionType(This,prdt) \ 01903 ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) ) 01904 01905 #define IPropertyDescription_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \ 01906 ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) ) 01907 01908 #define IPropertyDescription_GetSortDescription(This,psd) \ 01909 ( (This)->lpVtbl -> GetSortDescription(This,psd) ) 01910 01911 #define IPropertyDescription_GetSortDescriptionLabel(This,fDescending,ppszDescription) \ 01912 ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) ) 01913 01914 #define IPropertyDescription_GetAggregationType(This,paggtype) \ 01915 ( (This)->lpVtbl -> GetAggregationType(This,paggtype) ) 01916 01917 #define IPropertyDescription_GetConditionType(This,pcontype,popDefault) \ 01918 ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) ) 01919 01920 #define IPropertyDescription_GetEnumTypeList(This,riid,ppv) \ 01921 ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) ) 01922 01923 #define IPropertyDescription_CoerceToCanonicalValue(This,ppropvar) \ 01924 ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) ) 01925 01926 #define IPropertyDescription_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \ 01927 ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) ) 01928 01929 #define IPropertyDescription_IsValueCanonical(This,propvar) \ 01930 ( (This)->lpVtbl -> IsValueCanonical(This,propvar) ) 01931 01932 #endif /* COBJMACROS */ 01933 01934 01935 #endif /* C style interface */ 01936 01937 01938 01939 /* [call_as] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_RemoteCoerceToCanonicalValue_Proxy( 01940 IPropertyDescription * This, 01941 /* [in] */ __RPC__in REFPROPVARIANT propvar, 01942 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 01943 01944 01945 void __RPC_STUB IPropertyDescription_RemoteCoerceToCanonicalValue_Stub( 01946 IRpcStubBuffer *This, 01947 IRpcChannelBuffer *_pRpcChannelBuffer, 01948 PRPC_MESSAGE _pRpcMessage, 01949 DWORD *_pdwStubPhase); 01950 01951 01952 01953 #endif /* __IPropertyDescription_INTERFACE_DEFINED__ */ 01954 01955 01956 #ifndef __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ 01957 #define __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ 01958 01959 /* interface IPropertyDescriptionAliasInfo */ 01960 /* [unique][object][uuid] */ 01961 01962 01963 EXTERN_C const IID IID_IPropertyDescriptionAliasInfo; 01964 01965 #if defined(__cplusplus) && !defined(CINTERFACE) 01966 01967 MIDL_INTERFACE("f67104fc-2af9-46fd-b32d-243c1404f3d1") 01968 IPropertyDescriptionAliasInfo : public IPropertyDescription 01969 { 01970 public: 01971 virtual HRESULT STDMETHODCALLTYPE GetSortByAlias( 01972 /* [in] */ __RPC__in REFIID riid, 01973 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 01974 01975 virtual HRESULT STDMETHODCALLTYPE GetAdditionalSortByAliases( 01976 /* [in] */ __RPC__in REFIID riid, 01977 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 01978 01979 }; 01980 01981 #else /* C style interface */ 01982 01983 typedef struct IPropertyDescriptionAliasInfoVtbl 01984 { 01985 BEGIN_INTERFACE 01986 01987 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 01988 IPropertyDescriptionAliasInfo * This, 01989 /* [in] */ __RPC__in REFIID riid, 01990 /* [iid_is][out] */ 01991 __RPC__deref_out void **ppvObject); 01992 01993 ULONG ( STDMETHODCALLTYPE *AddRef )( 01994 IPropertyDescriptionAliasInfo * This); 01995 01996 ULONG ( STDMETHODCALLTYPE *Release )( 01997 IPropertyDescriptionAliasInfo * This); 01998 01999 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 02000 IPropertyDescriptionAliasInfo * This, 02001 /* [out] */ __RPC__out PROPERTYKEY *pkey); 02002 02003 HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )( 02004 IPropertyDescriptionAliasInfo * This, 02005 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 02006 02007 HRESULT ( STDMETHODCALLTYPE *GetPropertyType )( 02008 IPropertyDescriptionAliasInfo * This, 02009 /* [out] */ __RPC__out VARTYPE *pvartype); 02010 02011 HRESULT ( STDMETHODCALLTYPE *GetDisplayName )( 02012 IPropertyDescriptionAliasInfo * This, 02013 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 02014 02015 HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )( 02016 IPropertyDescriptionAliasInfo * This, 02017 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite); 02018 02019 HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )( 02020 IPropertyDescriptionAliasInfo * This, 02021 /* [in] */ PROPDESC_TYPE_FLAGS mask, 02022 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags); 02023 02024 HRESULT ( STDMETHODCALLTYPE *GetViewFlags )( 02025 IPropertyDescriptionAliasInfo * This, 02026 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags); 02027 02028 HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )( 02029 IPropertyDescriptionAliasInfo * This, 02030 /* [out] */ __RPC__out UINT *pcxChars); 02031 02032 HRESULT ( STDMETHODCALLTYPE *GetDisplayType )( 02033 IPropertyDescriptionAliasInfo * This, 02034 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype); 02035 02036 HRESULT ( STDMETHODCALLTYPE *GetColumnState )( 02037 IPropertyDescriptionAliasInfo * This, 02038 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags); 02039 02040 HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )( 02041 IPropertyDescriptionAliasInfo * This, 02042 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr); 02043 02044 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )( 02045 IPropertyDescriptionAliasInfo * This, 02046 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); 02047 02048 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )( 02049 IPropertyDescriptionAliasInfo * This, 02050 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 02051 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 02052 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 02053 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2); 02054 02055 HRESULT ( STDMETHODCALLTYPE *GetSortDescription )( 02056 IPropertyDescriptionAliasInfo * This, 02057 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd); 02058 02059 HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )( 02060 IPropertyDescriptionAliasInfo * This, 02061 /* [in] */ BOOL fDescending, 02062 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription); 02063 02064 HRESULT ( STDMETHODCALLTYPE *GetAggregationType )( 02065 IPropertyDescriptionAliasInfo * This, 02066 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype); 02067 02068 HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 02069 IPropertyDescriptionAliasInfo * This, 02070 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 02071 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault); 02072 02073 HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )( 02074 IPropertyDescriptionAliasInfo * This, 02075 /* [in] */ __RPC__in REFIID riid, 02076 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02077 02078 /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )( 02079 IPropertyDescriptionAliasInfo * This, 02080 /* [out][in] */ PROPVARIANT *ppropvar); 02081 02082 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 02083 IPropertyDescriptionAliasInfo * This, 02084 /* [in] */ __RPC__in REFPROPVARIANT propvar, 02085 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 02086 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 02087 02088 HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )( 02089 IPropertyDescriptionAliasInfo * This, 02090 /* [in] */ __RPC__in REFPROPVARIANT propvar); 02091 02092 HRESULT ( STDMETHODCALLTYPE *GetSortByAlias )( 02093 IPropertyDescriptionAliasInfo * This, 02094 /* [in] */ __RPC__in REFIID riid, 02095 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02096 02097 HRESULT ( STDMETHODCALLTYPE *GetAdditionalSortByAliases )( 02098 IPropertyDescriptionAliasInfo * This, 02099 /* [in] */ __RPC__in REFIID riid, 02100 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02101 02102 END_INTERFACE 02103 } IPropertyDescriptionAliasInfoVtbl; 02104 02105 interface IPropertyDescriptionAliasInfo 02106 { 02107 CONST_VTBL struct IPropertyDescriptionAliasInfoVtbl *lpVtbl; 02108 }; 02109 02110 02111 02112 #ifdef COBJMACROS 02113 02114 02115 #define IPropertyDescriptionAliasInfo_QueryInterface(This,riid,ppvObject) \ 02116 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 02117 02118 #define IPropertyDescriptionAliasInfo_AddRef(This) \ 02119 ( (This)->lpVtbl -> AddRef(This) ) 02120 02121 #define IPropertyDescriptionAliasInfo_Release(This) \ 02122 ( (This)->lpVtbl -> Release(This) ) 02123 02124 02125 #define IPropertyDescriptionAliasInfo_GetPropertyKey(This,pkey) \ 02126 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 02127 02128 #define IPropertyDescriptionAliasInfo_GetCanonicalName(This,ppszName) \ 02129 ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) ) 02130 02131 #define IPropertyDescriptionAliasInfo_GetPropertyType(This,pvartype) \ 02132 ( (This)->lpVtbl -> GetPropertyType(This,pvartype) ) 02133 02134 #define IPropertyDescriptionAliasInfo_GetDisplayName(This,ppszName) \ 02135 ( (This)->lpVtbl -> GetDisplayName(This,ppszName) ) 02136 02137 #define IPropertyDescriptionAliasInfo_GetEditInvitation(This,ppszInvite) \ 02138 ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) ) 02139 02140 #define IPropertyDescriptionAliasInfo_GetTypeFlags(This,mask,ppdtFlags) \ 02141 ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) ) 02142 02143 #define IPropertyDescriptionAliasInfo_GetViewFlags(This,ppdvFlags) \ 02144 ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) ) 02145 02146 #define IPropertyDescriptionAliasInfo_GetDefaultColumnWidth(This,pcxChars) \ 02147 ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) ) 02148 02149 #define IPropertyDescriptionAliasInfo_GetDisplayType(This,pdisplaytype) \ 02150 ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) ) 02151 02152 #define IPropertyDescriptionAliasInfo_GetColumnState(This,pcsFlags) \ 02153 ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) ) 02154 02155 #define IPropertyDescriptionAliasInfo_GetGroupingRange(This,pgr) \ 02156 ( (This)->lpVtbl -> GetGroupingRange(This,pgr) ) 02157 02158 #define IPropertyDescriptionAliasInfo_GetRelativeDescriptionType(This,prdt) \ 02159 ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) ) 02160 02161 #define IPropertyDescriptionAliasInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \ 02162 ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) ) 02163 02164 #define IPropertyDescriptionAliasInfo_GetSortDescription(This,psd) \ 02165 ( (This)->lpVtbl -> GetSortDescription(This,psd) ) 02166 02167 #define IPropertyDescriptionAliasInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) \ 02168 ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) ) 02169 02170 #define IPropertyDescriptionAliasInfo_GetAggregationType(This,paggtype) \ 02171 ( (This)->lpVtbl -> GetAggregationType(This,paggtype) ) 02172 02173 #define IPropertyDescriptionAliasInfo_GetConditionType(This,pcontype,popDefault) \ 02174 ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) ) 02175 02176 #define IPropertyDescriptionAliasInfo_GetEnumTypeList(This,riid,ppv) \ 02177 ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) ) 02178 02179 #define IPropertyDescriptionAliasInfo_CoerceToCanonicalValue(This,ppropvar) \ 02180 ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) ) 02181 02182 #define IPropertyDescriptionAliasInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \ 02183 ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) ) 02184 02185 #define IPropertyDescriptionAliasInfo_IsValueCanonical(This,propvar) \ 02186 ( (This)->lpVtbl -> IsValueCanonical(This,propvar) ) 02187 02188 02189 #define IPropertyDescriptionAliasInfo_GetSortByAlias(This,riid,ppv) \ 02190 ( (This)->lpVtbl -> GetSortByAlias(This,riid,ppv) ) 02191 02192 #define IPropertyDescriptionAliasInfo_GetAdditionalSortByAliases(This,riid,ppv) \ 02193 ( (This)->lpVtbl -> GetAdditionalSortByAliases(This,riid,ppv) ) 02194 02195 #endif /* COBJMACROS */ 02196 02197 02198 #endif /* C style interface */ 02199 02200 02201 02202 02203 #endif /* __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ */ 02204 02205 02206 #ifndef __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ 02207 #define __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ 02208 02209 /* interface IPropertyDescriptionSearchInfo */ 02210 /* [unique][object][uuid] */ 02211 02212 /* [v1_enum] */ 02213 enum tagPROPDESC_SEARCHINFO_FLAGS 02214 { PDSIF_DEFAULT = 0, 02215 PDSIF_ININVERTEDINDEX = 0x1, 02216 PDSIF_ISCOLUMN = 0x2, 02217 PDSIF_ISCOLUMNSPARSE = 0x4 02218 } ; 02219 typedef int PROPDESC_SEARCHINFO_FLAGS; 02220 02221 typedef /* [v1_enum] */ 02222 enum tagPROPDESC_COLUMNINDEX_TYPE 02223 { PDCIT_NONE = 0, 02224 PDCIT_ONDISK = 1, 02225 PDCIT_INMEMORY = 2 02226 } PROPDESC_COLUMNINDEX_TYPE; 02227 02228 02229 EXTERN_C const IID IID_IPropertyDescriptionSearchInfo; 02230 02231 #if defined(__cplusplus) && !defined(CINTERFACE) 02232 02233 MIDL_INTERFACE("078f91bd-29a2-440f-924e-46a291524520") 02234 IPropertyDescriptionSearchInfo : public IPropertyDescription 02235 { 02236 public: 02237 virtual HRESULT STDMETHODCALLTYPE GetSearchInfoFlags( 02238 /* [out] */ __RPC__out PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags) = 0; 02239 02240 virtual HRESULT STDMETHODCALLTYPE GetColumnIndexType( 02241 /* [out] */ __RPC__out PROPDESC_COLUMNINDEX_TYPE *ppdciType) = 0; 02242 02243 virtual HRESULT STDMETHODCALLTYPE GetProjectionString( 02244 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszProjection) = 0; 02245 02246 virtual HRESULT STDMETHODCALLTYPE GetMaxSize( 02247 /* [out] */ __RPC__out UINT *pcbMaxSize) = 0; 02248 02249 }; 02250 02251 #else /* C style interface */ 02252 02253 typedef struct IPropertyDescriptionSearchInfoVtbl 02254 { 02255 BEGIN_INTERFACE 02256 02257 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 02258 IPropertyDescriptionSearchInfo * This, 02259 /* [in] */ __RPC__in REFIID riid, 02260 /* [iid_is][out] */ 02261 __RPC__deref_out void **ppvObject); 02262 02263 ULONG ( STDMETHODCALLTYPE *AddRef )( 02264 IPropertyDescriptionSearchInfo * This); 02265 02266 ULONG ( STDMETHODCALLTYPE *Release )( 02267 IPropertyDescriptionSearchInfo * This); 02268 02269 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 02270 IPropertyDescriptionSearchInfo * This, 02271 /* [out] */ __RPC__out PROPERTYKEY *pkey); 02272 02273 HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )( 02274 IPropertyDescriptionSearchInfo * This, 02275 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 02276 02277 HRESULT ( STDMETHODCALLTYPE *GetPropertyType )( 02278 IPropertyDescriptionSearchInfo * This, 02279 /* [out] */ __RPC__out VARTYPE *pvartype); 02280 02281 HRESULT ( STDMETHODCALLTYPE *GetDisplayName )( 02282 IPropertyDescriptionSearchInfo * This, 02283 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 02284 02285 HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )( 02286 IPropertyDescriptionSearchInfo * This, 02287 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite); 02288 02289 HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )( 02290 IPropertyDescriptionSearchInfo * This, 02291 /* [in] */ PROPDESC_TYPE_FLAGS mask, 02292 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags); 02293 02294 HRESULT ( STDMETHODCALLTYPE *GetViewFlags )( 02295 IPropertyDescriptionSearchInfo * This, 02296 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags); 02297 02298 HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )( 02299 IPropertyDescriptionSearchInfo * This, 02300 /* [out] */ __RPC__out UINT *pcxChars); 02301 02302 HRESULT ( STDMETHODCALLTYPE *GetDisplayType )( 02303 IPropertyDescriptionSearchInfo * This, 02304 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype); 02305 02306 HRESULT ( STDMETHODCALLTYPE *GetColumnState )( 02307 IPropertyDescriptionSearchInfo * This, 02308 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags); 02309 02310 HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )( 02311 IPropertyDescriptionSearchInfo * This, 02312 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr); 02313 02314 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )( 02315 IPropertyDescriptionSearchInfo * This, 02316 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); 02317 02318 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )( 02319 IPropertyDescriptionSearchInfo * This, 02320 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 02321 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 02322 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 02323 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2); 02324 02325 HRESULT ( STDMETHODCALLTYPE *GetSortDescription )( 02326 IPropertyDescriptionSearchInfo * This, 02327 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd); 02328 02329 HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )( 02330 IPropertyDescriptionSearchInfo * This, 02331 /* [in] */ BOOL fDescending, 02332 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription); 02333 02334 HRESULT ( STDMETHODCALLTYPE *GetAggregationType )( 02335 IPropertyDescriptionSearchInfo * This, 02336 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype); 02337 02338 HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 02339 IPropertyDescriptionSearchInfo * This, 02340 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 02341 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault); 02342 02343 HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )( 02344 IPropertyDescriptionSearchInfo * This, 02345 /* [in] */ __RPC__in REFIID riid, 02346 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02347 02348 /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )( 02349 IPropertyDescriptionSearchInfo * This, 02350 /* [out][in] */ PROPVARIANT *ppropvar); 02351 02352 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 02353 IPropertyDescriptionSearchInfo * This, 02354 /* [in] */ __RPC__in REFPROPVARIANT propvar, 02355 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 02356 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 02357 02358 HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )( 02359 IPropertyDescriptionSearchInfo * This, 02360 /* [in] */ __RPC__in REFPROPVARIANT propvar); 02361 02362 HRESULT ( STDMETHODCALLTYPE *GetSearchInfoFlags )( 02363 IPropertyDescriptionSearchInfo * This, 02364 /* [out] */ __RPC__out PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags); 02365 02366 HRESULT ( STDMETHODCALLTYPE *GetColumnIndexType )( 02367 IPropertyDescriptionSearchInfo * This, 02368 /* [out] */ __RPC__out PROPDESC_COLUMNINDEX_TYPE *ppdciType); 02369 02370 HRESULT ( STDMETHODCALLTYPE *GetProjectionString )( 02371 IPropertyDescriptionSearchInfo * This, 02372 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszProjection); 02373 02374 HRESULT ( STDMETHODCALLTYPE *GetMaxSize )( 02375 IPropertyDescriptionSearchInfo * This, 02376 /* [out] */ __RPC__out UINT *pcbMaxSize); 02377 02378 END_INTERFACE 02379 } IPropertyDescriptionSearchInfoVtbl; 02380 02381 interface IPropertyDescriptionSearchInfo 02382 { 02383 CONST_VTBL struct IPropertyDescriptionSearchInfoVtbl *lpVtbl; 02384 }; 02385 02386 02387 02388 #ifdef COBJMACROS 02389 02390 02391 #define IPropertyDescriptionSearchInfo_QueryInterface(This,riid,ppvObject) \ 02392 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 02393 02394 #define IPropertyDescriptionSearchInfo_AddRef(This) \ 02395 ( (This)->lpVtbl -> AddRef(This) ) 02396 02397 #define IPropertyDescriptionSearchInfo_Release(This) \ 02398 ( (This)->lpVtbl -> Release(This) ) 02399 02400 02401 #define IPropertyDescriptionSearchInfo_GetPropertyKey(This,pkey) \ 02402 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 02403 02404 #define IPropertyDescriptionSearchInfo_GetCanonicalName(This,ppszName) \ 02405 ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) ) 02406 02407 #define IPropertyDescriptionSearchInfo_GetPropertyType(This,pvartype) \ 02408 ( (This)->lpVtbl -> GetPropertyType(This,pvartype) ) 02409 02410 #define IPropertyDescriptionSearchInfo_GetDisplayName(This,ppszName) \ 02411 ( (This)->lpVtbl -> GetDisplayName(This,ppszName) ) 02412 02413 #define IPropertyDescriptionSearchInfo_GetEditInvitation(This,ppszInvite) \ 02414 ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) ) 02415 02416 #define IPropertyDescriptionSearchInfo_GetTypeFlags(This,mask,ppdtFlags) \ 02417 ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) ) 02418 02419 #define IPropertyDescriptionSearchInfo_GetViewFlags(This,ppdvFlags) \ 02420 ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) ) 02421 02422 #define IPropertyDescriptionSearchInfo_GetDefaultColumnWidth(This,pcxChars) \ 02423 ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) ) 02424 02425 #define IPropertyDescriptionSearchInfo_GetDisplayType(This,pdisplaytype) \ 02426 ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) ) 02427 02428 #define IPropertyDescriptionSearchInfo_GetColumnState(This,pcsFlags) \ 02429 ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) ) 02430 02431 #define IPropertyDescriptionSearchInfo_GetGroupingRange(This,pgr) \ 02432 ( (This)->lpVtbl -> GetGroupingRange(This,pgr) ) 02433 02434 #define IPropertyDescriptionSearchInfo_GetRelativeDescriptionType(This,prdt) \ 02435 ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) ) 02436 02437 #define IPropertyDescriptionSearchInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \ 02438 ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) ) 02439 02440 #define IPropertyDescriptionSearchInfo_GetSortDescription(This,psd) \ 02441 ( (This)->lpVtbl -> GetSortDescription(This,psd) ) 02442 02443 #define IPropertyDescriptionSearchInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) \ 02444 ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) ) 02445 02446 #define IPropertyDescriptionSearchInfo_GetAggregationType(This,paggtype) \ 02447 ( (This)->lpVtbl -> GetAggregationType(This,paggtype) ) 02448 02449 #define IPropertyDescriptionSearchInfo_GetConditionType(This,pcontype,popDefault) \ 02450 ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) ) 02451 02452 #define IPropertyDescriptionSearchInfo_GetEnumTypeList(This,riid,ppv) \ 02453 ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) ) 02454 02455 #define IPropertyDescriptionSearchInfo_CoerceToCanonicalValue(This,ppropvar) \ 02456 ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) ) 02457 02458 #define IPropertyDescriptionSearchInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \ 02459 ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) ) 02460 02461 #define IPropertyDescriptionSearchInfo_IsValueCanonical(This,propvar) \ 02462 ( (This)->lpVtbl -> IsValueCanonical(This,propvar) ) 02463 02464 02465 #define IPropertyDescriptionSearchInfo_GetSearchInfoFlags(This,ppdsiFlags) \ 02466 ( (This)->lpVtbl -> GetSearchInfoFlags(This,ppdsiFlags) ) 02467 02468 #define IPropertyDescriptionSearchInfo_GetColumnIndexType(This,ppdciType) \ 02469 ( (This)->lpVtbl -> GetColumnIndexType(This,ppdciType) ) 02470 02471 #define IPropertyDescriptionSearchInfo_GetProjectionString(This,ppszProjection) \ 02472 ( (This)->lpVtbl -> GetProjectionString(This,ppszProjection) ) 02473 02474 #define IPropertyDescriptionSearchInfo_GetMaxSize(This,pcbMaxSize) \ 02475 ( (This)->lpVtbl -> GetMaxSize(This,pcbMaxSize) ) 02476 02477 #endif /* COBJMACROS */ 02478 02479 02480 #endif /* C style interface */ 02481 02482 02483 02484 02485 #endif /* __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ */ 02486 02487 02488 /* interface __MIDL_itf_propsys_0000_0014 */ 02489 /* [local] */ 02490 02491 /* [v1_enum] */ 02492 enum tagPROPDESC_ENUMFILTER 02493 { PDEF_ALL = 0, 02494 PDEF_SYSTEM = 1, 02495 PDEF_NONSYSTEM = 2, 02496 PDEF_VIEWABLE = 3, 02497 PDEF_QUERYABLE = 4, 02498 PDEF_INFULLTEXTQUERY = 5, 02499 PDEF_COLUMN = 6 02500 } ; 02501 typedef enum tagPROPDESC_ENUMFILTER PROPDESC_ENUMFILTER; 02502 02503 02504 02505 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0014_v0_0_c_ifspec; 02506 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0014_v0_0_s_ifspec; 02507 02508 #ifndef __IPropertySystem_INTERFACE_DEFINED__ 02509 #define __IPropertySystem_INTERFACE_DEFINED__ 02510 02511 /* interface IPropertySystem */ 02512 /* [unique][object][uuid] */ 02513 02514 02515 EXTERN_C const IID IID_IPropertySystem; 02516 02517 #if defined(__cplusplus) && !defined(CINTERFACE) 02518 02519 MIDL_INTERFACE("ca724e8a-c3e6-442b-88a4-6fb0db8035a3") 02520 IPropertySystem : public IUnknown 02521 { 02522 public: 02523 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescription( 02524 /* [in] */ __RPC__in REFPROPERTYKEY propkey, 02525 /* [in] */ __RPC__in REFIID riid, 02526 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02527 02528 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionByName( 02529 /* [string][in] */ __RPC__in LPCWSTR pszCanonicalName, 02530 /* [in] */ __RPC__in REFIID riid, 02531 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02532 02533 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionListFromString( 02534 /* [string][in] */ __RPC__in LPCWSTR pszPropList, 02535 /* [in] */ __RPC__in REFIID riid, 02536 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02537 02538 virtual HRESULT STDMETHODCALLTYPE EnumeratePropertyDescriptions( 02539 /* [in] */ PROPDESC_ENUMFILTER filterOn, 02540 /* [in] */ __RPC__in REFIID riid, 02541 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02542 02543 virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( 02544 /* [in] */ __RPC__in REFPROPERTYKEY key, 02545 /* [in] */ __RPC__in REFPROPVARIANT propvar, 02546 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 02547 /* [size_is][string][out] */ __RPC__out_ecount_full_string(cchText) LPWSTR pszText, 02548 /* [in] */ DWORD cchText) = 0; 02549 02550 virtual HRESULT STDMETHODCALLTYPE FormatForDisplayAlloc( 02551 /* [in] */ __RPC__in REFPROPERTYKEY key, 02552 /* [in] */ __RPC__in REFPROPVARIANT propvar, 02553 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 02554 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay) = 0; 02555 02556 virtual HRESULT STDMETHODCALLTYPE RegisterPropertySchema( 02557 /* [string][in] */ __RPC__in LPCWSTR pszPath) = 0; 02558 02559 virtual HRESULT STDMETHODCALLTYPE UnregisterPropertySchema( 02560 /* [string][in] */ __RPC__in LPCWSTR pszPath) = 0; 02561 02562 virtual HRESULT STDMETHODCALLTYPE RefreshPropertySchema( void) = 0; 02563 02564 }; 02565 02566 #else /* C style interface */ 02567 02568 typedef struct IPropertySystemVtbl 02569 { 02570 BEGIN_INTERFACE 02571 02572 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 02573 IPropertySystem * This, 02574 /* [in] */ __RPC__in REFIID riid, 02575 /* [iid_is][out] */ 02576 __RPC__deref_out void **ppvObject); 02577 02578 ULONG ( STDMETHODCALLTYPE *AddRef )( 02579 IPropertySystem * This); 02580 02581 ULONG ( STDMETHODCALLTYPE *Release )( 02582 IPropertySystem * This); 02583 02584 HRESULT ( STDMETHODCALLTYPE *GetPropertyDescription )( 02585 IPropertySystem * This, 02586 /* [in] */ __RPC__in REFPROPERTYKEY propkey, 02587 /* [in] */ __RPC__in REFIID riid, 02588 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02589 02590 HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionByName )( 02591 IPropertySystem * This, 02592 /* [string][in] */ __RPC__in LPCWSTR pszCanonicalName, 02593 /* [in] */ __RPC__in REFIID riid, 02594 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02595 02596 HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionListFromString )( 02597 IPropertySystem * This, 02598 /* [string][in] */ __RPC__in LPCWSTR pszPropList, 02599 /* [in] */ __RPC__in REFIID riid, 02600 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02601 02602 HRESULT ( STDMETHODCALLTYPE *EnumeratePropertyDescriptions )( 02603 IPropertySystem * This, 02604 /* [in] */ PROPDESC_ENUMFILTER filterOn, 02605 /* [in] */ __RPC__in REFIID riid, 02606 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02607 02608 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 02609 IPropertySystem * This, 02610 /* [in] */ __RPC__in REFPROPERTYKEY key, 02611 /* [in] */ __RPC__in REFPROPVARIANT propvar, 02612 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 02613 /* [size_is][string][out] */ __RPC__out_ecount_full_string(cchText) LPWSTR pszText, 02614 /* [in] */ DWORD cchText); 02615 02616 HRESULT ( STDMETHODCALLTYPE *FormatForDisplayAlloc )( 02617 IPropertySystem * This, 02618 /* [in] */ __RPC__in REFPROPERTYKEY key, 02619 /* [in] */ __RPC__in REFPROPVARIANT propvar, 02620 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 02621 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 02622 02623 HRESULT ( STDMETHODCALLTYPE *RegisterPropertySchema )( 02624 IPropertySystem * This, 02625 /* [string][in] */ __RPC__in LPCWSTR pszPath); 02626 02627 HRESULT ( STDMETHODCALLTYPE *UnregisterPropertySchema )( 02628 IPropertySystem * This, 02629 /* [string][in] */ __RPC__in LPCWSTR pszPath); 02630 02631 HRESULT ( STDMETHODCALLTYPE *RefreshPropertySchema )( 02632 IPropertySystem * This); 02633 02634 END_INTERFACE 02635 } IPropertySystemVtbl; 02636 02637 interface IPropertySystem 02638 { 02639 CONST_VTBL struct IPropertySystemVtbl *lpVtbl; 02640 }; 02641 02642 02643 02644 #ifdef COBJMACROS 02645 02646 02647 #define IPropertySystem_QueryInterface(This,riid,ppvObject) \ 02648 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 02649 02650 #define IPropertySystem_AddRef(This) \ 02651 ( (This)->lpVtbl -> AddRef(This) ) 02652 02653 #define IPropertySystem_Release(This) \ 02654 ( (This)->lpVtbl -> Release(This) ) 02655 02656 02657 #define IPropertySystem_GetPropertyDescription(This,propkey,riid,ppv) \ 02658 ( (This)->lpVtbl -> GetPropertyDescription(This,propkey,riid,ppv) ) 02659 02660 #define IPropertySystem_GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) \ 02661 ( (This)->lpVtbl -> GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) ) 02662 02663 #define IPropertySystem_GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) \ 02664 ( (This)->lpVtbl -> GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) ) 02665 02666 #define IPropertySystem_EnumeratePropertyDescriptions(This,filterOn,riid,ppv) \ 02667 ( (This)->lpVtbl -> EnumeratePropertyDescriptions(This,filterOn,riid,ppv) ) 02668 02669 #define IPropertySystem_FormatForDisplay(This,key,propvar,pdff,pszText,cchText) \ 02670 ( (This)->lpVtbl -> FormatForDisplay(This,key,propvar,pdff,pszText,cchText) ) 02671 02672 #define IPropertySystem_FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) \ 02673 ( (This)->lpVtbl -> FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) ) 02674 02675 #define IPropertySystem_RegisterPropertySchema(This,pszPath) \ 02676 ( (This)->lpVtbl -> RegisterPropertySchema(This,pszPath) ) 02677 02678 #define IPropertySystem_UnregisterPropertySchema(This,pszPath) \ 02679 ( (This)->lpVtbl -> UnregisterPropertySchema(This,pszPath) ) 02680 02681 #define IPropertySystem_RefreshPropertySchema(This) \ 02682 ( (This)->lpVtbl -> RefreshPropertySchema(This) ) 02683 02684 #endif /* COBJMACROS */ 02685 02686 02687 #endif /* C style interface */ 02688 02689 02690 02691 02692 #endif /* __IPropertySystem_INTERFACE_DEFINED__ */ 02693 02694 02695 #ifndef __IPropertyDescriptionList_INTERFACE_DEFINED__ 02696 #define __IPropertyDescriptionList_INTERFACE_DEFINED__ 02697 02698 /* interface IPropertyDescriptionList */ 02699 /* [unique][object][uuid] */ 02700 02701 02702 EXTERN_C const IID IID_IPropertyDescriptionList; 02703 02704 #if defined(__cplusplus) && !defined(CINTERFACE) 02705 02706 MIDL_INTERFACE("1f9fc1d0-c39b-4b26-817f-011967d3440e") 02707 IPropertyDescriptionList : public IUnknown 02708 { 02709 public: 02710 virtual HRESULT STDMETHODCALLTYPE GetCount( 02711 /* [out] */ __RPC__out UINT *pcElem) = 0; 02712 02713 virtual HRESULT STDMETHODCALLTYPE GetAt( 02714 /* [in] */ UINT iElem, 02715 /* [in] */ __RPC__in REFIID riid, 02716 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02717 02718 }; 02719 02720 #else /* C style interface */ 02721 02722 typedef struct IPropertyDescriptionListVtbl 02723 { 02724 BEGIN_INTERFACE 02725 02726 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 02727 IPropertyDescriptionList * This, 02728 /* [in] */ __RPC__in REFIID riid, 02729 /* [iid_is][out] */ 02730 __RPC__deref_out void **ppvObject); 02731 02732 ULONG ( STDMETHODCALLTYPE *AddRef )( 02733 IPropertyDescriptionList * This); 02734 02735 ULONG ( STDMETHODCALLTYPE *Release )( 02736 IPropertyDescriptionList * This); 02737 02738 HRESULT ( STDMETHODCALLTYPE *GetCount )( 02739 IPropertyDescriptionList * This, 02740 /* [out] */ __RPC__out UINT *pcElem); 02741 02742 HRESULT ( STDMETHODCALLTYPE *GetAt )( 02743 IPropertyDescriptionList * This, 02744 /* [in] */ UINT iElem, 02745 /* [in] */ __RPC__in REFIID riid, 02746 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02747 02748 END_INTERFACE 02749 } IPropertyDescriptionListVtbl; 02750 02751 interface IPropertyDescriptionList 02752 { 02753 CONST_VTBL struct IPropertyDescriptionListVtbl *lpVtbl; 02754 }; 02755 02756 02757 02758 #ifdef COBJMACROS 02759 02760 02761 #define IPropertyDescriptionList_QueryInterface(This,riid,ppvObject) \ 02762 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 02763 02764 #define IPropertyDescriptionList_AddRef(This) \ 02765 ( (This)->lpVtbl -> AddRef(This) ) 02766 02767 #define IPropertyDescriptionList_Release(This) \ 02768 ( (This)->lpVtbl -> Release(This) ) 02769 02770 02771 #define IPropertyDescriptionList_GetCount(This,pcElem) \ 02772 ( (This)->lpVtbl -> GetCount(This,pcElem) ) 02773 02774 #define IPropertyDescriptionList_GetAt(This,iElem,riid,ppv) \ 02775 ( (This)->lpVtbl -> GetAt(This,iElem,riid,ppv) ) 02776 02777 #endif /* COBJMACROS */ 02778 02779 02780 #endif /* C style interface */ 02781 02782 02783 02784 02785 #endif /* __IPropertyDescriptionList_INTERFACE_DEFINED__ */ 02786 02787 02788 #ifndef __IPropertyStoreFactory_INTERFACE_DEFINED__ 02789 #define __IPropertyStoreFactory_INTERFACE_DEFINED__ 02790 02791 /* interface IPropertyStoreFactory */ 02792 /* [unique][object][uuid] */ 02793 02794 02795 EXTERN_C const IID IID_IPropertyStoreFactory; 02796 02797 #if defined(__cplusplus) && !defined(CINTERFACE) 02798 02799 MIDL_INTERFACE("bc110b6d-57e8-4148-a9c6-91015ab2f3a5") 02800 IPropertyStoreFactory : public IUnknown 02801 { 02802 public: 02803 virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( 02804 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02805 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory, 02806 /* [in] */ __RPC__in REFIID riid, 02807 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02808 02809 virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys( 02810 /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys, 02811 /* [in] */ UINT cKeys, 02812 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02813 /* [in] */ __RPC__in REFIID riid, 02814 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02815 02816 }; 02817 02818 #else /* C style interface */ 02819 02820 typedef struct IPropertyStoreFactoryVtbl 02821 { 02822 BEGIN_INTERFACE 02823 02824 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 02825 IPropertyStoreFactory * This, 02826 /* [in] */ __RPC__in REFIID riid, 02827 /* [iid_is][out] */ 02828 __RPC__deref_out void **ppvObject); 02829 02830 ULONG ( STDMETHODCALLTYPE *AddRef )( 02831 IPropertyStoreFactory * This); 02832 02833 ULONG ( STDMETHODCALLTYPE *Release )( 02834 IPropertyStoreFactory * This); 02835 02836 HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )( 02837 IPropertyStoreFactory * This, 02838 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02839 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory, 02840 /* [in] */ __RPC__in REFIID riid, 02841 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02842 02843 HRESULT ( STDMETHODCALLTYPE *GetPropertyStoreForKeys )( 02844 IPropertyStoreFactory * This, 02845 /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys, 02846 /* [in] */ UINT cKeys, 02847 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02848 /* [in] */ __RPC__in REFIID riid, 02849 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02850 02851 END_INTERFACE 02852 } IPropertyStoreFactoryVtbl; 02853 02854 interface IPropertyStoreFactory 02855 { 02856 CONST_VTBL struct IPropertyStoreFactoryVtbl *lpVtbl; 02857 }; 02858 02859 02860 02861 #ifdef COBJMACROS 02862 02863 02864 #define IPropertyStoreFactory_QueryInterface(This,riid,ppvObject) \ 02865 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 02866 02867 #define IPropertyStoreFactory_AddRef(This) \ 02868 ( (This)->lpVtbl -> AddRef(This) ) 02869 02870 #define IPropertyStoreFactory_Release(This) \ 02871 ( (This)->lpVtbl -> Release(This) ) 02872 02873 02874 #define IPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) \ 02875 ( (This)->lpVtbl -> GetPropertyStore(This,flags,pUnkFactory,riid,ppv) ) 02876 02877 #define IPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) \ 02878 ( (This)->lpVtbl -> GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) ) 02879 02880 #endif /* COBJMACROS */ 02881 02882 02883 #endif /* C style interface */ 02884 02885 02886 02887 02888 #endif /* __IPropertyStoreFactory_INTERFACE_DEFINED__ */ 02889 02890 02891 #ifndef __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ 02892 #define __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ 02893 02894 /* interface IDelayedPropertyStoreFactory */ 02895 /* [unique][object][uuid] */ 02896 02897 02898 EXTERN_C const IID IID_IDelayedPropertyStoreFactory; 02899 02900 #if defined(__cplusplus) && !defined(CINTERFACE) 02901 02902 MIDL_INTERFACE("40d4577f-e237-4bdb-bd69-58f089431b6a") 02903 IDelayedPropertyStoreFactory : public IPropertyStoreFactory 02904 { 02905 public: 02906 virtual HRESULT STDMETHODCALLTYPE GetDelayedPropertyStore( 02907 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02908 /* [in] */ DWORD dwStoreId, 02909 /* [in] */ __RPC__in REFIID riid, 02910 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 02911 02912 }; 02913 02914 #else /* C style interface */ 02915 02916 typedef struct IDelayedPropertyStoreFactoryVtbl 02917 { 02918 BEGIN_INTERFACE 02919 02920 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 02921 IDelayedPropertyStoreFactory * This, 02922 /* [in] */ __RPC__in REFIID riid, 02923 /* [iid_is][out] */ 02924 __RPC__deref_out void **ppvObject); 02925 02926 ULONG ( STDMETHODCALLTYPE *AddRef )( 02927 IDelayedPropertyStoreFactory * This); 02928 02929 ULONG ( STDMETHODCALLTYPE *Release )( 02930 IDelayedPropertyStoreFactory * This); 02931 02932 HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )( 02933 IDelayedPropertyStoreFactory * This, 02934 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02935 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory, 02936 /* [in] */ __RPC__in REFIID riid, 02937 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02938 02939 HRESULT ( STDMETHODCALLTYPE *GetPropertyStoreForKeys )( 02940 IDelayedPropertyStoreFactory * This, 02941 /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys, 02942 /* [in] */ UINT cKeys, 02943 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02944 /* [in] */ __RPC__in REFIID riid, 02945 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02946 02947 HRESULT ( STDMETHODCALLTYPE *GetDelayedPropertyStore )( 02948 IDelayedPropertyStoreFactory * This, 02949 /* [in] */ GETPROPERTYSTOREFLAGS flags, 02950 /* [in] */ DWORD dwStoreId, 02951 /* [in] */ __RPC__in REFIID riid, 02952 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 02953 02954 END_INTERFACE 02955 } IDelayedPropertyStoreFactoryVtbl; 02956 02957 interface IDelayedPropertyStoreFactory 02958 { 02959 CONST_VTBL struct IDelayedPropertyStoreFactoryVtbl *lpVtbl; 02960 }; 02961 02962 02963 02964 #ifdef COBJMACROS 02965 02966 02967 #define IDelayedPropertyStoreFactory_QueryInterface(This,riid,ppvObject) \ 02968 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 02969 02970 #define IDelayedPropertyStoreFactory_AddRef(This) \ 02971 ( (This)->lpVtbl -> AddRef(This) ) 02972 02973 #define IDelayedPropertyStoreFactory_Release(This) \ 02974 ( (This)->lpVtbl -> Release(This) ) 02975 02976 02977 #define IDelayedPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) \ 02978 ( (This)->lpVtbl -> GetPropertyStore(This,flags,pUnkFactory,riid,ppv) ) 02979 02980 #define IDelayedPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) \ 02981 ( (This)->lpVtbl -> GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) ) 02982 02983 02984 #define IDelayedPropertyStoreFactory_GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) \ 02985 ( (This)->lpVtbl -> GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) ) 02986 02987 #endif /* COBJMACROS */ 02988 02989 02990 #endif /* C style interface */ 02991 02992 02993 02994 02995 #endif /* __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ */ 02996 02997 02998 /* interface __MIDL_itf_propsys_0000_0018 */ 02999 /* [local] */ 03000 03001 /* [v1_enum] */ 03002 enum tagPERSIST_SPROPSTORE_FLAGS 03003 { FPSPS_READONLY = 0x1 03004 } ; 03005 typedef int PERSIST_SPROPSTORE_FLAGS; 03006 03007 typedef struct tagSERIALIZEDPROPSTORAGE SERIALIZEDPROPSTORAGE; 03008 03009 typedef SERIALIZEDPROPSTORAGE __unaligned *PUSERIALIZEDPROPSTORAGE; 03010 03011 typedef const SERIALIZEDPROPSTORAGE __unaligned *PCUSERIALIZEDPROPSTORAGE; 03012 03013 03014 03015 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0018_v0_0_c_ifspec; 03016 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0018_v0_0_s_ifspec; 03017 03018 #ifndef __IPersistSerializedPropStorage_INTERFACE_DEFINED__ 03019 #define __IPersistSerializedPropStorage_INTERFACE_DEFINED__ 03020 03021 /* interface IPersistSerializedPropStorage */ 03022 /* [object][local][unique][uuid] */ 03023 03024 03025 EXTERN_C const IID IID_IPersistSerializedPropStorage; 03026 03027 #if defined(__cplusplus) && !defined(CINTERFACE) 03028 03029 MIDL_INTERFACE("e318ad57-0aa0-450f-aca5-6fab7103d917") 03030 IPersistSerializedPropStorage : public IUnknown 03031 { 03032 public: 03033 virtual HRESULT STDMETHODCALLTYPE SetFlags( 03034 /* [in] */ PERSIST_SPROPSTORE_FLAGS flags) = 0; 03035 03036 virtual HRESULT STDMETHODCALLTYPE SetPropertyStorage( 03037 /* [in] */ 03038 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 03039 /* [in] */ 03040 __in DWORD cb) = 0; 03041 03042 virtual HRESULT STDMETHODCALLTYPE GetPropertyStorage( 03043 /* [out] */ 03044 __deref_out_bcount(*pcb) SERIALIZEDPROPSTORAGE **ppsps, 03045 /* [out] */ 03046 __out DWORD *pcb) = 0; 03047 03048 }; 03049 03050 #else /* C style interface */ 03051 03052 typedef struct IPersistSerializedPropStorageVtbl 03053 { 03054 BEGIN_INTERFACE 03055 03056 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 03057 IPersistSerializedPropStorage * This, 03058 /* [in] */ REFIID riid, 03059 /* [iid_is][out] */ 03060 __RPC__deref_out void **ppvObject); 03061 03062 ULONG ( STDMETHODCALLTYPE *AddRef )( 03063 IPersistSerializedPropStorage * This); 03064 03065 ULONG ( STDMETHODCALLTYPE *Release )( 03066 IPersistSerializedPropStorage * This); 03067 03068 HRESULT ( STDMETHODCALLTYPE *SetFlags )( 03069 IPersistSerializedPropStorage * This, 03070 /* [in] */ PERSIST_SPROPSTORE_FLAGS flags); 03071 03072 HRESULT ( STDMETHODCALLTYPE *SetPropertyStorage )( 03073 IPersistSerializedPropStorage * This, 03074 /* [in] */ 03075 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 03076 /* [in] */ 03077 __in DWORD cb); 03078 03079 HRESULT ( STDMETHODCALLTYPE *GetPropertyStorage )( 03080 IPersistSerializedPropStorage * This, 03081 /* [out] */ 03082 __deref_out_bcount(*pcb) SERIALIZEDPROPSTORAGE **ppsps, 03083 /* [out] */ 03084 __out DWORD *pcb); 03085 03086 END_INTERFACE 03087 } IPersistSerializedPropStorageVtbl; 03088 03089 interface IPersistSerializedPropStorage 03090 { 03091 CONST_VTBL struct IPersistSerializedPropStorageVtbl *lpVtbl; 03092 }; 03093 03094 03095 03096 #ifdef COBJMACROS 03097 03098 03099 #define IPersistSerializedPropStorage_QueryInterface(This,riid,ppvObject) \ 03100 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 03101 03102 #define IPersistSerializedPropStorage_AddRef(This) \ 03103 ( (This)->lpVtbl -> AddRef(This) ) 03104 03105 #define IPersistSerializedPropStorage_Release(This) \ 03106 ( (This)->lpVtbl -> Release(This) ) 03107 03108 03109 #define IPersistSerializedPropStorage_SetFlags(This,flags) \ 03110 ( (This)->lpVtbl -> SetFlags(This,flags) ) 03111 03112 #define IPersistSerializedPropStorage_SetPropertyStorage(This,psps,cb) \ 03113 ( (This)->lpVtbl -> SetPropertyStorage(This,psps,cb) ) 03114 03115 #define IPersistSerializedPropStorage_GetPropertyStorage(This,ppsps,pcb) \ 03116 ( (This)->lpVtbl -> GetPropertyStorage(This,ppsps,pcb) ) 03117 03118 #endif /* COBJMACROS */ 03119 03120 03121 #endif /* C style interface */ 03122 03123 03124 03125 03126 #endif /* __IPersistSerializedPropStorage_INTERFACE_DEFINED__ */ 03127 03128 03129 #ifndef __IPropertySystemChangeNotify_INTERFACE_DEFINED__ 03130 #define __IPropertySystemChangeNotify_INTERFACE_DEFINED__ 03131 03132 /* interface IPropertySystemChangeNotify */ 03133 /* [unique][object][uuid] */ 03134 03135 03136 EXTERN_C const IID IID_IPropertySystemChangeNotify; 03137 03138 #if defined(__cplusplus) && !defined(CINTERFACE) 03139 03140 MIDL_INTERFACE("fa955fd9-38be-4879-a6ce-824cf52d609f") 03141 IPropertySystemChangeNotify : public IUnknown 03142 { 03143 public: 03144 virtual HRESULT STDMETHODCALLTYPE SchemaRefreshed( void) = 0; 03145 03146 }; 03147 03148 #else /* C style interface */ 03149 03150 typedef struct IPropertySystemChangeNotifyVtbl 03151 { 03152 BEGIN_INTERFACE 03153 03154 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 03155 IPropertySystemChangeNotify * This, 03156 /* [in] */ __RPC__in REFIID riid, 03157 /* [iid_is][out] */ 03158 __RPC__deref_out void **ppvObject); 03159 03160 ULONG ( STDMETHODCALLTYPE *AddRef )( 03161 IPropertySystemChangeNotify * This); 03162 03163 ULONG ( STDMETHODCALLTYPE *Release )( 03164 IPropertySystemChangeNotify * This); 03165 03166 HRESULT ( STDMETHODCALLTYPE *SchemaRefreshed )( 03167 IPropertySystemChangeNotify * This); 03168 03169 END_INTERFACE 03170 } IPropertySystemChangeNotifyVtbl; 03171 03172 interface IPropertySystemChangeNotify 03173 { 03174 CONST_VTBL struct IPropertySystemChangeNotifyVtbl *lpVtbl; 03175 }; 03176 03177 03178 03179 #ifdef COBJMACROS 03180 03181 03182 #define IPropertySystemChangeNotify_QueryInterface(This,riid,ppvObject) \ 03183 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 03184 03185 #define IPropertySystemChangeNotify_AddRef(This) \ 03186 ( (This)->lpVtbl -> AddRef(This) ) 03187 03188 #define IPropertySystemChangeNotify_Release(This) \ 03189 ( (This)->lpVtbl -> Release(This) ) 03190 03191 03192 #define IPropertySystemChangeNotify_SchemaRefreshed(This) \ 03193 ( (This)->lpVtbl -> SchemaRefreshed(This) ) 03194 03195 #endif /* COBJMACROS */ 03196 03197 03198 #endif /* C style interface */ 03199 03200 03201 03202 03203 #endif /* __IPropertySystemChangeNotify_INTERFACE_DEFINED__ */ 03204 03205 03206 #ifndef __ICreateObject_INTERFACE_DEFINED__ 03207 #define __ICreateObject_INTERFACE_DEFINED__ 03208 03209 /* interface ICreateObject */ 03210 /* [object][unique][uuid] */ 03211 03212 03213 EXTERN_C const IID IID_ICreateObject; 03214 03215 #if defined(__cplusplus) && !defined(CINTERFACE) 03216 03217 MIDL_INTERFACE("75121952-e0d0-43e5-9380-1d80483acf72") 03218 ICreateObject : public IUnknown 03219 { 03220 public: 03221 virtual HRESULT STDMETHODCALLTYPE CreateObject( 03222 /* [in] */ __RPC__in REFCLSID clsid, 03223 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkOuter, 03224 /* [in] */ __RPC__in REFIID riid, 03225 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 03226 03227 }; 03228 03229 #else /* C style interface */ 03230 03231 typedef struct ICreateObjectVtbl 03232 { 03233 BEGIN_INTERFACE 03234 03235 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 03236 ICreateObject * This, 03237 /* [in] */ __RPC__in REFIID riid, 03238 /* [iid_is][out] */ 03239 __RPC__deref_out void **ppvObject); 03240 03241 ULONG ( STDMETHODCALLTYPE *AddRef )( 03242 ICreateObject * This); 03243 03244 ULONG ( STDMETHODCALLTYPE *Release )( 03245 ICreateObject * This); 03246 03247 HRESULT ( STDMETHODCALLTYPE *CreateObject )( 03248 ICreateObject * This, 03249 /* [in] */ __RPC__in REFCLSID clsid, 03250 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkOuter, 03251 /* [in] */ __RPC__in REFIID riid, 03252 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 03253 03254 END_INTERFACE 03255 } ICreateObjectVtbl; 03256 03257 interface ICreateObject 03258 { 03259 CONST_VTBL struct ICreateObjectVtbl *lpVtbl; 03260 }; 03261 03262 03263 03264 #ifdef COBJMACROS 03265 03266 03267 #define ICreateObject_QueryInterface(This,riid,ppvObject) \ 03268 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 03269 03270 #define ICreateObject_AddRef(This) \ 03271 ( (This)->lpVtbl -> AddRef(This) ) 03272 03273 #define ICreateObject_Release(This) \ 03274 ( (This)->lpVtbl -> Release(This) ) 03275 03276 03277 #define ICreateObject_CreateObject(This,clsid,pUnkOuter,riid,ppv) \ 03278 ( (This)->lpVtbl -> CreateObject(This,clsid,pUnkOuter,riid,ppv) ) 03279 03280 #endif /* COBJMACROS */ 03281 03282 03283 #endif /* C style interface */ 03284 03285 03286 03287 03288 #endif /* __ICreateObject_INTERFACE_DEFINED__ */ 03289 03290 03291 /* interface __MIDL_itf_propsys_0000_0021 */ 03292 /* [local] */ 03293 03294 // Format a property value for display purposes 03295 PSSTDAPI PSFormatForDisplay( 03296 __in REFPROPERTYKEY propkey, 03297 __in REFPROPVARIANT propvar, 03298 __in PROPDESC_FORMAT_FLAGS pdfFlags, 03299 __out_ecount(cchText) LPWSTR pwszText, 03300 __in DWORD cchText); 03301 03302 PSSTDAPI PSFormatForDisplayAlloc( 03303 __in REFPROPERTYKEY key, 03304 __in REFPROPVARIANT propvar, 03305 __in PROPDESC_FORMAT_FLAGS pdff, 03306 __deref_out PWSTR *ppszDisplay); 03307 03308 PSSTDAPI PSFormatPropertyValue( 03309 __in IPropertyStore *pps, 03310 __in IPropertyDescription *ppd, 03311 __in PROPDESC_FORMAT_FLAGS pdff, 03312 __deref_out LPWSTR *ppszDisplay); 03313 03314 03315 #define PKEY_PIDSTR_MAX 10 // will take care of any long integer value 03316 #define GUIDSTRING_MAX (1 + 8 + 1 + 4 + 1 + 4 + 1 + 4 + 1 + 12 + 1 + 1) // "{12345678-1234-1234-1234-123456789012}" 03317 #define PKEYSTR_MAX (GUIDSTRING_MAX + 1 + PKEY_PIDSTR_MAX) 03318 03319 // Convert a PROPERTYKEY to and from a PWSTR 03320 PSSTDAPI PSStringFromPropertyKey( 03321 __in REFPROPERTYKEY pkey, 03322 __out_ecount(cch) LPWSTR psz, 03323 __in UINT cch); 03324 03325 PSSTDAPI PSPropertyKeyFromString( 03326 __in LPCWSTR pszString, 03327 __out PROPERTYKEY *pkey); 03328 03329 03330 // Creates an in-memory property store 03331 // Returns an IPropertyStore, IPersistSerializedPropStorage, and related interfaces interface 03332 PSSTDAPI PSCreateMemoryPropertyStore( 03333 __in REFIID riid, 03334 __deref_out void **ppv); 03335 03336 03337 // Create a read-only, delay-bind multiplexing property store 03338 // Returns an IPropertyStore interface or related interfaces 03339 PSSTDAPI PSCreateDelayedMultiplexPropertyStore( 03340 __in GETPROPERTYSTOREFLAGS flags, 03341 __in IDelayedPropertyStoreFactory *pdpsf, 03342 __in_ecount(cStores) const DWORD *rgStoreIds, 03343 __in DWORD cStores, 03344 __in REFIID riid, 03345 __deref_out void **ppv); 03346 03347 03348 // Create a read-only property store from one or more sources (which each must support either IPropertyStore or IPropertySetStorage) 03349 // Returns an IPropertyStore interface or related interfaces 03350 PSSTDAPI PSCreateMultiplexPropertyStore( 03351 __in_ecount(cStores) IUnknown **prgpunkStores, 03352 __in DWORD cStores, 03353 __in REFIID riid, 03354 __deref_out void **ppv); 03355 03356 03357 // Create a container for IPropertyChanges 03358 // Returns an IPropertyChangeArray interface 03359 PSSTDAPI PSCreatePropertyChangeArray( 03360 __in_ecount_opt(cChanges) const PROPERTYKEY *rgpropkey, 03361 __in_ecount_opt(cChanges) const PKA_FLAGS *rgflags, 03362 __in_ecount_opt(cChanges) const PROPVARIANT *rgpropvar, 03363 __in UINT cChanges, 03364 __in REFIID riid, 03365 __deref_out void **ppv); 03366 03367 03368 // Create a simple property change 03369 // Returns an IPropertyChange interface 03370 PSSTDAPI PSCreateSimplePropertyChange( 03371 __in PKA_FLAGS flags, 03372 __in REFPROPERTYKEY key, 03373 __in REFPROPVARIANT propvar, 03374 __in REFIID riid, 03375 __deref_out void **ppv); 03376 03377 03378 // Get a property description 03379 // Returns an IPropertyDescription interface 03380 PSSTDAPI PSGetPropertyDescription( 03381 __in REFPROPERTYKEY propkey, 03382 __in REFIID riid, 03383 __deref_out void **ppv); 03384 03385 PSSTDAPI PSGetPropertyDescriptionByName( 03386 __in LPCWSTR pszCanonicalName, 03387 __in REFIID riid, 03388 __deref_out void **ppv); 03389 03390 03391 // Lookup a per-machine registered file property handler 03392 PSSTDAPI PSLookupPropertyHandlerCLSID( 03393 __in PCWSTR pszFilePath, 03394 __out CLSID *pclsid); 03395 // Get a property handler, on Vista or downlevel to XP 03396 // punkItem is a shell item created with an SHCreateItemXXX API 03397 // Returns an IPropertyStore 03398 PSSTDAPI PSGetItemPropertyHandler( 03399 __in IUnknown *punkItem, 03400 __in BOOL fReadWrite, 03401 __in REFIID riid, 03402 __deref_out void **ppv); 03403 03404 03405 // Get a property handler, on Vista or downlevel to XP 03406 // punkItem is a shell item created with an SHCreateItemXXX API 03407 // punkCreateObject supports ICreateObject 03408 // Returns an IPropertyStore 03409 PSSTDAPI PSGetItemPropertyHandlerWithCreateObject( 03410 __in IUnknown *punkItem, 03411 __in BOOL fReadWrite, 03412 __in IUnknown *punkCreateObject, 03413 __in REFIID riid, 03414 __deref_out void **ppv); 03415 03416 03417 // Get or set a property value from a store 03418 PSSTDAPI PSGetPropertyValue( 03419 __in IPropertyStore *pps, 03420 __in IPropertyDescription *ppd, 03421 __out PROPVARIANT *ppropvar); 03422 03423 PSSTDAPI PSSetPropertyValue( 03424 __in IPropertyStore *pps, 03425 __in IPropertyDescription *ppd, 03426 __in REFPROPVARIANT propvar); 03427 03428 03429 // Interact with the set of property descriptions 03430 PSSTDAPI PSRegisterPropertySchema( 03431 __in PCWSTR pszPath); 03432 03433 PSSTDAPI PSUnregisterPropertySchema( 03434 __in PCWSTR pszPath); 03435 03436 PSSTDAPI PSRefreshPropertySchema(); 03437 03438 // Returns either: IPropertyDescriptionList or IEnumUnknown interfaces 03439 PSSTDAPI PSEnumeratePropertyDescriptions( 03440 __in PROPDESC_ENUMFILTER filterOn, 03441 __in REFIID riid, 03442 __deref_out void **ppv); 03443 03444 03445 // Convert between a PROPERTYKEY and its canonical name 03446 PSSTDAPI PSGetPropertyKeyFromName( 03447 __in PCWSTR pszName, 03448 __out PROPERTYKEY *ppropkey); 03449 03450 PSSTDAPI PSGetNameFromPropertyKey( 03451 __in REFPROPERTYKEY propkey, 03452 __deref_out PWSTR *ppszCanonicalName); 03453 03454 03455 // Coerce and canonicalize a property value 03456 PSSTDAPI PSCoerceToCanonicalValue( 03457 __in REFPROPERTYKEY key, 03458 __inout PROPVARIANT *ppropvar); 03459 03460 03461 // Convert a 'prop:' string into a list of property descriptions 03462 // Returns an IPropertyDescriptionList interface 03463 PSSTDAPI PSGetPropertyDescriptionListFromString( 03464 __in LPCWSTR pszPropList, 03465 __in REFIID riid, 03466 __deref_out void **ppv); 03467 03468 03469 // Wrap an IPropertySetStorage interface in an IPropertyStore interface 03470 // Returns an IPropertyStore or related interface 03471 PSSTDAPI PSCreatePropertyStoreFromPropertySetStorage( 03472 __in IPropertySetStorage *ppss, 03473 DWORD grfMode, 03474 REFIID riid, 03475 __deref_out void **ppv); 03476 03477 03478 // punkSource must support IPropertyStore or IPropertySetStorage 03479 // On success, the returned ppv is guaranteed to support IPropertyStore. 03480 // If punkSource already supports IPropertyStore, no wrapper is created. 03481 PSSTDAPI PSCreatePropertyStoreFromObject( 03482 __in IUnknown *punk, 03483 __in DWORD grfMode, 03484 __in REFIID riid, 03485 __deref_out void **ppv); 03486 03487 03488 // punkSource must support IPropertyStore 03489 // riid may be IPropertyStore, IPropertySetStorage, IPropertyStoreCapabilities, or IObjectProvider 03490 PSSTDAPI PSCreateAdapterFromPropertyStore( 03491 __in IPropertyStore *pps, 03492 __in REFIID riid, 03493 __deref_out void **ppv); 03494 03495 03496 // Talk to the property system using an interface 03497 // Returns an IPropertySystem interface 03498 PSSTDAPI PSGetPropertySystem( 03499 __in REFIID riid, 03500 __deref_out void **ppv); 03501 03502 03503 // Obtain a value from serialized property storage 03504 PSSTDAPI PSGetPropertyFromPropertyStorage( 03505 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 03506 __in DWORD cb, 03507 __in REFPROPERTYKEY rpkey, 03508 __out PROPVARIANT *ppropvar); 03509 03510 03511 // Obtain a named value from serialized property storage 03512 PSSTDAPI PSGetNamedPropertyFromPropertyStorage( 03513 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 03514 __in DWORD cb, 03515 __in LPCWSTR pszName, 03516 __out PROPVARIANT *ppropvar); 03517 03518 03519 03520 03521 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0021_v0_0_c_ifspec; 03522 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0021_v0_0_s_ifspec; 03523 03524 03525 #ifndef __PropSysObjects_LIBRARY_DEFINED__ 03526 #define __PropSysObjects_LIBRARY_DEFINED__ 03527 03528 /* library PropSysObjects */ 03529 /* [version][lcid][uuid] */ 03530 03531 03532 EXTERN_C const IID LIBID_PropSysObjects; 03533 03534 EXTERN_C const CLSID CLSID_InMemoryPropertyStore; 03535 03536 #ifdef __cplusplus 03537 03538 class DECLSPEC_UUID("9a02e012-6303-4e1e-b9a1-630f802592c5") 03539 InMemoryPropertyStore; 03540 #endif 03541 03542 EXTERN_C const CLSID CLSID_PropertySystem; 03543 03544 #ifdef __cplusplus 03545 03546 class DECLSPEC_UUID("b8967f85-58ae-4f46-9fb2-5d7904798f4b") 03547 PropertySystem; 03548 #endif 03549 #endif /* __PropSysObjects_LIBRARY_DEFINED__ */ 03550 03551 /* Additional Prototypes for ALL interfaces */ 03552 03553 unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * ); 03554 unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * ); 03555 unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 03556 void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * ); 03557 03558 unsigned long __RPC_USER LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * ); 03559 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * ); 03560 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); 03561 void __RPC_USER LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * ); 03562 03563 unsigned long __RPC_USER BSTR_UserSize64( unsigned long *, unsigned long , BSTR * ); 03564 unsigned char * __RPC_USER BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * ); 03565 unsigned char * __RPC_USER BSTR_UserUnmarshal64(unsigned long *, unsigned char *, BSTR * ); 03566 void __RPC_USER BSTR_UserFree64( unsigned long *, BSTR * ); 03567 03568 unsigned long __RPC_USER LPSAFEARRAY_UserSize64( unsigned long *, unsigned long , LPSAFEARRAY * ); 03569 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * ); 03570 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal64(unsigned long *, unsigned char *, LPSAFEARRAY * ); 03571 void __RPC_USER LPSAFEARRAY_UserFree64( unsigned long *, LPSAFEARRAY * ); 03572 03573 /* [local] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_Initialize_Proxy( 03574 IInitializeWithStream * This, 03575 /* [in] */ IStream *pstream, 03576 /* [in] */ DWORD grfMode); 03577 03578 03579 /* [call_as] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_Initialize_Stub( 03580 IInitializeWithStream * This, 03581 /* [in] */ __RPC__in_opt IStream *pstream, 03582 /* [in] */ DWORD grfMode); 03583 03584 /* [local] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_CoerceToCanonicalValue_Proxy( 03585 IPropertyDescription * This, 03586 /* [out][in] */ PROPVARIANT *ppropvar); 03587 03588 03589 /* [call_as] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_CoerceToCanonicalValue_Stub( 03590 IPropertyDescription * This, 03591 /* [in] */ __RPC__in REFPROPVARIANT propvar, 03592 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 03593 03594 03595 03596 /* end of Additional Prototypes */ 03597 03598 #ifdef __cplusplus 03599 } 03600 #endif 03601 03602 #endif 03603 03604 03605