PortAudio  2.0
propsys.h
Go to the documentation of this file.
1 
2 
3 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
4 
5 
6  /* File created by MIDL compiler version 7.00.0499 */
7 /* Compiler settings for propsys.idl:
8  Oicf, W1, Zp8, env=Win32 (32b run)
9  protocol : dce , ms_ext, c_ext, robust
10  error checks: allocation ref bounds_check enum stub_data
11  VC __declspec() decoration level:
12  __declspec(uuid()), __declspec(selectany), __declspec(novtable)
13  DECLSPEC_UUID(), MIDL_INTERFACE()
14 */
15 //@@MIDL_FILE_HEADING( )
16 
17 #pragma warning( disable: 4049 ) /* more than 64k source lines */
18 
19 
20 /* verify that the <rpcndr.h> version is high enough to compile this file*/
21 #ifndef __REQUIRED_RPCNDR_H_VERSION__
22 #define __REQUIRED_RPCNDR_H_VERSION__ 475
23 #endif
24 
25 /* verify that the <rpcsal.h> version is high enough to compile this file*/
26 #ifndef __REQUIRED_RPCSAL_H_VERSION__
27 #define __REQUIRED_RPCSAL_H_VERSION__ 100
28 #endif
29 
30 #include "rpc.h"
31 #include "rpcndr.h"
32 
33 #ifndef __RPCNDR_H_VERSION__
34 #error this stub requires an updated version of <rpcndr.h>
35 #endif // __RPCNDR_H_VERSION__
36 
37 #ifndef COM_NO_WINDOWS_H
38 #include "windows.h"
39 #include "ole2.h"
40 #endif /*COM_NO_WINDOWS_H*/
41 
42 #ifndef __propsys_h__
43 #define __propsys_h__
44 
45 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
46 #pragma once
47 #endif
48 
49 /* Forward Declarations */
50 
51 #ifndef __IInitializeWithFile_FWD_DEFINED__
52 #define __IInitializeWithFile_FWD_DEFINED__
54 #endif /* __IInitializeWithFile_FWD_DEFINED__ */
55 
56 
57 #ifndef __IInitializeWithStream_FWD_DEFINED__
58 #define __IInitializeWithStream_FWD_DEFINED__
60 #endif /* __IInitializeWithStream_FWD_DEFINED__ */
61 
62 
63 #ifndef __IPropertyStore_FWD_DEFINED__
64 #define __IPropertyStore_FWD_DEFINED__
65 typedef interface IPropertyStore IPropertyStore;
66 #endif /* __IPropertyStore_FWD_DEFINED__ */
67 
68 
69 #ifndef __INamedPropertyStore_FWD_DEFINED__
70 #define __INamedPropertyStore_FWD_DEFINED__
72 #endif /* __INamedPropertyStore_FWD_DEFINED__ */
73 
74 
75 #ifndef __IObjectWithPropertyKey_FWD_DEFINED__
76 #define __IObjectWithPropertyKey_FWD_DEFINED__
78 #endif /* __IObjectWithPropertyKey_FWD_DEFINED__ */
79 
80 
81 #ifndef __IPropertyChange_FWD_DEFINED__
82 #define __IPropertyChange_FWD_DEFINED__
83 typedef interface IPropertyChange IPropertyChange;
84 #endif /* __IPropertyChange_FWD_DEFINED__ */
85 
86 
87 #ifndef __IPropertyChangeArray_FWD_DEFINED__
88 #define __IPropertyChangeArray_FWD_DEFINED__
90 #endif /* __IPropertyChangeArray_FWD_DEFINED__ */
91 
92 
93 #ifndef __IPropertyStoreCapabilities_FWD_DEFINED__
94 #define __IPropertyStoreCapabilities_FWD_DEFINED__
96 #endif /* __IPropertyStoreCapabilities_FWD_DEFINED__ */
97 
98 
99 #ifndef __IPropertyStoreCache_FWD_DEFINED__
100 #define __IPropertyStoreCache_FWD_DEFINED__
102 #endif /* __IPropertyStoreCache_FWD_DEFINED__ */
103 
104 
105 #ifndef __IPropertyEnumType_FWD_DEFINED__
106 #define __IPropertyEnumType_FWD_DEFINED__
108 #endif /* __IPropertyEnumType_FWD_DEFINED__ */
109 
110 
111 #ifndef __IPropertyEnumTypeList_FWD_DEFINED__
112 #define __IPropertyEnumTypeList_FWD_DEFINED__
114 #endif /* __IPropertyEnumTypeList_FWD_DEFINED__ */
115 
116 
117 #ifndef __IPropertyDescription_FWD_DEFINED__
118 #define __IPropertyDescription_FWD_DEFINED__
120 #endif /* __IPropertyDescription_FWD_DEFINED__ */
121 
122 
123 #ifndef __IPropertyDescriptionAliasInfo_FWD_DEFINED__
124 #define __IPropertyDescriptionAliasInfo_FWD_DEFINED__
126 #endif /* __IPropertyDescriptionAliasInfo_FWD_DEFINED__ */
127 
128 
129 #ifndef __IPropertyDescriptionSearchInfo_FWD_DEFINED__
130 #define __IPropertyDescriptionSearchInfo_FWD_DEFINED__
132 #endif /* __IPropertyDescriptionSearchInfo_FWD_DEFINED__ */
133 
134 
135 #ifndef __IPropertySystem_FWD_DEFINED__
136 #define __IPropertySystem_FWD_DEFINED__
138 #endif /* __IPropertySystem_FWD_DEFINED__ */
139 
140 
141 #ifndef __IPropertyDescriptionList_FWD_DEFINED__
142 #define __IPropertyDescriptionList_FWD_DEFINED__
144 #endif /* __IPropertyDescriptionList_FWD_DEFINED__ */
145 
146 
147 #ifndef __IPropertyStoreFactory_FWD_DEFINED__
148 #define __IPropertyStoreFactory_FWD_DEFINED__
150 #endif /* __IPropertyStoreFactory_FWD_DEFINED__ */
151 
152 
153 #ifndef __IDelayedPropertyStoreFactory_FWD_DEFINED__
154 #define __IDelayedPropertyStoreFactory_FWD_DEFINED__
156 #endif /* __IDelayedPropertyStoreFactory_FWD_DEFINED__ */
157 
158 
159 #ifndef __IPersistSerializedPropStorage_FWD_DEFINED__
160 #define __IPersistSerializedPropStorage_FWD_DEFINED__
162 #endif /* __IPersistSerializedPropStorage_FWD_DEFINED__ */
163 
164 
165 #ifndef __IPropertySystemChangeNotify_FWD_DEFINED__
166 #define __IPropertySystemChangeNotify_FWD_DEFINED__
168 #endif /* __IPropertySystemChangeNotify_FWD_DEFINED__ */
169 
170 
171 #ifndef __ICreateObject_FWD_DEFINED__
172 #define __ICreateObject_FWD_DEFINED__
173 typedef interface ICreateObject ICreateObject;
174 #endif /* __ICreateObject_FWD_DEFINED__ */
175 
176 
177 #ifndef __InMemoryPropertyStore_FWD_DEFINED__
178 #define __InMemoryPropertyStore_FWD_DEFINED__
179 
180 #ifdef __cplusplus
182 #else
184 #endif /* __cplusplus */
185 
186 #endif /* __InMemoryPropertyStore_FWD_DEFINED__ */
187 
188 
189 #ifndef __PropertySystem_FWD_DEFINED__
190 #define __PropertySystem_FWD_DEFINED__
191 
192 #ifdef __cplusplus
193 typedef class PropertySystem PropertySystem;
194 #else
196 #endif /* __cplusplus */
197 
198 #endif /* __PropertySystem_FWD_DEFINED__ */
199 
200 
201 /* header files for imported files */
202 #include "objidl.h"
203 #include "oleidl.h"
204 #include "ocidl.h"
205 #include "shtypes.h"
206 #include "structuredquery.h"
207 
208 #ifdef __cplusplus
209 extern "C"{
210 #endif
211 
212 
213 /* interface __MIDL_itf_propsys_0000_0000 */
214 /* [local] */
215 
216 #ifndef PSSTDAPI
217 #if defined(_PROPSYS_)
218 #define PSSTDAPI STDAPI
219 #define PSSTDAPI_(type) STDAPI_(type)
220 #else
221 #define PSSTDAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE
222 #define PSSTDAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE
223 #endif
224 #endif // PSSTDAPI
225 #if 0
226 typedef PROPERTYKEY *REFPROPERTYKEY;
227 
228 #endif // 0
229 #include <propkeydef.h>
230 
231 
232 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0000_v0_0_c_ifspec;
233 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0000_v0_0_s_ifspec;
234 
235 #ifndef __IInitializeWithFile_INTERFACE_DEFINED__
236 #define __IInitializeWithFile_INTERFACE_DEFINED__
237 
238 /* interface IInitializeWithFile */
239 /* [unique][object][uuid] */
240 
241 
242 EXTERN_C const IID IID_IInitializeWithFile;
243 
244 #if defined(__cplusplus) && !defined(CINTERFACE)
245 
246  MIDL_INTERFACE("b7d14566-0509-4cce-a71f-0a554233bd9b")
247  IInitializeWithFile : public IUnknown
248  {
249  public:
250  virtual HRESULT STDMETHODCALLTYPE Initialize(
251  /* [string][in] */ __RPC__in LPCWSTR pszFilePath,
252  /* [in] */ DWORD grfMode) = 0;
253 
254  };
255 
256 #else /* C style interface */
257 
258  typedef struct IInitializeWithFileVtbl
259  {
260  BEGIN_INTERFACE
261 
262  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
263  IInitializeWithFile * This,
264  /* [in] */ __RPC__in REFIID riid,
265  /* [iid_is][out] */
266  __RPC__deref_out void **ppvObject);
267 
268  ULONG ( STDMETHODCALLTYPE *AddRef )(
269  IInitializeWithFile * This);
270 
271  ULONG ( STDMETHODCALLTYPE *Release )(
272  IInitializeWithFile * This);
273 
274  HRESULT ( STDMETHODCALLTYPE *Initialize )(
275  IInitializeWithFile * This,
276  /* [string][in] */ __RPC__in LPCWSTR pszFilePath,
277  /* [in] */ DWORD grfMode);
278 
279  END_INTERFACE
281 
282  interface IInitializeWithFile
283  {
284  CONST_VTBL struct IInitializeWithFileVtbl *lpVtbl;
285  };
286 
287 
288 
289 #ifdef COBJMACROS
290 
291 
292 #define IInitializeWithFile_QueryInterface(This,riid,ppvObject) \
293  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
294 
295 #define IInitializeWithFile_AddRef(This) \
296  ( (This)->lpVtbl -> AddRef(This) )
297 
298 #define IInitializeWithFile_Release(This) \
299  ( (This)->lpVtbl -> Release(This) )
300 
301 
302 #define IInitializeWithFile_Initialize(This,pszFilePath,grfMode) \
303  ( (This)->lpVtbl -> Initialize(This,pszFilePath,grfMode) )
304 
305 #endif /* COBJMACROS */
306 
307 
308 #endif /* C style interface */
309 
310 
311 
312 
313 #endif /* __IInitializeWithFile_INTERFACE_DEFINED__ */
314 
315 
316 #ifndef __IInitializeWithStream_INTERFACE_DEFINED__
317 #define __IInitializeWithStream_INTERFACE_DEFINED__
318 
319 /* interface IInitializeWithStream */
320 /* [unique][object][uuid] */
321 
322 
323 EXTERN_C const IID IID_IInitializeWithStream;
324 
325 #if defined(__cplusplus) && !defined(CINTERFACE)
326 
327  MIDL_INTERFACE("b824b49d-22ac-4161-ac8a-9916e8fa3f7f")
328  IInitializeWithStream : public IUnknown
329  {
330  public:
331  virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize(
332  /* [in] */ IStream *pstream,
333  /* [in] */ DWORD grfMode) = 0;
334 
335  };
336 
337 #else /* C style interface */
338 
340  {
341  BEGIN_INTERFACE
342 
343  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
344  IInitializeWithStream * This,
345  /* [in] */ __RPC__in REFIID riid,
346  /* [iid_is][out] */
347  __RPC__deref_out void **ppvObject);
348 
349  ULONG ( STDMETHODCALLTYPE *AddRef )(
350  IInitializeWithStream * This);
351 
352  ULONG ( STDMETHODCALLTYPE *Release )(
353  IInitializeWithStream * This);
354 
355  /* [local] */ HRESULT ( STDMETHODCALLTYPE *Initialize )(
356  IInitializeWithStream * This,
357  /* [in] */ IStream *pstream,
358  /* [in] */ DWORD grfMode);
359 
360  END_INTERFACE
362 
363  interface IInitializeWithStream
364  {
365  CONST_VTBL struct IInitializeWithStreamVtbl *lpVtbl;
366  };
367 
368 
369 
370 #ifdef COBJMACROS
371 
372 
373 #define IInitializeWithStream_QueryInterface(This,riid,ppvObject) \
374  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
375 
376 #define IInitializeWithStream_AddRef(This) \
377  ( (This)->lpVtbl -> AddRef(This) )
378 
379 #define IInitializeWithStream_Release(This) \
380  ( (This)->lpVtbl -> Release(This) )
381 
382 
383 #define IInitializeWithStream_Initialize(This,pstream,grfMode) \
384  ( (This)->lpVtbl -> Initialize(This,pstream,grfMode) )
385 
386 #endif /* COBJMACROS */
387 
388 
389 #endif /* C style interface */
390 
391 
392 
393 /* [call_as] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_RemoteInitialize_Proxy(
394  IInitializeWithStream * This,
395  /* [in] */ __RPC__in_opt IStream *pstream,
396  /* [in] */ DWORD grfMode);
397 
398 
400  IRpcStubBuffer *This,
401  IRpcChannelBuffer *_pRpcChannelBuffer,
402  PRPC_MESSAGE _pRpcMessage,
403  DWORD *_pdwStubPhase);
404 
405 
406 
407 #endif /* __IInitializeWithStream_INTERFACE_DEFINED__ */
408 
409 
410 #ifndef __IPropertyStore_INTERFACE_DEFINED__
411 #define __IPropertyStore_INTERFACE_DEFINED__
412 
413 /* interface IPropertyStore */
414 /* [unique][object][helpstring][uuid] */
415 
416 
417 EXTERN_C const IID IID_IPropertyStore;
418 
419 #if defined(__cplusplus) && !defined(CINTERFACE)
420 
421  MIDL_INTERFACE("886d8eeb-8cf2-4446-8d02-cdba1dbdcf99")
422  IPropertyStore : public IUnknown
423  {
424  public:
425  virtual HRESULT STDMETHODCALLTYPE GetCount(
426  /* [out] */ __RPC__out DWORD *cProps) = 0;
427 
428  virtual HRESULT STDMETHODCALLTYPE GetAt(
429  /* [in] */ DWORD iProp,
430  /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0;
431 
432  virtual HRESULT STDMETHODCALLTYPE GetValue(
433  /* [in] */ __RPC__in REFPROPERTYKEY key,
434  /* [out] */ __RPC__out PROPVARIANT *pv) = 0;
435 
436  virtual HRESULT STDMETHODCALLTYPE SetValue(
437  /* [in] */ __RPC__in REFPROPERTYKEY key,
438  /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0;
439 
440  virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0;
441 
442  };
443 
444 #else /* C style interface */
445 
446  typedef struct IPropertyStoreVtbl
447  {
448  BEGIN_INTERFACE
449 
450  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
451  IPropertyStore * This,
452  /* [in] */ __RPC__in REFIID riid,
453  /* [iid_is][out] */
454  __RPC__deref_out void **ppvObject);
455 
456  ULONG ( STDMETHODCALLTYPE *AddRef )(
457  IPropertyStore * This);
458 
459  ULONG ( STDMETHODCALLTYPE *Release )(
460  IPropertyStore * This);
461 
462  HRESULT ( STDMETHODCALLTYPE *GetCount )(
463  IPropertyStore * This,
464  /* [out] */ __RPC__out DWORD *cProps);
465 
466  HRESULT ( STDMETHODCALLTYPE *GetAt )(
467  IPropertyStore * This,
468  /* [in] */ DWORD iProp,
469  /* [out] */ __RPC__out PROPERTYKEY *pkey);
470 
471  HRESULT ( STDMETHODCALLTYPE *GetValue )(
472  IPropertyStore * This,
473  /* [in] */ __RPC__in REFPROPERTYKEY key,
474  /* [out] */ __RPC__out PROPVARIANT *pv);
475 
476  HRESULT ( STDMETHODCALLTYPE *SetValue )(
477  IPropertyStore * This,
478  /* [in] */ __RPC__in REFPROPERTYKEY key,
479  /* [in] */ __RPC__in REFPROPVARIANT propvar);
480 
481  HRESULT ( STDMETHODCALLTYPE *Commit )(
482  IPropertyStore * This);
483 
484  END_INTERFACE
486 
487  interface IPropertyStore
488  {
489  CONST_VTBL struct IPropertyStoreVtbl *lpVtbl;
490  };
491 
492 
493 
494 #ifdef COBJMACROS
495 
496 
497 #define IPropertyStore_QueryInterface(This,riid,ppvObject) \
498  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
499 
500 #define IPropertyStore_AddRef(This) \
501  ( (This)->lpVtbl -> AddRef(This) )
502 
503 #define IPropertyStore_Release(This) \
504  ( (This)->lpVtbl -> Release(This) )
505 
506 
507 #define IPropertyStore_GetCount(This,cProps) \
508  ( (This)->lpVtbl -> GetCount(This,cProps) )
509 
510 #define IPropertyStore_GetAt(This,iProp,pkey) \
511  ( (This)->lpVtbl -> GetAt(This,iProp,pkey) )
512 
513 #define IPropertyStore_GetValue(This,key,pv) \
514  ( (This)->lpVtbl -> GetValue(This,key,pv) )
515 
516 #define IPropertyStore_SetValue(This,key,propvar) \
517  ( (This)->lpVtbl -> SetValue(This,key,propvar) )
518 
519 #define IPropertyStore_Commit(This) \
520  ( (This)->lpVtbl -> Commit(This) )
521 
522 #endif /* COBJMACROS */
523 
524 
525 #endif /* C style interface */
526 
527 
528 
529 
530 #endif /* __IPropertyStore_INTERFACE_DEFINED__ */
531 
532 
533 /* interface __MIDL_itf_propsys_0000_0003 */
534 /* [local] */
535 
536 typedef /* [unique] */ __RPC_unique_pointer IPropertyStore *LPPROPERTYSTORE;
537 
538 
539 
540 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0003_v0_0_c_ifspec;
541 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0003_v0_0_s_ifspec;
542 
543 #ifndef __INamedPropertyStore_INTERFACE_DEFINED__
544 #define __INamedPropertyStore_INTERFACE_DEFINED__
545 
546 /* interface INamedPropertyStore */
547 /* [unique][object][uuid] */
548 
549 
550 EXTERN_C const IID IID_INamedPropertyStore;
551 
552 #if defined(__cplusplus) && !defined(CINTERFACE)
553 
554  MIDL_INTERFACE("71604b0f-97b0-4764-8577-2f13e98a1422")
555  INamedPropertyStore : public IUnknown
556  {
557  public:
558  virtual HRESULT STDMETHODCALLTYPE GetNamedValue(
559  /* [string][in] */ __RPC__in LPCWSTR pszName,
560  /* [out] */ __RPC__out PROPVARIANT *ppropvar) = 0;
561 
562  virtual HRESULT STDMETHODCALLTYPE SetNamedValue(
563  /* [string][in] */ __RPC__in LPCWSTR pszName,
564  /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0;
565 
566  virtual HRESULT STDMETHODCALLTYPE GetNameCount(
567  /* [out] */ __RPC__out DWORD *pdwCount) = 0;
568 
569  virtual HRESULT STDMETHODCALLTYPE GetNameAt(
570  /* [in] */ DWORD iProp,
571  /* [out] */ __RPC__deref_out_opt BSTR *pbstrName) = 0;
572 
573  };
574 
575 #else /* C style interface */
576 
577  typedef struct INamedPropertyStoreVtbl
578  {
579  BEGIN_INTERFACE
580 
581  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
582  INamedPropertyStore * This,
583  /* [in] */ __RPC__in REFIID riid,
584  /* [iid_is][out] */
585  __RPC__deref_out void **ppvObject);
586 
587  ULONG ( STDMETHODCALLTYPE *AddRef )(
588  INamedPropertyStore * This);
589 
590  ULONG ( STDMETHODCALLTYPE *Release )(
591  INamedPropertyStore * This);
592 
593  HRESULT ( STDMETHODCALLTYPE *GetNamedValue )(
594  INamedPropertyStore * This,
595  /* [string][in] */ __RPC__in LPCWSTR pszName,
596  /* [out] */ __RPC__out PROPVARIANT *ppropvar);
597 
598  HRESULT ( STDMETHODCALLTYPE *SetNamedValue )(
599  INamedPropertyStore * This,
600  /* [string][in] */ __RPC__in LPCWSTR pszName,
601  /* [in] */ __RPC__in REFPROPVARIANT propvar);
602 
603  HRESULT ( STDMETHODCALLTYPE *GetNameCount )(
604  INamedPropertyStore * This,
605  /* [out] */ __RPC__out DWORD *pdwCount);
606 
607  HRESULT ( STDMETHODCALLTYPE *GetNameAt )(
608  INamedPropertyStore * This,
609  /* [in] */ DWORD iProp,
610  /* [out] */ __RPC__deref_out_opt BSTR *pbstrName);
611 
612  END_INTERFACE
614 
615  interface INamedPropertyStore
616  {
617  CONST_VTBL struct INamedPropertyStoreVtbl *lpVtbl;
618  };
619 
620 
621 
622 #ifdef COBJMACROS
623 
624 
625 #define INamedPropertyStore_QueryInterface(This,riid,ppvObject) \
626  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
627 
628 #define INamedPropertyStore_AddRef(This) \
629  ( (This)->lpVtbl -> AddRef(This) )
630 
631 #define INamedPropertyStore_Release(This) \
632  ( (This)->lpVtbl -> Release(This) )
633 
634 
635 #define INamedPropertyStore_GetNamedValue(This,pszName,ppropvar) \
636  ( (This)->lpVtbl -> GetNamedValue(This,pszName,ppropvar) )
637 
638 #define INamedPropertyStore_SetNamedValue(This,pszName,propvar) \
639  ( (This)->lpVtbl -> SetNamedValue(This,pszName,propvar) )
640 
641 #define INamedPropertyStore_GetNameCount(This,pdwCount) \
642  ( (This)->lpVtbl -> GetNameCount(This,pdwCount) )
643 
644 #define INamedPropertyStore_GetNameAt(This,iProp,pbstrName) \
645  ( (This)->lpVtbl -> GetNameAt(This,iProp,pbstrName) )
646 
647 #endif /* COBJMACROS */
648 
649 
650 #endif /* C style interface */
651 
652 
653 
654 
655 #endif /* __INamedPropertyStore_INTERFACE_DEFINED__ */
656 
657 
658 /* interface __MIDL_itf_propsys_0000_0004 */
659 /* [local] */
660 
661 /* [v1_enum] */
663  { GPS_DEFAULT = 0,
672  } ;
674 
675 
676 
677 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0004_v0_0_c_ifspec;
678 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0004_v0_0_s_ifspec;
679 
680 #ifndef __IObjectWithPropertyKey_INTERFACE_DEFINED__
681 #define __IObjectWithPropertyKey_INTERFACE_DEFINED__
682 
683 /* interface IObjectWithPropertyKey */
684 /* [uuid][object] */
685 
686 
687 EXTERN_C const IID IID_IObjectWithPropertyKey;
688 
689 #if defined(__cplusplus) && !defined(CINTERFACE)
690 
691  MIDL_INTERFACE("fc0ca0a7-c316-4fd2-9031-3e628e6d4f23")
692  IObjectWithPropertyKey : public IUnknown
693  {
694  public:
695  virtual HRESULT STDMETHODCALLTYPE SetPropertyKey(
696  /* [in] */ __RPC__in REFPROPERTYKEY key) = 0;
697 
698  virtual HRESULT STDMETHODCALLTYPE GetPropertyKey(
699  /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0;
700 
701  };
702 
703 #else /* C style interface */
704 
706  {
707  BEGIN_INTERFACE
708 
709  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
710  IObjectWithPropertyKey * This,
711  /* [in] */ __RPC__in REFIID riid,
712  /* [iid_is][out] */
713  __RPC__deref_out void **ppvObject);
714 
715  ULONG ( STDMETHODCALLTYPE *AddRef )(
716  IObjectWithPropertyKey * This);
717 
718  ULONG ( STDMETHODCALLTYPE *Release )(
719  IObjectWithPropertyKey * This);
720 
721  HRESULT ( STDMETHODCALLTYPE *SetPropertyKey )(
722  IObjectWithPropertyKey * This,
723  /* [in] */ __RPC__in REFPROPERTYKEY key);
724 
725  HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )(
726  IObjectWithPropertyKey * This,
727  /* [out] */ __RPC__out PROPERTYKEY *pkey);
728 
729  END_INTERFACE
731 
732  interface IObjectWithPropertyKey
733  {
734  CONST_VTBL struct IObjectWithPropertyKeyVtbl *lpVtbl;
735  };
736 
737 
738 
739 #ifdef COBJMACROS
740 
741 
742 #define IObjectWithPropertyKey_QueryInterface(This,riid,ppvObject) \
743  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
744 
745 #define IObjectWithPropertyKey_AddRef(This) \
746  ( (This)->lpVtbl -> AddRef(This) )
747 
748 #define IObjectWithPropertyKey_Release(This) \
749  ( (This)->lpVtbl -> Release(This) )
750 
751 
752 #define IObjectWithPropertyKey_SetPropertyKey(This,key) \
753  ( (This)->lpVtbl -> SetPropertyKey(This,key) )
754 
755 #define IObjectWithPropertyKey_GetPropertyKey(This,pkey) \
756  ( (This)->lpVtbl -> GetPropertyKey(This,pkey) )
757 
758 #endif /* COBJMACROS */
759 
760 
761 #endif /* C style interface */
762 
763 
764 
765 
766 #endif /* __IObjectWithPropertyKey_INTERFACE_DEFINED__ */
767 
768 
769 /* interface __MIDL_itf_propsys_0000_0005 */
770 /* [local] */
771 
772 typedef /* [v1_enum] */
774  { PKA_SET = 0,
775  PKA_APPEND = ( PKA_SET + 1 ) ,
777  } PKA_FLAGS;
778 
779 
780 
781 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0005_v0_0_c_ifspec;
782 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0005_v0_0_s_ifspec;
783 
784 #ifndef __IPropertyChange_INTERFACE_DEFINED__
785 #define __IPropertyChange_INTERFACE_DEFINED__
786 
787 /* interface IPropertyChange */
788 /* [unique][object][uuid] */
789 
790 
791 EXTERN_C const IID IID_IPropertyChange;
792 
793 #if defined(__cplusplus) && !defined(CINTERFACE)
794 
795  MIDL_INTERFACE("f917bc8a-1bba-4478-a245-1bde03eb9431")
797  {
798  public:
799  virtual HRESULT STDMETHODCALLTYPE ApplyToPropVariant(
800  /* [in] */ __RPC__in REFPROPVARIANT propvarIn,
801  /* [out] */ __RPC__out PROPVARIANT *ppropvarOut) = 0;
802 
803  };
804 
805 #else /* C style interface */
806 
807  typedef struct IPropertyChangeVtbl
808  {
809  BEGIN_INTERFACE
810 
811  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
812  IPropertyChange * This,
813  /* [in] */ __RPC__in REFIID riid,
814  /* [iid_is][out] */
815  __RPC__deref_out void **ppvObject);
816 
817  ULONG ( STDMETHODCALLTYPE *AddRef )(
818  IPropertyChange * This);
819 
820  ULONG ( STDMETHODCALLTYPE *Release )(
821  IPropertyChange * This);
822 
823  HRESULT ( STDMETHODCALLTYPE *SetPropertyKey )(
824  IPropertyChange * This,
825  /* [in] */ __RPC__in REFPROPERTYKEY key);
826 
827  HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )(
828  IPropertyChange * This,
829  /* [out] */ __RPC__out PROPERTYKEY *pkey);
830 
831  HRESULT ( STDMETHODCALLTYPE *ApplyToPropVariant )(
832  IPropertyChange * This,
834  /* [out] */ __RPC__out PROPVARIANT *ppropvarOut);
835 
836  END_INTERFACE
838 
839  interface IPropertyChange
840  {
841  CONST_VTBL struct IPropertyChangeVtbl *lpVtbl;
842  };
843 
844 
845 
846 #ifdef COBJMACROS
847 
848 
849 #define IPropertyChange_QueryInterface(This,riid,ppvObject) \
850  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
851 
852 #define IPropertyChange_AddRef(This) \
853  ( (This)->lpVtbl -> AddRef(This) )
854 
855 #define IPropertyChange_Release(This) \
856  ( (This)->lpVtbl -> Release(This) )
857 
858 
859 #define IPropertyChange_SetPropertyKey(This,key) \
860  ( (This)->lpVtbl -> SetPropertyKey(This,key) )
861 
862 #define IPropertyChange_GetPropertyKey(This,pkey) \
863  ( (This)->lpVtbl -> GetPropertyKey(This,pkey) )
864 
865 
866 #define IPropertyChange_ApplyToPropVariant(This,propvarIn,ppropvarOut) \
867  ( (This)->lpVtbl -> ApplyToPropVariant(This,propvarIn,ppropvarOut) )
868 
869 #endif /* COBJMACROS */
870 
871 
872 #endif /* C style interface */
873 
874 
875 
876 
877 #endif /* __IPropertyChange_INTERFACE_DEFINED__ */
878 
879 
880 #ifndef __IPropertyChangeArray_INTERFACE_DEFINED__
881 #define __IPropertyChangeArray_INTERFACE_DEFINED__
882 
883 /* interface IPropertyChangeArray */
884 /* [unique][object][uuid] */
885 
886 
887 EXTERN_C const IID IID_IPropertyChangeArray;
888 
889 #if defined(__cplusplus) && !defined(CINTERFACE)
890 
891  MIDL_INTERFACE("380f5cad-1b5e-42f2-805d-637fd392d31e")
892  IPropertyChangeArray : public IUnknown
893  {
894  public:
895  virtual HRESULT STDMETHODCALLTYPE GetCount(
896  /* [out] */ __RPC__out UINT *pcOperations) = 0;
897 
898  virtual HRESULT STDMETHODCALLTYPE GetAt(
899  /* [in] */ UINT iIndex,
900  /* [in] */ __RPC__in REFIID riid,
901  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
902 
903  virtual HRESULT STDMETHODCALLTYPE InsertAt(
904  /* [in] */ UINT iIndex,
905  /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0;
906 
907  virtual HRESULT STDMETHODCALLTYPE Append(
908  /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0;
909 
910  virtual HRESULT STDMETHODCALLTYPE AppendOrReplace(
911  /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0;
912 
913  virtual HRESULT STDMETHODCALLTYPE RemoveAt(
914  /* [in] */ UINT iIndex) = 0;
915 
916  virtual HRESULT STDMETHODCALLTYPE IsKeyInArray(
917  /* [in] */ __RPC__in REFPROPERTYKEY key) = 0;
918 
919  };
920 
921 #else /* C style interface */
922 
924  {
925  BEGIN_INTERFACE
926 
927  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
928  IPropertyChangeArray * This,
929  /* [in] */ __RPC__in REFIID riid,
930  /* [iid_is][out] */
931  __RPC__deref_out void **ppvObject);
932 
933  ULONG ( STDMETHODCALLTYPE *AddRef )(
934  IPropertyChangeArray * This);
935 
936  ULONG ( STDMETHODCALLTYPE *Release )(
937  IPropertyChangeArray * This);
938 
939  HRESULT ( STDMETHODCALLTYPE *GetCount )(
940  IPropertyChangeArray * This,
941  /* [out] */ __RPC__out UINT *pcOperations);
942 
943  HRESULT ( STDMETHODCALLTYPE *GetAt )(
944  IPropertyChangeArray * This,
945  /* [in] */ UINT iIndex,
946  /* [in] */ __RPC__in REFIID riid,
947  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
948 
949  HRESULT ( STDMETHODCALLTYPE *InsertAt )(
950  IPropertyChangeArray * This,
951  /* [in] */ UINT iIndex,
953 
954  HRESULT ( STDMETHODCALLTYPE *Append )(
955  IPropertyChangeArray * This,
957 
958  HRESULT ( STDMETHODCALLTYPE *AppendOrReplace )(
959  IPropertyChangeArray * This,
961 
962  HRESULT ( STDMETHODCALLTYPE *RemoveAt )(
963  IPropertyChangeArray * This,
964  /* [in] */ UINT iIndex);
965 
966  HRESULT ( STDMETHODCALLTYPE *IsKeyInArray )(
967  IPropertyChangeArray * This,
968  /* [in] */ __RPC__in REFPROPERTYKEY key);
969 
970  END_INTERFACE
972 
973  interface IPropertyChangeArray
974  {
975  CONST_VTBL struct IPropertyChangeArrayVtbl *lpVtbl;
976  };
977 
978 
979 
980 #ifdef COBJMACROS
981 
982 
983 #define IPropertyChangeArray_QueryInterface(This,riid,ppvObject) \
984  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
985 
986 #define IPropertyChangeArray_AddRef(This) \
987  ( (This)->lpVtbl -> AddRef(This) )
988 
989 #define IPropertyChangeArray_Release(This) \
990  ( (This)->lpVtbl -> Release(This) )
991 
992 
993 #define IPropertyChangeArray_GetCount(This,pcOperations) \
994  ( (This)->lpVtbl -> GetCount(This,pcOperations) )
995 
996 #define IPropertyChangeArray_GetAt(This,iIndex,riid,ppv) \
997  ( (This)->lpVtbl -> GetAt(This,iIndex,riid,ppv) )
998 
999 #define IPropertyChangeArray_InsertAt(This,iIndex,ppropChange) \
1000  ( (This)->lpVtbl -> InsertAt(This,iIndex,ppropChange) )
1001 
1002 #define IPropertyChangeArray_Append(This,ppropChange) \
1003  ( (This)->lpVtbl -> Append(This,ppropChange) )
1004 
1005 #define IPropertyChangeArray_AppendOrReplace(This,ppropChange) \
1006  ( (This)->lpVtbl -> AppendOrReplace(This,ppropChange) )
1007 
1008 #define IPropertyChangeArray_RemoveAt(This,iIndex) \
1009  ( (This)->lpVtbl -> RemoveAt(This,iIndex) )
1010 
1011 #define IPropertyChangeArray_IsKeyInArray(This,key) \
1012  ( (This)->lpVtbl -> IsKeyInArray(This,key) )
1013 
1014 #endif /* COBJMACROS */
1015 
1016 
1017 #endif /* C style interface */
1018 
1019 
1020 
1021 
1022 #endif /* __IPropertyChangeArray_INTERFACE_DEFINED__ */
1023 
1024 
1025 #ifndef __IPropertyStoreCapabilities_INTERFACE_DEFINED__
1026 #define __IPropertyStoreCapabilities_INTERFACE_DEFINED__
1027 
1028 /* interface IPropertyStoreCapabilities */
1029 /* [unique][object][uuid] */
1030 
1031 
1033 
1034 #if defined(__cplusplus) && !defined(CINTERFACE)
1035 
1036  MIDL_INTERFACE("c8e2d566-186e-4d49-bf41-6909ead56acc")
1037  IPropertyStoreCapabilities : public IUnknown
1038  {
1039  public:
1040  virtual HRESULT STDMETHODCALLTYPE IsPropertyWritable(
1041  /* [in] */ __RPC__in REFPROPERTYKEY key) = 0;
1042 
1043  };
1044 
1045 #else /* C style interface */
1046 
1048  {
1049  BEGIN_INTERFACE
1050 
1051  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1053  /* [in] */ __RPC__in REFIID riid,
1054  /* [iid_is][out] */
1055  __RPC__deref_out void **ppvObject);
1056 
1057  ULONG ( STDMETHODCALLTYPE *AddRef )(
1059 
1060  ULONG ( STDMETHODCALLTYPE *Release )(
1062 
1063  HRESULT ( STDMETHODCALLTYPE *IsPropertyWritable )(
1065  /* [in] */ __RPC__in REFPROPERTYKEY key);
1066 
1067  END_INTERFACE
1069 
1070  interface IPropertyStoreCapabilities
1071  {
1072  CONST_VTBL struct IPropertyStoreCapabilitiesVtbl *lpVtbl;
1073  };
1074 
1075 
1076 
1077 #ifdef COBJMACROS
1078 
1079 
1080 #define IPropertyStoreCapabilities_QueryInterface(This,riid,ppvObject) \
1081  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1082 
1083 #define IPropertyStoreCapabilities_AddRef(This) \
1084  ( (This)->lpVtbl -> AddRef(This) )
1085 
1086 #define IPropertyStoreCapabilities_Release(This) \
1087  ( (This)->lpVtbl -> Release(This) )
1088 
1089 
1090 #define IPropertyStoreCapabilities_IsPropertyWritable(This,key) \
1091  ( (This)->lpVtbl -> IsPropertyWritable(This,key) )
1092 
1093 #endif /* COBJMACROS */
1094 
1095 
1096 #endif /* C style interface */
1097 
1098 
1099 
1100 
1101 #endif /* __IPropertyStoreCapabilities_INTERFACE_DEFINED__ */
1102 
1103 
1104 #ifndef __IPropertyStoreCache_INTERFACE_DEFINED__
1105 #define __IPropertyStoreCache_INTERFACE_DEFINED__
1106 
1107 /* interface IPropertyStoreCache */
1108 /* [unique][object][uuid] */
1109 
1110 typedef /* [v1_enum] */
1112  { PSC_NORMAL = 0,
1116  } PSC_STATE;
1117 
1118 
1119 EXTERN_C const IID IID_IPropertyStoreCache;
1120 
1121 #if defined(__cplusplus) && !defined(CINTERFACE)
1122 
1123  MIDL_INTERFACE("3017056d-9a91-4e90-937d-746c72abbf4f")
1125  {
1126  public:
1127  virtual HRESULT STDMETHODCALLTYPE GetState(
1128  /* [in] */ __RPC__in REFPROPERTYKEY key,
1129  /* [out] */ __RPC__out PSC_STATE *pstate) = 0;
1130 
1131  virtual HRESULT STDMETHODCALLTYPE GetValueAndState(
1132  /* [in] */ __RPC__in REFPROPERTYKEY key,
1133  /* [out] */ __RPC__out PROPVARIANT *ppropvar,
1134  /* [out] */ __RPC__out PSC_STATE *pstate) = 0;
1135 
1136  virtual HRESULT STDMETHODCALLTYPE SetState(
1137  /* [in] */ __RPC__in REFPROPERTYKEY key,
1138  /* [in] */ PSC_STATE state) = 0;
1139 
1140  virtual HRESULT STDMETHODCALLTYPE SetValueAndState(
1141  /* [in] */ __RPC__in REFPROPERTYKEY key,
1142  /* [unique][in] */ __RPC__in_opt const PROPVARIANT *ppropvar,
1143  /* [in] */ PSC_STATE state) = 0;
1144 
1145  };
1146 
1147 #else /* C style interface */
1148 
1150  {
1151  BEGIN_INTERFACE
1152 
1153  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1154  IPropertyStoreCache * This,
1155  /* [in] */ __RPC__in REFIID riid,
1156  /* [iid_is][out] */
1157  __RPC__deref_out void **ppvObject);
1158 
1159  ULONG ( STDMETHODCALLTYPE *AddRef )(
1160  IPropertyStoreCache * This);
1161 
1162  ULONG ( STDMETHODCALLTYPE *Release )(
1163  IPropertyStoreCache * This);
1164 
1165  HRESULT ( STDMETHODCALLTYPE *GetCount )(
1166  IPropertyStoreCache * This,
1167  /* [out] */ __RPC__out DWORD *cProps);
1168 
1169  HRESULT ( STDMETHODCALLTYPE *GetAt )(
1170  IPropertyStoreCache * This,
1171  /* [in] */ DWORD iProp,
1172  /* [out] */ __RPC__out PROPERTYKEY *pkey);
1173 
1174  HRESULT ( STDMETHODCALLTYPE *GetValue )(
1175  IPropertyStoreCache * This,
1176  /* [in] */ __RPC__in REFPROPERTYKEY key,
1177  /* [out] */ __RPC__out PROPVARIANT *pv);
1178 
1179  HRESULT ( STDMETHODCALLTYPE *SetValue )(
1180  IPropertyStoreCache * This,
1181  /* [in] */ __RPC__in REFPROPERTYKEY key,
1182  /* [in] */ __RPC__in REFPROPVARIANT propvar);
1183 
1184  HRESULT ( STDMETHODCALLTYPE *Commit )(
1185  IPropertyStoreCache * This);
1186 
1187  HRESULT ( STDMETHODCALLTYPE *GetState )(
1188  IPropertyStoreCache * This,
1189  /* [in] */ __RPC__in REFPROPERTYKEY key,
1190  /* [out] */ __RPC__out PSC_STATE *pstate);
1191 
1192  HRESULT ( STDMETHODCALLTYPE *GetValueAndState )(
1193  IPropertyStoreCache * This,
1194  /* [in] */ __RPC__in REFPROPERTYKEY key,
1195  /* [out] */ __RPC__out PROPVARIANT *ppropvar,
1196  /* [out] */ __RPC__out PSC_STATE *pstate);
1197 
1198  HRESULT ( STDMETHODCALLTYPE *SetState )(
1199  IPropertyStoreCache * This,
1200  /* [in] */ __RPC__in REFPROPERTYKEY key,
1201  /* [in] */ PSC_STATE state);
1202 
1203  HRESULT ( STDMETHODCALLTYPE *SetValueAndState )(
1204  IPropertyStoreCache * This,
1205  /* [in] */ __RPC__in REFPROPERTYKEY key,
1206  /* [unique][in] */ __RPC__in_opt const PROPVARIANT *ppropvar,
1207  /* [in] */ PSC_STATE state);
1208 
1209  END_INTERFACE
1211 
1212  interface IPropertyStoreCache
1213  {
1214  CONST_VTBL struct IPropertyStoreCacheVtbl *lpVtbl;
1215  };
1216 
1217 
1218 
1219 #ifdef COBJMACROS
1220 
1221 
1222 #define IPropertyStoreCache_QueryInterface(This,riid,ppvObject) \
1223  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1224 
1225 #define IPropertyStoreCache_AddRef(This) \
1226  ( (This)->lpVtbl -> AddRef(This) )
1227 
1228 #define IPropertyStoreCache_Release(This) \
1229  ( (This)->lpVtbl -> Release(This) )
1230 
1231 
1232 #define IPropertyStoreCache_GetCount(This,cProps) \
1233  ( (This)->lpVtbl -> GetCount(This,cProps) )
1234 
1235 #define IPropertyStoreCache_GetAt(This,iProp,pkey) \
1236  ( (This)->lpVtbl -> GetAt(This,iProp,pkey) )
1237 
1238 #define IPropertyStoreCache_GetValue(This,key,pv) \
1239  ( (This)->lpVtbl -> GetValue(This,key,pv) )
1240 
1241 #define IPropertyStoreCache_SetValue(This,key,propvar) \
1242  ( (This)->lpVtbl -> SetValue(This,key,propvar) )
1243 
1244 #define IPropertyStoreCache_Commit(This) \
1245  ( (This)->lpVtbl -> Commit(This) )
1246 
1247 
1248 #define IPropertyStoreCache_GetState(This,key,pstate) \
1249  ( (This)->lpVtbl -> GetState(This,key,pstate) )
1250 
1251 #define IPropertyStoreCache_GetValueAndState(This,key,ppropvar,pstate) \
1252  ( (This)->lpVtbl -> GetValueAndState(This,key,ppropvar,pstate) )
1253 
1254 #define IPropertyStoreCache_SetState(This,key,state) \
1255  ( (This)->lpVtbl -> SetState(This,key,state) )
1256 
1257 #define IPropertyStoreCache_SetValueAndState(This,key,ppropvar,state) \
1258  ( (This)->lpVtbl -> SetValueAndState(This,key,ppropvar,state) )
1259 
1260 #endif /* COBJMACROS */
1261 
1262 
1263 #endif /* C style interface */
1264 
1265 
1266 
1267 
1268 #endif /* __IPropertyStoreCache_INTERFACE_DEFINED__ */
1269 
1270 
1271 #ifndef __IPropertyEnumType_INTERFACE_DEFINED__
1272 #define __IPropertyEnumType_INTERFACE_DEFINED__
1273 
1274 /* interface IPropertyEnumType */
1275 /* [unique][object][uuid] */
1276 
1277 /* [v1_enum] */
1283  } ;
1285 
1286 
1287 EXTERN_C const IID IID_IPropertyEnumType;
1288 
1289 #if defined(__cplusplus) && !defined(CINTERFACE)
1290 
1291  MIDL_INTERFACE("11e1fbf9-2d56-4a6b-8db3-7cd193a471f2")
1292  IPropertyEnumType : public IUnknown
1293  {
1294  public:
1295  virtual HRESULT STDMETHODCALLTYPE GetEnumType(
1296  /* [out] */ __RPC__out PROPENUMTYPE *penumtype) = 0;
1297 
1298  virtual HRESULT STDMETHODCALLTYPE GetValue(
1299  /* [out] */ __RPC__out PROPVARIANT *ppropvar) = 0;
1300 
1301  virtual HRESULT STDMETHODCALLTYPE GetRangeMinValue(
1302  /* [out] */ __RPC__out PROPVARIANT *ppropvarMin) = 0;
1303 
1304  virtual HRESULT STDMETHODCALLTYPE GetRangeSetValue(
1305  /* [out] */ __RPC__out PROPVARIANT *ppropvarSet) = 0;
1306 
1307  virtual HRESULT STDMETHODCALLTYPE GetDisplayText(
1308  /* [out] */ __RPC__deref_out_opt LPWSTR *ppszDisplay) = 0;
1309 
1310  };
1311 
1312 #else /* C style interface */
1313 
1314  typedef struct IPropertyEnumTypeVtbl
1315  {
1316  BEGIN_INTERFACE
1317 
1318  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1319  IPropertyEnumType * This,
1320  /* [in] */ __RPC__in REFIID riid,
1321  /* [iid_is][out] */
1322  __RPC__deref_out void **ppvObject);
1323 
1324  ULONG ( STDMETHODCALLTYPE *AddRef )(
1325  IPropertyEnumType * This);
1326 
1327  ULONG ( STDMETHODCALLTYPE *Release )(
1328  IPropertyEnumType * This);
1329 
1330  HRESULT ( STDMETHODCALLTYPE *GetEnumType )(
1331  IPropertyEnumType * This,
1332  /* [out] */ __RPC__out PROPENUMTYPE *penumtype);
1333 
1334  HRESULT ( STDMETHODCALLTYPE *GetValue )(
1335  IPropertyEnumType * This,
1337 
1338  HRESULT ( STDMETHODCALLTYPE *GetRangeMinValue )(
1339  IPropertyEnumType * This,
1341 
1342  HRESULT ( STDMETHODCALLTYPE *GetRangeSetValue )(
1343  IPropertyEnumType * This,
1345 
1346  HRESULT ( STDMETHODCALLTYPE *GetDisplayText )(
1347  IPropertyEnumType * This,
1348  /* [out] */ __RPC__deref_out_opt LPWSTR *ppszDisplay);
1349 
1350  END_INTERFACE
1352 
1353  interface IPropertyEnumType
1354  {
1355  CONST_VTBL struct IPropertyEnumTypeVtbl *lpVtbl;
1356  };
1357 
1358 
1359 
1360 #ifdef COBJMACROS
1361 
1362 
1363 #define IPropertyEnumType_QueryInterface(This,riid,ppvObject) \
1364  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1365 
1366 #define IPropertyEnumType_AddRef(This) \
1367  ( (This)->lpVtbl -> AddRef(This) )
1368 
1369 #define IPropertyEnumType_Release(This) \
1370  ( (This)->lpVtbl -> Release(This) )
1371 
1372 
1373 #define IPropertyEnumType_GetEnumType(This,penumtype) \
1374  ( (This)->lpVtbl -> GetEnumType(This,penumtype) )
1375 
1376 #define IPropertyEnumType_GetValue(This,ppropvar) \
1377  ( (This)->lpVtbl -> GetValue(This,ppropvar) )
1378 
1379 #define IPropertyEnumType_GetRangeMinValue(This,ppropvarMin) \
1380  ( (This)->lpVtbl -> GetRangeMinValue(This,ppropvarMin) )
1381 
1382 #define IPropertyEnumType_GetRangeSetValue(This,ppropvarSet) \
1383  ( (This)->lpVtbl -> GetRangeSetValue(This,ppropvarSet) )
1384 
1385 #define IPropertyEnumType_GetDisplayText(This,ppszDisplay) \
1386  ( (This)->lpVtbl -> GetDisplayText(This,ppszDisplay) )
1387 
1388 #endif /* COBJMACROS */
1389 
1390 
1391 #endif /* C style interface */
1392 
1393 
1394 
1395 
1396 #endif /* __IPropertyEnumType_INTERFACE_DEFINED__ */
1397 
1398 
1399 #ifndef __IPropertyEnumTypeList_INTERFACE_DEFINED__
1400 #define __IPropertyEnumTypeList_INTERFACE_DEFINED__
1401 
1402 /* interface IPropertyEnumTypeList */
1403 /* [unique][object][uuid] */
1404 
1405 
1406 EXTERN_C const IID IID_IPropertyEnumTypeList;
1407 
1408 #if defined(__cplusplus) && !defined(CINTERFACE)
1409 
1410  MIDL_INTERFACE("a99400f4-3d84-4557-94ba-1242fb2cc9a6")
1411  IPropertyEnumTypeList : public IUnknown
1412  {
1413  public:
1414  virtual HRESULT STDMETHODCALLTYPE GetCount(
1415  /* [out] */ __RPC__out UINT *pctypes) = 0;
1416 
1417  virtual HRESULT STDMETHODCALLTYPE GetAt(
1418  /* [in] */ UINT itype,
1419  /* [in] */ __RPC__in REFIID riid,
1420  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
1421 
1422  virtual HRESULT STDMETHODCALLTYPE GetConditionAt(
1423  /* [in] */ UINT nIndex,
1424  /* [in] */ __RPC__in REFIID riid,
1425  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
1426 
1427  virtual HRESULT STDMETHODCALLTYPE FindMatchingIndex(
1428  /* [in] */ __RPC__in REFPROPVARIANT propvarCmp,
1429  /* [out] */ __RPC__out UINT *pnIndex) = 0;
1430 
1431  };
1432 
1433 #else /* C style interface */
1434 
1436  {
1437  BEGIN_INTERFACE
1438 
1439  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1440  IPropertyEnumTypeList * This,
1441  /* [in] */ __RPC__in REFIID riid,
1442  /* [iid_is][out] */
1443  __RPC__deref_out void **ppvObject);
1444 
1445  ULONG ( STDMETHODCALLTYPE *AddRef )(
1446  IPropertyEnumTypeList * This);
1447 
1448  ULONG ( STDMETHODCALLTYPE *Release )(
1449  IPropertyEnumTypeList * This);
1450 
1451  HRESULT ( STDMETHODCALLTYPE *GetCount )(
1452  IPropertyEnumTypeList * This,
1453  /* [out] */ __RPC__out UINT *pctypes);
1454 
1455  HRESULT ( STDMETHODCALLTYPE *GetAt )(
1456  IPropertyEnumTypeList * This,
1457  /* [in] */ UINT itype,
1458  /* [in] */ __RPC__in REFIID riid,
1459  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
1460 
1461  HRESULT ( STDMETHODCALLTYPE *GetConditionAt )(
1462  IPropertyEnumTypeList * This,
1463  /* [in] */ UINT nIndex,
1464  /* [in] */ __RPC__in REFIID riid,
1465  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
1466 
1467  HRESULT ( STDMETHODCALLTYPE *FindMatchingIndex )(
1468  IPropertyEnumTypeList * This,
1470  /* [out] */ __RPC__out UINT *pnIndex);
1471 
1472  END_INTERFACE
1474 
1475  interface IPropertyEnumTypeList
1476  {
1477  CONST_VTBL struct IPropertyEnumTypeListVtbl *lpVtbl;
1478  };
1479 
1480 
1481 
1482 #ifdef COBJMACROS
1483 
1484 
1485 #define IPropertyEnumTypeList_QueryInterface(This,riid,ppvObject) \
1486  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1487 
1488 #define IPropertyEnumTypeList_AddRef(This) \
1489  ( (This)->lpVtbl -> AddRef(This) )
1490 
1491 #define IPropertyEnumTypeList_Release(This) \
1492  ( (This)->lpVtbl -> Release(This) )
1493 
1494 
1495 #define IPropertyEnumTypeList_GetCount(This,pctypes) \
1496  ( (This)->lpVtbl -> GetCount(This,pctypes) )
1497 
1498 #define IPropertyEnumTypeList_GetAt(This,itype,riid,ppv) \
1499  ( (This)->lpVtbl -> GetAt(This,itype,riid,ppv) )
1500 
1501 #define IPropertyEnumTypeList_GetConditionAt(This,nIndex,riid,ppv) \
1502  ( (This)->lpVtbl -> GetConditionAt(This,nIndex,riid,ppv) )
1503 
1504 #define IPropertyEnumTypeList_FindMatchingIndex(This,propvarCmp,pnIndex) \
1505  ( (This)->lpVtbl -> FindMatchingIndex(This,propvarCmp,pnIndex) )
1506 
1507 #endif /* COBJMACROS */
1508 
1509 
1510 #endif /* C style interface */
1511 
1512 
1513 
1514 
1515 #endif /* __IPropertyEnumTypeList_INTERFACE_DEFINED__ */
1516 
1517 
1518 #ifndef __IPropertyDescription_INTERFACE_DEFINED__
1519 #define __IPropertyDescription_INTERFACE_DEFINED__
1520 
1521 /* interface IPropertyDescription */
1522 /* [unique][object][uuid] */
1523 
1524 /* [v1_enum] */
1537  PDTF_MASK_ALL = 0x800001ff
1538  } ;
1540 
1541 /* [v1_enum] */
1554  PDVF_HIDDEN = 0x800,
1555  PDVF_CANWRAP = 0x1000,
1556  PDVF_MASK_ALL = 0x1bff
1557  } ;
1559 
1560 /* [v1_enum] */
1567  } ;
1569 
1570 /* [v1_enum] */
1579  } ;
1581 
1582 /* [v1_enum] */
1593  PDFF_LONGDATE = 0x100,
1594  PDFF_HIDEDATE = 0x200,
1597  PDFF_READONLY = 0x1000,
1599  } ;
1601 
1602 /* [v1_enum] */
1609  } ;
1611 
1612 /* [v1_enum] */
1625  } ;
1627 
1628 /* [v1_enum] */
1638  } ;
1640 
1641 /* [v1_enum] */
1643  { PDCOT_NONE = 0,
1649  } ;
1651 
1652 
1653 EXTERN_C const IID IID_IPropertyDescription;
1654 
1655 #if defined(__cplusplus) && !defined(CINTERFACE)
1656 
1657  MIDL_INTERFACE("6f79d558-3e96-4549-a1d1-7d75d2288814")
1658  IPropertyDescription : public IUnknown
1659  {
1660  public:
1661  virtual HRESULT STDMETHODCALLTYPE GetPropertyKey(
1662  /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0;
1663 
1664  virtual HRESULT STDMETHODCALLTYPE GetCanonicalName(
1665  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName) = 0;
1666 
1667  virtual HRESULT STDMETHODCALLTYPE GetPropertyType(
1668  /* [out] */ __RPC__out VARTYPE *pvartype) = 0;
1669 
1670  virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
1671  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName) = 0;
1672 
1673  virtual HRESULT STDMETHODCALLTYPE GetEditInvitation(
1674  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite) = 0;
1675 
1676  virtual HRESULT STDMETHODCALLTYPE GetTypeFlags(
1677  /* [in] */ PROPDESC_TYPE_FLAGS mask,
1678  /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags) = 0;
1679 
1680  virtual HRESULT STDMETHODCALLTYPE GetViewFlags(
1681  /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags) = 0;
1682 
1683  virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnWidth(
1684  /* [out] */ __RPC__out UINT *pcxChars) = 0;
1685 
1686  virtual HRESULT STDMETHODCALLTYPE GetDisplayType(
1687  /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype) = 0;
1688 
1689  virtual HRESULT STDMETHODCALLTYPE GetColumnState(
1690  /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags) = 0;
1691 
1692  virtual HRESULT STDMETHODCALLTYPE GetGroupingRange(
1693  /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr) = 0;
1694 
1695  virtual HRESULT STDMETHODCALLTYPE GetRelativeDescriptionType(
1696  /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) = 0;
1697 
1698  virtual HRESULT STDMETHODCALLTYPE GetRelativeDescription(
1699  /* [in] */ __RPC__in REFPROPVARIANT propvar1,
1700  /* [in] */ __RPC__in REFPROPVARIANT propvar2,
1701  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1,
1702  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2) = 0;
1703 
1704  virtual HRESULT STDMETHODCALLTYPE GetSortDescription(
1705  /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd) = 0;
1706 
1707  virtual HRESULT STDMETHODCALLTYPE GetSortDescriptionLabel(
1708  /* [in] */ BOOL fDescending,
1709  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription) = 0;
1710 
1711  virtual HRESULT STDMETHODCALLTYPE GetAggregationType(
1712  /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype) = 0;
1713 
1714  virtual HRESULT STDMETHODCALLTYPE GetConditionType(
1715  /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype,
1716  /* [out] */ __RPC__out CONDITION_OPERATION *popDefault) = 0;
1717 
1718  virtual HRESULT STDMETHODCALLTYPE GetEnumTypeList(
1719  /* [in] */ __RPC__in REFIID riid,
1720  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
1721 
1722  virtual /* [local] */ HRESULT STDMETHODCALLTYPE CoerceToCanonicalValue(
1723  /* [out][in] */ PROPVARIANT *ppropvar) = 0;
1724 
1725  virtual HRESULT STDMETHODCALLTYPE FormatForDisplay(
1726  /* [in] */ __RPC__in REFPROPVARIANT propvar,
1727  /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags,
1728  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay) = 0;
1729 
1730  virtual HRESULT STDMETHODCALLTYPE IsValueCanonical(
1731  /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0;
1732 
1733  };
1734 
1735 #else /* C style interface */
1736 
1738  {
1739  BEGIN_INTERFACE
1740 
1741  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1742  IPropertyDescription * This,
1743  /* [in] */ __RPC__in REFIID riid,
1744  /* [iid_is][out] */
1745  __RPC__deref_out void **ppvObject);
1746 
1747  ULONG ( STDMETHODCALLTYPE *AddRef )(
1748  IPropertyDescription * This);
1749 
1750  ULONG ( STDMETHODCALLTYPE *Release )(
1751  IPropertyDescription * This);
1752 
1753  HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )(
1754  IPropertyDescription * This,
1755  /* [out] */ __RPC__out PROPERTYKEY *pkey);
1756 
1757  HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )(
1758  IPropertyDescription * This,
1759  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
1760 
1761  HRESULT ( STDMETHODCALLTYPE *GetPropertyType )(
1762  IPropertyDescription * This,
1763  /* [out] */ __RPC__out VARTYPE *pvartype);
1764 
1765  HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
1766  IPropertyDescription * This,
1767  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
1768 
1769  HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )(
1770  IPropertyDescription * This,
1771  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite);
1772 
1773  HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )(
1774  IPropertyDescription * This,
1775  /* [in] */ PROPDESC_TYPE_FLAGS mask,
1776  /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags);
1777 
1778  HRESULT ( STDMETHODCALLTYPE *GetViewFlags )(
1779  IPropertyDescription * This,
1780  /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags);
1781 
1782  HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )(
1783  IPropertyDescription * This,
1784  /* [out] */ __RPC__out UINT *pcxChars);
1785 
1786  HRESULT ( STDMETHODCALLTYPE *GetDisplayType )(
1787  IPropertyDescription * This,
1788  /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype);
1789 
1790  HRESULT ( STDMETHODCALLTYPE *GetColumnState )(
1791  IPropertyDescription * This,
1793 
1794  HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )(
1795  IPropertyDescription * This,
1796  /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr);
1797 
1798  HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )(
1799  IPropertyDescription * This,
1800  /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt);
1801 
1802  HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )(
1803  IPropertyDescription * This,
1805  /* [in] */ __RPC__in REFPROPVARIANT propvar2,
1806  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1,
1807  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2);
1808 
1809  HRESULT ( STDMETHODCALLTYPE *GetSortDescription )(
1810  IPropertyDescription * This,
1811  /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd);
1812 
1813  HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )(
1814  IPropertyDescription * This,
1815  /* [in] */ BOOL fDescending,
1816  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription);
1817 
1818  HRESULT ( STDMETHODCALLTYPE *GetAggregationType )(
1819  IPropertyDescription * This,
1820  /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype);
1821 
1822  HRESULT ( STDMETHODCALLTYPE *GetConditionType )(
1823  IPropertyDescription * This,
1824  /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype,
1826 
1827  HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )(
1828  IPropertyDescription * This,
1829  /* [in] */ __RPC__in REFIID riid,
1830  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
1831 
1832  /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )(
1833  IPropertyDescription * This,
1834  /* [out][in] */ PROPVARIANT *ppropvar);
1835 
1836  HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )(
1837  IPropertyDescription * This,
1839  /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags,
1840  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay);
1841 
1842  HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )(
1843  IPropertyDescription * This,
1844  /* [in] */ __RPC__in REFPROPVARIANT propvar);
1845 
1846  END_INTERFACE
1848 
1849  interface IPropertyDescription
1850  {
1851  CONST_VTBL struct IPropertyDescriptionVtbl *lpVtbl;
1852  };
1853 
1854 
1855 
1856 #ifdef COBJMACROS
1857 
1858 
1859 #define IPropertyDescription_QueryInterface(This,riid,ppvObject) \
1860  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1861 
1862 #define IPropertyDescription_AddRef(This) \
1863  ( (This)->lpVtbl -> AddRef(This) )
1864 
1865 #define IPropertyDescription_Release(This) \
1866  ( (This)->lpVtbl -> Release(This) )
1867 
1868 
1869 #define IPropertyDescription_GetPropertyKey(This,pkey) \
1870  ( (This)->lpVtbl -> GetPropertyKey(This,pkey) )
1871 
1872 #define IPropertyDescription_GetCanonicalName(This,ppszName) \
1873  ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) )
1874 
1875 #define IPropertyDescription_GetPropertyType(This,pvartype) \
1876  ( (This)->lpVtbl -> GetPropertyType(This,pvartype) )
1877 
1878 #define IPropertyDescription_GetDisplayName(This,ppszName) \
1879  ( (This)->lpVtbl -> GetDisplayName(This,ppszName) )
1880 
1881 #define IPropertyDescription_GetEditInvitation(This,ppszInvite) \
1882  ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) )
1883 
1884 #define IPropertyDescription_GetTypeFlags(This,mask,ppdtFlags) \
1885  ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) )
1886 
1887 #define IPropertyDescription_GetViewFlags(This,ppdvFlags) \
1888  ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) )
1889 
1890 #define IPropertyDescription_GetDefaultColumnWidth(This,pcxChars) \
1891  ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) )
1892 
1893 #define IPropertyDescription_GetDisplayType(This,pdisplaytype) \
1894  ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) )
1895 
1896 #define IPropertyDescription_GetColumnState(This,pcsFlags) \
1897  ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) )
1898 
1899 #define IPropertyDescription_GetGroupingRange(This,pgr) \
1900  ( (This)->lpVtbl -> GetGroupingRange(This,pgr) )
1901 
1902 #define IPropertyDescription_GetRelativeDescriptionType(This,prdt) \
1903  ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) )
1904 
1905 #define IPropertyDescription_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \
1906  ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) )
1907 
1908 #define IPropertyDescription_GetSortDescription(This,psd) \
1909  ( (This)->lpVtbl -> GetSortDescription(This,psd) )
1910 
1911 #define IPropertyDescription_GetSortDescriptionLabel(This,fDescending,ppszDescription) \
1912  ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) )
1913 
1914 #define IPropertyDescription_GetAggregationType(This,paggtype) \
1915  ( (This)->lpVtbl -> GetAggregationType(This,paggtype) )
1916 
1917 #define IPropertyDescription_GetConditionType(This,pcontype,popDefault) \
1918  ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) )
1919 
1920 #define IPropertyDescription_GetEnumTypeList(This,riid,ppv) \
1921  ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) )
1922 
1923 #define IPropertyDescription_CoerceToCanonicalValue(This,ppropvar) \
1924  ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) )
1925 
1926 #define IPropertyDescription_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \
1927  ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) )
1928 
1929 #define IPropertyDescription_IsValueCanonical(This,propvar) \
1930  ( (This)->lpVtbl -> IsValueCanonical(This,propvar) )
1931 
1932 #endif /* COBJMACROS */
1933 
1934 
1935 #endif /* C style interface */
1936 
1937 
1938 
1939 /* [call_as] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_RemoteCoerceToCanonicalValue_Proxy(
1940  IPropertyDescription * This,
1941  /* [in] */ __RPC__in REFPROPVARIANT propvar,
1942  /* [out] */ __RPC__out PROPVARIANT *ppropvar);
1943 
1944 
1946  IRpcStubBuffer *This,
1947  IRpcChannelBuffer *_pRpcChannelBuffer,
1948  PRPC_MESSAGE _pRpcMessage,
1949  DWORD *_pdwStubPhase);
1950 
1951 
1952 
1953 #endif /* __IPropertyDescription_INTERFACE_DEFINED__ */
1954 
1955 
1956 #ifndef __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__
1957 #define __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__
1958 
1959 /* interface IPropertyDescriptionAliasInfo */
1960 /* [unique][object][uuid] */
1961 
1962 
1964 
1965 #if defined(__cplusplus) && !defined(CINTERFACE)
1966 
1967  MIDL_INTERFACE("f67104fc-2af9-46fd-b32d-243c1404f3d1")
1969  {
1970  public:
1971  virtual HRESULT STDMETHODCALLTYPE GetSortByAlias(
1972  /* [in] */ __RPC__in REFIID riid,
1973  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
1974 
1975  virtual HRESULT STDMETHODCALLTYPE GetAdditionalSortByAliases(
1976  /* [in] */ __RPC__in REFIID riid,
1977  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
1978 
1979  };
1980 
1981 #else /* C style interface */
1982 
1984  {
1985  BEGIN_INTERFACE
1986 
1987  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
1989  /* [in] */ __RPC__in REFIID riid,
1990  /* [iid_is][out] */
1991  __RPC__deref_out void **ppvObject);
1992 
1993  ULONG ( STDMETHODCALLTYPE *AddRef )(
1995 
1996  ULONG ( STDMETHODCALLTYPE *Release )(
1998 
1999  HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )(
2001  /* [out] */ __RPC__out PROPERTYKEY *pkey);
2002 
2003  HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )(
2005  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
2006 
2007  HRESULT ( STDMETHODCALLTYPE *GetPropertyType )(
2009  /* [out] */ __RPC__out VARTYPE *pvartype);
2010 
2011  HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
2013  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
2014 
2015  HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )(
2017  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite);
2018 
2019  HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )(
2021  /* [in] */ PROPDESC_TYPE_FLAGS mask,
2022  /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags);
2023 
2024  HRESULT ( STDMETHODCALLTYPE *GetViewFlags )(
2026  /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags);
2027 
2028  HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )(
2030  /* [out] */ __RPC__out UINT *pcxChars);
2031 
2032  HRESULT ( STDMETHODCALLTYPE *GetDisplayType )(
2034  /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype);
2035 
2036  HRESULT ( STDMETHODCALLTYPE *GetColumnState )(
2039 
2040  HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )(
2042  /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr);
2043 
2044  HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )(
2046  /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt);
2047 
2048  HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )(
2051  /* [in] */ __RPC__in REFPROPVARIANT propvar2,
2052  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1,
2053  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2);
2054 
2055  HRESULT ( STDMETHODCALLTYPE *GetSortDescription )(
2057  /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd);
2058 
2059  HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )(
2061  /* [in] */ BOOL fDescending,
2062  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription);
2063 
2064  HRESULT ( STDMETHODCALLTYPE *GetAggregationType )(
2066  /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype);
2067 
2068  HRESULT ( STDMETHODCALLTYPE *GetConditionType )(
2070  /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype,
2072 
2073  HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )(
2075  /* [in] */ __RPC__in REFIID riid,
2076  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2077 
2078  /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )(
2080  /* [out][in] */ PROPVARIANT *ppropvar);
2081 
2082  HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )(
2085  /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags,
2086  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay);
2087 
2088  HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )(
2090  /* [in] */ __RPC__in REFPROPVARIANT propvar);
2091 
2092  HRESULT ( STDMETHODCALLTYPE *GetSortByAlias )(
2094  /* [in] */ __RPC__in REFIID riid,
2095  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2096 
2097  HRESULT ( STDMETHODCALLTYPE *GetAdditionalSortByAliases )(
2099  /* [in] */ __RPC__in REFIID riid,
2100  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2101 
2102  END_INTERFACE
2104 
2106  {
2107  CONST_VTBL struct IPropertyDescriptionAliasInfoVtbl *lpVtbl;
2108  };
2109 
2110 
2111 
2112 #ifdef COBJMACROS
2113 
2114 
2115 #define IPropertyDescriptionAliasInfo_QueryInterface(This,riid,ppvObject) \
2116  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2117 
2118 #define IPropertyDescriptionAliasInfo_AddRef(This) \
2119  ( (This)->lpVtbl -> AddRef(This) )
2120 
2121 #define IPropertyDescriptionAliasInfo_Release(This) \
2122  ( (This)->lpVtbl -> Release(This) )
2123 
2124 
2125 #define IPropertyDescriptionAliasInfo_GetPropertyKey(This,pkey) \
2126  ( (This)->lpVtbl -> GetPropertyKey(This,pkey) )
2127 
2128 #define IPropertyDescriptionAliasInfo_GetCanonicalName(This,ppszName) \
2129  ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) )
2130 
2131 #define IPropertyDescriptionAliasInfo_GetPropertyType(This,pvartype) \
2132  ( (This)->lpVtbl -> GetPropertyType(This,pvartype) )
2133 
2134 #define IPropertyDescriptionAliasInfo_GetDisplayName(This,ppszName) \
2135  ( (This)->lpVtbl -> GetDisplayName(This,ppszName) )
2136 
2137 #define IPropertyDescriptionAliasInfo_GetEditInvitation(This,ppszInvite) \
2138  ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) )
2139 
2140 #define IPropertyDescriptionAliasInfo_GetTypeFlags(This,mask,ppdtFlags) \
2141  ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) )
2142 
2143 #define IPropertyDescriptionAliasInfo_GetViewFlags(This,ppdvFlags) \
2144  ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) )
2145 
2146 #define IPropertyDescriptionAliasInfo_GetDefaultColumnWidth(This,pcxChars) \
2147  ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) )
2148 
2149 #define IPropertyDescriptionAliasInfo_GetDisplayType(This,pdisplaytype) \
2150  ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) )
2151 
2152 #define IPropertyDescriptionAliasInfo_GetColumnState(This,pcsFlags) \
2153  ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) )
2154 
2155 #define IPropertyDescriptionAliasInfo_GetGroupingRange(This,pgr) \
2156  ( (This)->lpVtbl -> GetGroupingRange(This,pgr) )
2157 
2158 #define IPropertyDescriptionAliasInfo_GetRelativeDescriptionType(This,prdt) \
2159  ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) )
2160 
2161 #define IPropertyDescriptionAliasInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \
2162  ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) )
2163 
2164 #define IPropertyDescriptionAliasInfo_GetSortDescription(This,psd) \
2165  ( (This)->lpVtbl -> GetSortDescription(This,psd) )
2166 
2167 #define IPropertyDescriptionAliasInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) \
2168  ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) )
2169 
2170 #define IPropertyDescriptionAliasInfo_GetAggregationType(This,paggtype) \
2171  ( (This)->lpVtbl -> GetAggregationType(This,paggtype) )
2172 
2173 #define IPropertyDescriptionAliasInfo_GetConditionType(This,pcontype,popDefault) \
2174  ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) )
2175 
2176 #define IPropertyDescriptionAliasInfo_GetEnumTypeList(This,riid,ppv) \
2177  ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) )
2178 
2179 #define IPropertyDescriptionAliasInfo_CoerceToCanonicalValue(This,ppropvar) \
2180  ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) )
2181 
2182 #define IPropertyDescriptionAliasInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \
2183  ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) )
2184 
2185 #define IPropertyDescriptionAliasInfo_IsValueCanonical(This,propvar) \
2186  ( (This)->lpVtbl -> IsValueCanonical(This,propvar) )
2187 
2188 
2189 #define IPropertyDescriptionAliasInfo_GetSortByAlias(This,riid,ppv) \
2190  ( (This)->lpVtbl -> GetSortByAlias(This,riid,ppv) )
2191 
2192 #define IPropertyDescriptionAliasInfo_GetAdditionalSortByAliases(This,riid,ppv) \
2193  ( (This)->lpVtbl -> GetAdditionalSortByAliases(This,riid,ppv) )
2194 
2195 #endif /* COBJMACROS */
2196 
2197 
2198 #endif /* C style interface */
2199 
2200 
2201 
2202 
2203 #endif /* __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ */
2204 
2205 
2206 #ifndef __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__
2207 #define __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__
2208 
2209 /* interface IPropertyDescriptionSearchInfo */
2210 /* [unique][object][uuid] */
2211 
2212 /* [v1_enum] */
2218  } ;
2220 
2221 typedef /* [v1_enum] */
2223  { PDCIT_NONE = 0,
2227 
2228 
2230 
2231 #if defined(__cplusplus) && !defined(CINTERFACE)
2232 
2233  MIDL_INTERFACE("078f91bd-29a2-440f-924e-46a291524520")
2235  {
2236  public:
2237  virtual HRESULT STDMETHODCALLTYPE GetSearchInfoFlags(
2238  /* [out] */ __RPC__out PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags) = 0;
2239 
2240  virtual HRESULT STDMETHODCALLTYPE GetColumnIndexType(
2241  /* [out] */ __RPC__out PROPDESC_COLUMNINDEX_TYPE *ppdciType) = 0;
2242 
2243  virtual HRESULT STDMETHODCALLTYPE GetProjectionString(
2244  /* [out] */ __RPC__deref_out_opt LPWSTR *ppszProjection) = 0;
2245 
2246  virtual HRESULT STDMETHODCALLTYPE GetMaxSize(
2247  /* [out] */ __RPC__out UINT *pcbMaxSize) = 0;
2248 
2249  };
2250 
2251 #else /* C style interface */
2252 
2254  {
2255  BEGIN_INTERFACE
2256 
2257  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2259  /* [in] */ __RPC__in REFIID riid,
2260  /* [iid_is][out] */
2261  __RPC__deref_out void **ppvObject);
2262 
2263  ULONG ( STDMETHODCALLTYPE *AddRef )(
2265 
2266  ULONG ( STDMETHODCALLTYPE *Release )(
2268 
2269  HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )(
2271  /* [out] */ __RPC__out PROPERTYKEY *pkey);
2272 
2273  HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )(
2275  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
2276 
2277  HRESULT ( STDMETHODCALLTYPE *GetPropertyType )(
2279  /* [out] */ __RPC__out VARTYPE *pvartype);
2280 
2281  HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
2283  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName);
2284 
2285  HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )(
2287  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite);
2288 
2289  HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )(
2291  /* [in] */ PROPDESC_TYPE_FLAGS mask,
2292  /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags);
2293 
2294  HRESULT ( STDMETHODCALLTYPE *GetViewFlags )(
2296  /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags);
2297 
2298  HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )(
2300  /* [out] */ __RPC__out UINT *pcxChars);
2301 
2302  HRESULT ( STDMETHODCALLTYPE *GetDisplayType )(
2304  /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype);
2305 
2306  HRESULT ( STDMETHODCALLTYPE *GetColumnState )(
2309 
2310  HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )(
2312  /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr);
2313 
2314  HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )(
2316  /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt);
2317 
2318  HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )(
2321  /* [in] */ __RPC__in REFPROPVARIANT propvar2,
2322  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1,
2323  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2);
2324 
2325  HRESULT ( STDMETHODCALLTYPE *GetSortDescription )(
2327  /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd);
2328 
2329  HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )(
2331  /* [in] */ BOOL fDescending,
2332  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription);
2333 
2334  HRESULT ( STDMETHODCALLTYPE *GetAggregationType )(
2336  /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype);
2337 
2338  HRESULT ( STDMETHODCALLTYPE *GetConditionType )(
2340  /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype,
2342 
2343  HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )(
2345  /* [in] */ __RPC__in REFIID riid,
2346  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2347 
2348  /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )(
2350  /* [out][in] */ PROPVARIANT *ppropvar);
2351 
2352  HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )(
2355  /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags,
2356  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay);
2357 
2358  HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )(
2360  /* [in] */ __RPC__in REFPROPVARIANT propvar);
2361 
2362  HRESULT ( STDMETHODCALLTYPE *GetSearchInfoFlags )(
2364  /* [out] */ __RPC__out PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags);
2365 
2366  HRESULT ( STDMETHODCALLTYPE *GetColumnIndexType )(
2369 
2370  HRESULT ( STDMETHODCALLTYPE *GetProjectionString )(
2372  /* [out] */ __RPC__deref_out_opt LPWSTR *ppszProjection);
2373 
2374  HRESULT ( STDMETHODCALLTYPE *GetMaxSize )(
2376  /* [out] */ __RPC__out UINT *pcbMaxSize);
2377 
2378  END_INTERFACE
2380 
2382  {
2383  CONST_VTBL struct IPropertyDescriptionSearchInfoVtbl *lpVtbl;
2384  };
2385 
2386 
2387 
2388 #ifdef COBJMACROS
2389 
2390 
2391 #define IPropertyDescriptionSearchInfo_QueryInterface(This,riid,ppvObject) \
2392  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2393 
2394 #define IPropertyDescriptionSearchInfo_AddRef(This) \
2395  ( (This)->lpVtbl -> AddRef(This) )
2396 
2397 #define IPropertyDescriptionSearchInfo_Release(This) \
2398  ( (This)->lpVtbl -> Release(This) )
2399 
2400 
2401 #define IPropertyDescriptionSearchInfo_GetPropertyKey(This,pkey) \
2402  ( (This)->lpVtbl -> GetPropertyKey(This,pkey) )
2403 
2404 #define IPropertyDescriptionSearchInfo_GetCanonicalName(This,ppszName) \
2405  ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) )
2406 
2407 #define IPropertyDescriptionSearchInfo_GetPropertyType(This,pvartype) \
2408  ( (This)->lpVtbl -> GetPropertyType(This,pvartype) )
2409 
2410 #define IPropertyDescriptionSearchInfo_GetDisplayName(This,ppszName) \
2411  ( (This)->lpVtbl -> GetDisplayName(This,ppszName) )
2412 
2413 #define IPropertyDescriptionSearchInfo_GetEditInvitation(This,ppszInvite) \
2414  ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) )
2415 
2416 #define IPropertyDescriptionSearchInfo_GetTypeFlags(This,mask,ppdtFlags) \
2417  ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) )
2418 
2419 #define IPropertyDescriptionSearchInfo_GetViewFlags(This,ppdvFlags) \
2420  ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) )
2421 
2422 #define IPropertyDescriptionSearchInfo_GetDefaultColumnWidth(This,pcxChars) \
2423  ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) )
2424 
2425 #define IPropertyDescriptionSearchInfo_GetDisplayType(This,pdisplaytype) \
2426  ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) )
2427 
2428 #define IPropertyDescriptionSearchInfo_GetColumnState(This,pcsFlags) \
2429  ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) )
2430 
2431 #define IPropertyDescriptionSearchInfo_GetGroupingRange(This,pgr) \
2432  ( (This)->lpVtbl -> GetGroupingRange(This,pgr) )
2433 
2434 #define IPropertyDescriptionSearchInfo_GetRelativeDescriptionType(This,prdt) \
2435  ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) )
2436 
2437 #define IPropertyDescriptionSearchInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \
2438  ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) )
2439 
2440 #define IPropertyDescriptionSearchInfo_GetSortDescription(This,psd) \
2441  ( (This)->lpVtbl -> GetSortDescription(This,psd) )
2442 
2443 #define IPropertyDescriptionSearchInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) \
2444  ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) )
2445 
2446 #define IPropertyDescriptionSearchInfo_GetAggregationType(This,paggtype) \
2447  ( (This)->lpVtbl -> GetAggregationType(This,paggtype) )
2448 
2449 #define IPropertyDescriptionSearchInfo_GetConditionType(This,pcontype,popDefault) \
2450  ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) )
2451 
2452 #define IPropertyDescriptionSearchInfo_GetEnumTypeList(This,riid,ppv) \
2453  ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) )
2454 
2455 #define IPropertyDescriptionSearchInfo_CoerceToCanonicalValue(This,ppropvar) \
2456  ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) )
2457 
2458 #define IPropertyDescriptionSearchInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \
2459  ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) )
2460 
2461 #define IPropertyDescriptionSearchInfo_IsValueCanonical(This,propvar) \
2462  ( (This)->lpVtbl -> IsValueCanonical(This,propvar) )
2463 
2464 
2465 #define IPropertyDescriptionSearchInfo_GetSearchInfoFlags(This,ppdsiFlags) \
2466  ( (This)->lpVtbl -> GetSearchInfoFlags(This,ppdsiFlags) )
2467 
2468 #define IPropertyDescriptionSearchInfo_GetColumnIndexType(This,ppdciType) \
2469  ( (This)->lpVtbl -> GetColumnIndexType(This,ppdciType) )
2470 
2471 #define IPropertyDescriptionSearchInfo_GetProjectionString(This,ppszProjection) \
2472  ( (This)->lpVtbl -> GetProjectionString(This,ppszProjection) )
2473 
2474 #define IPropertyDescriptionSearchInfo_GetMaxSize(This,pcbMaxSize) \
2475  ( (This)->lpVtbl -> GetMaxSize(This,pcbMaxSize) )
2476 
2477 #endif /* COBJMACROS */
2478 
2479 
2480 #endif /* C style interface */
2481 
2482 
2483 
2484 
2485 #endif /* __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ */
2486 
2487 
2488 /* interface __MIDL_itf_propsys_0000_0014 */
2489 /* [local] */
2490 
2491 /* [v1_enum] */
2493  { PDEF_ALL = 0,
2500  } ;
2502 
2503 
2504 
2505 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0014_v0_0_c_ifspec;
2506 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0014_v0_0_s_ifspec;
2507 
2508 #ifndef __IPropertySystem_INTERFACE_DEFINED__
2509 #define __IPropertySystem_INTERFACE_DEFINED__
2510 
2511 /* interface IPropertySystem */
2512 /* [unique][object][uuid] */
2513 
2514 
2515 EXTERN_C const IID IID_IPropertySystem;
2516 
2517 #if defined(__cplusplus) && !defined(CINTERFACE)
2518 
2519  MIDL_INTERFACE("ca724e8a-c3e6-442b-88a4-6fb0db8035a3")
2520  IPropertySystem : public IUnknown
2521  {
2522  public:
2523  virtual HRESULT STDMETHODCALLTYPE GetPropertyDescription(
2524  /* [in] */ __RPC__in REFPROPERTYKEY propkey,
2525  /* [in] */ __RPC__in REFIID riid,
2526  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2527 
2528  virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionByName(
2529  /* [string][in] */ __RPC__in LPCWSTR pszCanonicalName,
2530  /* [in] */ __RPC__in REFIID riid,
2531  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2532 
2533  virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionListFromString(
2534  /* [string][in] */ __RPC__in LPCWSTR pszPropList,
2535  /* [in] */ __RPC__in REFIID riid,
2536  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2537 
2538  virtual HRESULT STDMETHODCALLTYPE EnumeratePropertyDescriptions(
2539  /* [in] */ PROPDESC_ENUMFILTER filterOn,
2540  /* [in] */ __RPC__in REFIID riid,
2541  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2542 
2543  virtual HRESULT STDMETHODCALLTYPE FormatForDisplay(
2544  /* [in] */ __RPC__in REFPROPERTYKEY key,
2545  /* [in] */ __RPC__in REFPROPVARIANT propvar,
2546  /* [in] */ PROPDESC_FORMAT_FLAGS pdff,
2547  /* [size_is][string][out] */ __RPC__out_ecount_full_string(cchText) LPWSTR pszText,
2548  /* [in] */ DWORD cchText) = 0;
2549 
2550  virtual HRESULT STDMETHODCALLTYPE FormatForDisplayAlloc(
2551  /* [in] */ __RPC__in REFPROPERTYKEY key,
2552  /* [in] */ __RPC__in REFPROPVARIANT propvar,
2553  /* [in] */ PROPDESC_FORMAT_FLAGS pdff,
2554  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay) = 0;
2555 
2556  virtual HRESULT STDMETHODCALLTYPE RegisterPropertySchema(
2557  /* [string][in] */ __RPC__in LPCWSTR pszPath) = 0;
2558 
2559  virtual HRESULT STDMETHODCALLTYPE UnregisterPropertySchema(
2560  /* [string][in] */ __RPC__in LPCWSTR pszPath) = 0;
2561 
2562  virtual HRESULT STDMETHODCALLTYPE RefreshPropertySchema( void) = 0;
2563 
2564  };
2565 
2566 #else /* C style interface */
2567 
2568  typedef struct IPropertySystemVtbl
2569  {
2570  BEGIN_INTERFACE
2571 
2572  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2573  IPropertySystem * This,
2574  /* [in] */ __RPC__in REFIID riid,
2575  /* [iid_is][out] */
2576  __RPC__deref_out void **ppvObject);
2577 
2578  ULONG ( STDMETHODCALLTYPE *AddRef )(
2579  IPropertySystem * This);
2580 
2581  ULONG ( STDMETHODCALLTYPE *Release )(
2582  IPropertySystem * This);
2583 
2584  HRESULT ( STDMETHODCALLTYPE *GetPropertyDescription )(
2585  IPropertySystem * This,
2586  /* [in] */ __RPC__in REFPROPERTYKEY propkey,
2587  /* [in] */ __RPC__in REFIID riid,
2588  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2589 
2590  HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionByName )(
2591  IPropertySystem * This,
2592  /* [string][in] */ __RPC__in LPCWSTR pszCanonicalName,
2593  /* [in] */ __RPC__in REFIID riid,
2594  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2595 
2596  HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionListFromString )(
2597  IPropertySystem * This,
2598  /* [string][in] */ __RPC__in LPCWSTR pszPropList,
2599  /* [in] */ __RPC__in REFIID riid,
2600  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2601 
2602  HRESULT ( STDMETHODCALLTYPE *EnumeratePropertyDescriptions )(
2603  IPropertySystem * This,
2604  /* [in] */ PROPDESC_ENUMFILTER filterOn,
2605  /* [in] */ __RPC__in REFIID riid,
2606  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2607 
2608  HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )(
2609  IPropertySystem * This,
2610  /* [in] */ __RPC__in REFPROPERTYKEY key,
2611  /* [in] */ __RPC__in REFPROPVARIANT propvar,
2612  /* [in] */ PROPDESC_FORMAT_FLAGS pdff,
2613  /* [size_is][string][out] */ __RPC__out_ecount_full_string(cchText) LPWSTR pszText,
2614  /* [in] */ DWORD cchText);
2615 
2616  HRESULT ( STDMETHODCALLTYPE *FormatForDisplayAlloc )(
2617  IPropertySystem * This,
2618  /* [in] */ __RPC__in REFPROPERTYKEY key,
2619  /* [in] */ __RPC__in REFPROPVARIANT propvar,
2620  /* [in] */ PROPDESC_FORMAT_FLAGS pdff,
2621  /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay);
2622 
2623  HRESULT ( STDMETHODCALLTYPE *RegisterPropertySchema )(
2624  IPropertySystem * This,
2625  /* [string][in] */ __RPC__in LPCWSTR pszPath);
2626 
2627  HRESULT ( STDMETHODCALLTYPE *UnregisterPropertySchema )(
2628  IPropertySystem * This,
2629  /* [string][in] */ __RPC__in LPCWSTR pszPath);
2630 
2631  HRESULT ( STDMETHODCALLTYPE *RefreshPropertySchema )(
2632  IPropertySystem * This);
2633 
2634  END_INTERFACE
2636 
2638  {
2639  CONST_VTBL struct IPropertySystemVtbl *lpVtbl;
2640  };
2641 
2642 
2643 
2644 #ifdef COBJMACROS
2645 
2646 
2647 #define IPropertySystem_QueryInterface(This,riid,ppvObject) \
2648  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2649 
2650 #define IPropertySystem_AddRef(This) \
2651  ( (This)->lpVtbl -> AddRef(This) )
2652 
2653 #define IPropertySystem_Release(This) \
2654  ( (This)->lpVtbl -> Release(This) )
2655 
2656 
2657 #define IPropertySystem_GetPropertyDescription(This,propkey,riid,ppv) \
2658  ( (This)->lpVtbl -> GetPropertyDescription(This,propkey,riid,ppv) )
2659 
2660 #define IPropertySystem_GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) \
2661  ( (This)->lpVtbl -> GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) )
2662 
2663 #define IPropertySystem_GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) \
2664  ( (This)->lpVtbl -> GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) )
2665 
2666 #define IPropertySystem_EnumeratePropertyDescriptions(This,filterOn,riid,ppv) \
2667  ( (This)->lpVtbl -> EnumeratePropertyDescriptions(This,filterOn,riid,ppv) )
2668 
2669 #define IPropertySystem_FormatForDisplay(This,key,propvar,pdff,pszText,cchText) \
2670  ( (This)->lpVtbl -> FormatForDisplay(This,key,propvar,pdff,pszText,cchText) )
2671 
2672 #define IPropertySystem_FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) \
2673  ( (This)->lpVtbl -> FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) )
2674 
2675 #define IPropertySystem_RegisterPropertySchema(This,pszPath) \
2676  ( (This)->lpVtbl -> RegisterPropertySchema(This,pszPath) )
2677 
2678 #define IPropertySystem_UnregisterPropertySchema(This,pszPath) \
2679  ( (This)->lpVtbl -> UnregisterPropertySchema(This,pszPath) )
2680 
2681 #define IPropertySystem_RefreshPropertySchema(This) \
2682  ( (This)->lpVtbl -> RefreshPropertySchema(This) )
2683 
2684 #endif /* COBJMACROS */
2685 
2686 
2687 #endif /* C style interface */
2688 
2689 
2690 
2691 
2692 #endif /* __IPropertySystem_INTERFACE_DEFINED__ */
2693 
2694 
2695 #ifndef __IPropertyDescriptionList_INTERFACE_DEFINED__
2696 #define __IPropertyDescriptionList_INTERFACE_DEFINED__
2697 
2698 /* interface IPropertyDescriptionList */
2699 /* [unique][object][uuid] */
2700 
2701 
2702 EXTERN_C const IID IID_IPropertyDescriptionList;
2703 
2704 #if defined(__cplusplus) && !defined(CINTERFACE)
2705 
2706  MIDL_INTERFACE("1f9fc1d0-c39b-4b26-817f-011967d3440e")
2707  IPropertyDescriptionList : public IUnknown
2708  {
2709  public:
2710  virtual HRESULT STDMETHODCALLTYPE GetCount(
2711  /* [out] */ __RPC__out UINT *pcElem) = 0;
2712 
2713  virtual HRESULT STDMETHODCALLTYPE GetAt(
2714  /* [in] */ UINT iElem,
2715  /* [in] */ __RPC__in REFIID riid,
2716  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2717 
2718  };
2719 
2720 #else /* C style interface */
2721 
2723  {
2724  BEGIN_INTERFACE
2725 
2726  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2727  IPropertyDescriptionList * This,
2728  /* [in] */ __RPC__in REFIID riid,
2729  /* [iid_is][out] */
2730  __RPC__deref_out void **ppvObject);
2731 
2732  ULONG ( STDMETHODCALLTYPE *AddRef )(
2733  IPropertyDescriptionList * This);
2734 
2735  ULONG ( STDMETHODCALLTYPE *Release )(
2736  IPropertyDescriptionList * This);
2737 
2738  HRESULT ( STDMETHODCALLTYPE *GetCount )(
2739  IPropertyDescriptionList * This,
2740  /* [out] */ __RPC__out UINT *pcElem);
2741 
2742  HRESULT ( STDMETHODCALLTYPE *GetAt )(
2743  IPropertyDescriptionList * This,
2744  /* [in] */ UINT iElem,
2745  /* [in] */ __RPC__in REFIID riid,
2746  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2747 
2748  END_INTERFACE
2750 
2751  interface IPropertyDescriptionList
2752  {
2753  CONST_VTBL struct IPropertyDescriptionListVtbl *lpVtbl;
2754  };
2755 
2756 
2757 
2758 #ifdef COBJMACROS
2759 
2760 
2761 #define IPropertyDescriptionList_QueryInterface(This,riid,ppvObject) \
2762  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2763 
2764 #define IPropertyDescriptionList_AddRef(This) \
2765  ( (This)->lpVtbl -> AddRef(This) )
2766 
2767 #define IPropertyDescriptionList_Release(This) \
2768  ( (This)->lpVtbl -> Release(This) )
2769 
2770 
2771 #define IPropertyDescriptionList_GetCount(This,pcElem) \
2772  ( (This)->lpVtbl -> GetCount(This,pcElem) )
2773 
2774 #define IPropertyDescriptionList_GetAt(This,iElem,riid,ppv) \
2775  ( (This)->lpVtbl -> GetAt(This,iElem,riid,ppv) )
2776 
2777 #endif /* COBJMACROS */
2778 
2779 
2780 #endif /* C style interface */
2781 
2782 
2783 
2784 
2785 #endif /* __IPropertyDescriptionList_INTERFACE_DEFINED__ */
2786 
2787 
2788 #ifndef __IPropertyStoreFactory_INTERFACE_DEFINED__
2789 #define __IPropertyStoreFactory_INTERFACE_DEFINED__
2790 
2791 /* interface IPropertyStoreFactory */
2792 /* [unique][object][uuid] */
2793 
2794 
2795 EXTERN_C const IID IID_IPropertyStoreFactory;
2796 
2797 #if defined(__cplusplus) && !defined(CINTERFACE)
2798 
2799  MIDL_INTERFACE("bc110b6d-57e8-4148-a9c6-91015ab2f3a5")
2800  IPropertyStoreFactory : public IUnknown
2801  {
2802  public:
2803  virtual HRESULT STDMETHODCALLTYPE GetPropertyStore(
2804  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2805  /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory,
2806  /* [in] */ __RPC__in REFIID riid,
2807  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2808 
2809  virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys(
2810  /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys,
2811  /* [in] */ UINT cKeys,
2812  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2813  /* [in] */ __RPC__in REFIID riid,
2814  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2815 
2816  };
2817 
2818 #else /* C style interface */
2819 
2821  {
2822  BEGIN_INTERFACE
2823 
2824  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2825  IPropertyStoreFactory * This,
2826  /* [in] */ __RPC__in REFIID riid,
2827  /* [iid_is][out] */
2828  __RPC__deref_out void **ppvObject);
2829 
2830  ULONG ( STDMETHODCALLTYPE *AddRef )(
2831  IPropertyStoreFactory * This);
2832 
2833  ULONG ( STDMETHODCALLTYPE *Release )(
2834  IPropertyStoreFactory * This);
2835 
2836  HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )(
2837  IPropertyStoreFactory * This,
2838  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2839  /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory,
2840  /* [in] */ __RPC__in REFIID riid,
2841  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2842 
2843  HRESULT ( STDMETHODCALLTYPE *GetPropertyStoreForKeys )(
2844  IPropertyStoreFactory * This,
2845  /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys,
2846  /* [in] */ UINT cKeys,
2847  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2848  /* [in] */ __RPC__in REFIID riid,
2849  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2850 
2851  END_INTERFACE
2853 
2854  interface IPropertyStoreFactory
2855  {
2856  CONST_VTBL struct IPropertyStoreFactoryVtbl *lpVtbl;
2857  };
2858 
2859 
2860 
2861 #ifdef COBJMACROS
2862 
2863 
2864 #define IPropertyStoreFactory_QueryInterface(This,riid,ppvObject) \
2865  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2866 
2867 #define IPropertyStoreFactory_AddRef(This) \
2868  ( (This)->lpVtbl -> AddRef(This) )
2869 
2870 #define IPropertyStoreFactory_Release(This) \
2871  ( (This)->lpVtbl -> Release(This) )
2872 
2873 
2874 #define IPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) \
2875  ( (This)->lpVtbl -> GetPropertyStore(This,flags,pUnkFactory,riid,ppv) )
2876 
2877 #define IPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) \
2878  ( (This)->lpVtbl -> GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) )
2879 
2880 #endif /* COBJMACROS */
2881 
2882 
2883 #endif /* C style interface */
2884 
2885 
2886 
2887 
2888 #endif /* __IPropertyStoreFactory_INTERFACE_DEFINED__ */
2889 
2890 
2891 #ifndef __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__
2892 #define __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__
2893 
2894 /* interface IDelayedPropertyStoreFactory */
2895 /* [unique][object][uuid] */
2896 
2897 
2899 
2900 #if defined(__cplusplus) && !defined(CINTERFACE)
2901 
2902  MIDL_INTERFACE("40d4577f-e237-4bdb-bd69-58f089431b6a")
2904  {
2905  public:
2906  virtual HRESULT STDMETHODCALLTYPE GetDelayedPropertyStore(
2907  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2908  /* [in] */ DWORD dwStoreId,
2909  /* [in] */ __RPC__in REFIID riid,
2910  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
2911 
2912  };
2913 
2914 #else /* C style interface */
2915 
2917  {
2918  BEGIN_INTERFACE
2919 
2920  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
2922  /* [in] */ __RPC__in REFIID riid,
2923  /* [iid_is][out] */
2924  __RPC__deref_out void **ppvObject);
2925 
2926  ULONG ( STDMETHODCALLTYPE *AddRef )(
2928 
2929  ULONG ( STDMETHODCALLTYPE *Release )(
2931 
2932  HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )(
2934  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2935  /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory,
2936  /* [in] */ __RPC__in REFIID riid,
2937  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2938 
2939  HRESULT ( STDMETHODCALLTYPE *GetPropertyStoreForKeys )(
2941  /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys,
2942  /* [in] */ UINT cKeys,
2943  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2944  /* [in] */ __RPC__in REFIID riid,
2945  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2946 
2947  HRESULT ( STDMETHODCALLTYPE *GetDelayedPropertyStore )(
2949  /* [in] */ GETPROPERTYSTOREFLAGS flags,
2950  /* [in] */ DWORD dwStoreId,
2951  /* [in] */ __RPC__in REFIID riid,
2952  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
2953 
2954  END_INTERFACE
2956 
2958  {
2959  CONST_VTBL struct IDelayedPropertyStoreFactoryVtbl *lpVtbl;
2960  };
2961 
2962 
2963 
2964 #ifdef COBJMACROS
2965 
2966 
2967 #define IDelayedPropertyStoreFactory_QueryInterface(This,riid,ppvObject) \
2968  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
2969 
2970 #define IDelayedPropertyStoreFactory_AddRef(This) \
2971  ( (This)->lpVtbl -> AddRef(This) )
2972 
2973 #define IDelayedPropertyStoreFactory_Release(This) \
2974  ( (This)->lpVtbl -> Release(This) )
2975 
2976 
2977 #define IDelayedPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) \
2978  ( (This)->lpVtbl -> GetPropertyStore(This,flags,pUnkFactory,riid,ppv) )
2979 
2980 #define IDelayedPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) \
2981  ( (This)->lpVtbl -> GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) )
2982 
2983 
2984 #define IDelayedPropertyStoreFactory_GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) \
2985  ( (This)->lpVtbl -> GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) )
2986 
2987 #endif /* COBJMACROS */
2988 
2989 
2990 #endif /* C style interface */
2991 
2992 
2993 
2994 
2995 #endif /* __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ */
2996 
2997 
2998 /* interface __MIDL_itf_propsys_0000_0018 */
2999 /* [local] */
3000 
3001 /* [v1_enum] */
3004  } ;
3006 
3007 typedef struct tagSERIALIZEDPROPSTORAGE SERIALIZEDPROPSTORAGE;
3008 
3010 
3012 
3013 
3014 
3015 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0018_v0_0_c_ifspec;
3016 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0018_v0_0_s_ifspec;
3017 
3018 #ifndef __IPersistSerializedPropStorage_INTERFACE_DEFINED__
3019 #define __IPersistSerializedPropStorage_INTERFACE_DEFINED__
3020 
3021 /* interface IPersistSerializedPropStorage */
3022 /* [object][local][unique][uuid] */
3023 
3024 
3026 
3027 #if defined(__cplusplus) && !defined(CINTERFACE)
3028 
3029  MIDL_INTERFACE("e318ad57-0aa0-450f-aca5-6fab7103d917")
3030  IPersistSerializedPropStorage : public IUnknown
3031  {
3032  public:
3033  virtual HRESULT STDMETHODCALLTYPE SetFlags(
3034  /* [in] */ PERSIST_SPROPSTORE_FLAGS flags) = 0;
3035 
3036  virtual HRESULT STDMETHODCALLTYPE SetPropertyStorage(
3037  /* [in] */
3039  /* [in] */
3040  __in DWORD cb) = 0;
3041 
3042  virtual HRESULT STDMETHODCALLTYPE GetPropertyStorage(
3043  /* [out] */
3045  /* [out] */
3046  __out DWORD *pcb) = 0;
3047 
3048  };
3049 
3050 #else /* C style interface */
3051 
3053  {
3054  BEGIN_INTERFACE
3055 
3056  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3058  /* [in] */ REFIID riid,
3059  /* [iid_is][out] */
3060  __RPC__deref_out void **ppvObject);
3061 
3062  ULONG ( STDMETHODCALLTYPE *AddRef )(
3064 
3065  ULONG ( STDMETHODCALLTYPE *Release )(
3067 
3068  HRESULT ( STDMETHODCALLTYPE *SetFlags )(
3071 
3072  HRESULT ( STDMETHODCALLTYPE *SetPropertyStorage )(
3074  /* [in] */
3076  /* [in] */
3077  __in DWORD cb);
3078 
3079  HRESULT ( STDMETHODCALLTYPE *GetPropertyStorage )(
3081  /* [out] */
3083  /* [out] */
3084  __out DWORD *pcb);
3085 
3086  END_INTERFACE
3088 
3090  {
3091  CONST_VTBL struct IPersistSerializedPropStorageVtbl *lpVtbl;
3092  };
3093 
3094 
3095 
3096 #ifdef COBJMACROS
3097 
3098 
3099 #define IPersistSerializedPropStorage_QueryInterface(This,riid,ppvObject) \
3100  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
3101 
3102 #define IPersistSerializedPropStorage_AddRef(This) \
3103  ( (This)->lpVtbl -> AddRef(This) )
3104 
3105 #define IPersistSerializedPropStorage_Release(This) \
3106  ( (This)->lpVtbl -> Release(This) )
3107 
3108 
3109 #define IPersistSerializedPropStorage_SetFlags(This,flags) \
3110  ( (This)->lpVtbl -> SetFlags(This,flags) )
3111 
3112 #define IPersistSerializedPropStorage_SetPropertyStorage(This,psps,cb) \
3113  ( (This)->lpVtbl -> SetPropertyStorage(This,psps,cb) )
3114 
3115 #define IPersistSerializedPropStorage_GetPropertyStorage(This,ppsps,pcb) \
3116  ( (This)->lpVtbl -> GetPropertyStorage(This,ppsps,pcb) )
3117 
3118 #endif /* COBJMACROS */
3119 
3120 
3121 #endif /* C style interface */
3122 
3123 
3124 
3125 
3126 #endif /* __IPersistSerializedPropStorage_INTERFACE_DEFINED__ */
3127 
3128 
3129 #ifndef __IPropertySystemChangeNotify_INTERFACE_DEFINED__
3130 #define __IPropertySystemChangeNotify_INTERFACE_DEFINED__
3131 
3132 /* interface IPropertySystemChangeNotify */
3133 /* [unique][object][uuid] */
3134 
3135 
3137 
3138 #if defined(__cplusplus) && !defined(CINTERFACE)
3139 
3140  MIDL_INTERFACE("fa955fd9-38be-4879-a6ce-824cf52d609f")
3141  IPropertySystemChangeNotify : public IUnknown
3142  {
3143  public:
3144  virtual HRESULT STDMETHODCALLTYPE SchemaRefreshed( void) = 0;
3145 
3146  };
3147 
3148 #else /* C style interface */
3149 
3151  {
3152  BEGIN_INTERFACE
3153 
3154  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3156  /* [in] */ __RPC__in REFIID riid,
3157  /* [iid_is][out] */
3158  __RPC__deref_out void **ppvObject);
3159 
3160  ULONG ( STDMETHODCALLTYPE *AddRef )(
3162 
3163  ULONG ( STDMETHODCALLTYPE *Release )(
3165 
3166  HRESULT ( STDMETHODCALLTYPE *SchemaRefreshed )(
3168 
3169  END_INTERFACE
3171 
3172  interface IPropertySystemChangeNotify
3173  {
3174  CONST_VTBL struct IPropertySystemChangeNotifyVtbl *lpVtbl;
3175  };
3176 
3177 
3178 
3179 #ifdef COBJMACROS
3180 
3181 
3182 #define IPropertySystemChangeNotify_QueryInterface(This,riid,ppvObject) \
3183  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
3184 
3185 #define IPropertySystemChangeNotify_AddRef(This) \
3186  ( (This)->lpVtbl -> AddRef(This) )
3187 
3188 #define IPropertySystemChangeNotify_Release(This) \
3189  ( (This)->lpVtbl -> Release(This) )
3190 
3191 
3192 #define IPropertySystemChangeNotify_SchemaRefreshed(This) \
3193  ( (This)->lpVtbl -> SchemaRefreshed(This) )
3194 
3195 #endif /* COBJMACROS */
3196 
3197 
3198 #endif /* C style interface */
3199 
3200 
3201 
3202 
3203 #endif /* __IPropertySystemChangeNotify_INTERFACE_DEFINED__ */
3204 
3205 
3206 #ifndef __ICreateObject_INTERFACE_DEFINED__
3207 #define __ICreateObject_INTERFACE_DEFINED__
3208 
3209 /* interface ICreateObject */
3210 /* [object][unique][uuid] */
3211 
3212 
3213 EXTERN_C const IID IID_ICreateObject;
3214 
3215 #if defined(__cplusplus) && !defined(CINTERFACE)
3216 
3217  MIDL_INTERFACE("75121952-e0d0-43e5-9380-1d80483acf72")
3218  ICreateObject : public IUnknown
3219  {
3220  public:
3221  virtual HRESULT STDMETHODCALLTYPE CreateObject(
3222  /* [in] */ __RPC__in REFCLSID clsid,
3223  /* [unique][in] */ __RPC__in_opt IUnknown *pUnkOuter,
3224  /* [in] */ __RPC__in REFIID riid,
3225  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
3226 
3227  };
3228 
3229 #else /* C style interface */
3230 
3231  typedef struct ICreateObjectVtbl
3232  {
3233  BEGIN_INTERFACE
3234 
3235  HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
3236  ICreateObject * This,
3237  /* [in] */ __RPC__in REFIID riid,
3238  /* [iid_is][out] */
3239  __RPC__deref_out void **ppvObject);
3240 
3241  ULONG ( STDMETHODCALLTYPE *AddRef )(
3242  ICreateObject * This);
3243 
3244  ULONG ( STDMETHODCALLTYPE *Release )(
3245  ICreateObject * This);
3246 
3247  HRESULT ( STDMETHODCALLTYPE *CreateObject )(
3248  ICreateObject * This,
3249  /* [in] */ __RPC__in REFCLSID clsid,
3250  /* [unique][in] */ __RPC__in_opt IUnknown *pUnkOuter,
3251  /* [in] */ __RPC__in REFIID riid,
3252  /* [iid_is][out] */ __RPC__deref_out_opt void **ppv);
3253 
3254  END_INTERFACE
3256 
3257  interface ICreateObject
3258  {
3259  CONST_VTBL struct ICreateObjectVtbl *lpVtbl;
3260  };
3261 
3262 
3263 
3264 #ifdef COBJMACROS
3265 
3266 
3267 #define ICreateObject_QueryInterface(This,riid,ppvObject) \
3268  ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
3269 
3270 #define ICreateObject_AddRef(This) \
3271  ( (This)->lpVtbl -> AddRef(This) )
3272 
3273 #define ICreateObject_Release(This) \
3274  ( (This)->lpVtbl -> Release(This) )
3275 
3276 
3277 #define ICreateObject_CreateObject(This,clsid,pUnkOuter,riid,ppv) \
3278  ( (This)->lpVtbl -> CreateObject(This,clsid,pUnkOuter,riid,ppv) )
3279 
3280 #endif /* COBJMACROS */
3281 
3282 
3283 #endif /* C style interface */
3284 
3285 
3286 
3287 
3288 #endif /* __ICreateObject_INTERFACE_DEFINED__ */
3289 
3290 
3291 /* interface __MIDL_itf_propsys_0000_0021 */
3292 /* [local] */
3293 
3294 // Format a property value for display purposes
3296  __in REFPROPERTYKEY propkey,
3298  __in PROPDESC_FORMAT_FLAGS pdfFlags,
3299  __out_ecount(cchText) LPWSTR pwszText,
3300  __in DWORD cchText);
3301 
3303  __in REFPROPERTYKEY key,
3304  __in REFPROPVARIANT propvar,
3305  __in PROPDESC_FORMAT_FLAGS pdff,
3306  __deref_out PWSTR *ppszDisplay);
3307 
3309  __in IPropertyStore *pps,
3311  __in PROPDESC_FORMAT_FLAGS pdff,
3312  __deref_out LPWSTR *ppszDisplay);
3313 
3314 
3315 #define PKEY_PIDSTR_MAX 10 // will take care of any long integer value
3316 #define GUIDSTRING_MAX (1 + 8 + 1 + 4 + 1 + 4 + 1 + 4 + 1 + 12 + 1 + 1) // "{12345678-1234-1234-1234-123456789012}"
3317 #define PKEYSTR_MAX (GUIDSTRING_MAX + 1 + PKEY_PIDSTR_MAX)
3318 
3319 // Convert a PROPERTYKEY to and from a PWSTR
3321  __in REFPROPERTYKEY pkey,
3322  __out_ecount(cch) LPWSTR psz,
3323  __in UINT cch);
3324 
3326  __in LPCWSTR pszString,
3327  __out PROPERTYKEY *pkey);
3328 
3329 
3330 // Creates an in-memory property store
3331 // Returns an IPropertyStore, IPersistSerializedPropStorage, and related interfaces interface
3333  __in REFIID riid,
3334  __deref_out void **ppv);
3335 
3336 
3337 // Create a read-only, delay-bind multiplexing property store
3338 // Returns an IPropertyStore interface or related interfaces
3340  __in GETPROPERTYSTOREFLAGS flags,
3342  __in_ecount(cStores) const DWORD *rgStoreIds,
3343  __in DWORD cStores,
3344  __in REFIID riid,
3345  __deref_out void **ppv);
3346 
3347 
3348 // Create a read-only property store from one or more sources (which each must support either IPropertyStore or IPropertySetStorage)
3349 // Returns an IPropertyStore interface or related interfaces
3351  __in_ecount(cStores) IUnknown **prgpunkStores,
3352  __in DWORD cStores,
3353  __in REFIID riid,
3354  __deref_out void **ppv);
3355 
3356 
3357 // Create a container for IPropertyChanges
3358 // Returns an IPropertyChangeArray interface
3360  __in_ecount_opt(cChanges) const PROPERTYKEY *rgpropkey,
3361  __in_ecount_opt(cChanges) const PKA_FLAGS *rgflags,
3362  __in_ecount_opt(cChanges) const PROPVARIANT *rgpropvar,
3363  __in UINT cChanges,
3364  __in REFIID riid,
3365  __deref_out void **ppv);
3366 
3367 
3368 // Create a simple property change
3369 // Returns an IPropertyChange interface
3371  __in PKA_FLAGS flags,
3372  __in REFPROPERTYKEY key,
3373  __in REFPROPVARIANT propvar,
3374  __in REFIID riid,
3375  __deref_out void **ppv);
3376 
3377 
3378 // Get a property description
3379 // Returns an IPropertyDescription interface
3381  __in REFPROPERTYKEY propkey,
3382  __in REFIID riid,
3383  __deref_out void **ppv);
3384 
3386  __in LPCWSTR pszCanonicalName,
3387  __in REFIID riid,
3388  __deref_out void **ppv);
3389 
3390 
3391 // Lookup a per-machine registered file property handler
3393  __in PCWSTR pszFilePath,
3394  __out CLSID *pclsid);
3395 // Get a property handler, on Vista or downlevel to XP
3396 // punkItem is a shell item created with an SHCreateItemXXX API
3397 // Returns an IPropertyStore
3399  __in IUnknown *punkItem,
3400  __in BOOL fReadWrite,
3401  __in REFIID riid,
3402  __deref_out void **ppv);
3403 
3404 
3405 // Get a property handler, on Vista or downlevel to XP
3406 // punkItem is a shell item created with an SHCreateItemXXX API
3407 // punkCreateObject supports ICreateObject
3408 // Returns an IPropertyStore
3410  __in IUnknown *punkItem,
3411  __in BOOL fReadWrite,
3412  __in IUnknown *punkCreateObject,
3413  __in REFIID riid,
3414  __deref_out void **ppv);
3415 
3416 
3417 // Get or set a property value from a store
3419  __in IPropertyStore *pps,
3421  __out PROPVARIANT *ppropvar);
3422 
3424  __in IPropertyStore *pps,
3426  __in REFPROPVARIANT propvar);
3427 
3428 
3429 // Interact with the set of property descriptions
3431  __in PCWSTR pszPath);
3432 
3434  __in PCWSTR pszPath);
3435 
3437 
3438 // Returns either: IPropertyDescriptionList or IEnumUnknown interfaces
3440  __in PROPDESC_ENUMFILTER filterOn,
3441  __in REFIID riid,
3442  __deref_out void **ppv);
3443 
3444 
3445 // Convert between a PROPERTYKEY and its canonical name
3447  __in PCWSTR pszName,
3448  __out PROPERTYKEY *ppropkey);
3449 
3451  __in REFPROPERTYKEY propkey,
3452  __deref_out PWSTR *ppszCanonicalName);
3453 
3454 
3455 // Coerce and canonicalize a property value
3457  __in REFPROPERTYKEY key,
3458  __inout PROPVARIANT *ppropvar);
3459 
3460 
3461 // Convert a 'prop:' string into a list of property descriptions
3462 // Returns an IPropertyDescriptionList interface
3464  __in LPCWSTR pszPropList,
3465  __in REFIID riid,
3466  __deref_out void **ppv);
3467 
3468 
3469 // Wrap an IPropertySetStorage interface in an IPropertyStore interface
3470 // Returns an IPropertyStore or related interface
3472  __in IPropertySetStorage *ppss,
3473  DWORD grfMode,
3474  REFIID riid,
3475  __deref_out void **ppv);
3476 
3477 
3478 // punkSource must support IPropertyStore or IPropertySetStorage
3479 // On success, the returned ppv is guaranteed to support IPropertyStore.
3480 // If punkSource already supports IPropertyStore, no wrapper is created.
3482  __in IUnknown *punk,
3483  __in DWORD grfMode,
3484  __in REFIID riid,
3485  __deref_out void **ppv);
3486 
3487 
3488 // punkSource must support IPropertyStore
3489 // riid may be IPropertyStore, IPropertySetStorage, IPropertyStoreCapabilities, or IObjectProvider
3491  __in IPropertyStore *pps,
3492  __in REFIID riid,
3493  __deref_out void **ppv);
3494 
3495 
3496 // Talk to the property system using an interface
3497 // Returns an IPropertySystem interface
3499  __in REFIID riid,
3500  __deref_out void **ppv);
3501 
3502 
3503 // Obtain a value from serialized property storage
3506  __in DWORD cb,
3507  __in REFPROPERTYKEY rpkey,
3508  __out PROPVARIANT *ppropvar);
3509 
3510 
3511 // Obtain a named value from serialized property storage
3514  __in DWORD cb,
3515  __in LPCWSTR pszName,
3516  __out PROPVARIANT *ppropvar);
3517 
3518 
3519 
3520 
3521 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0021_v0_0_c_ifspec;
3522 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0021_v0_0_s_ifspec;
3523 
3524 
3525 #ifndef __PropSysObjects_LIBRARY_DEFINED__
3526 #define __PropSysObjects_LIBRARY_DEFINED__
3527 
3528 /* library PropSysObjects */
3529 /* [version][lcid][uuid] */
3530 
3531 
3532 EXTERN_C const IID LIBID_PropSysObjects;
3533 
3534 EXTERN_C const CLSID CLSID_InMemoryPropertyStore;
3535 
3536 #ifdef __cplusplus
3537 
3538 class DECLSPEC_UUID("9a02e012-6303-4e1e-b9a1-630f802592c5")
3540 #endif
3541 
3542 EXTERN_C const CLSID CLSID_PropertySystem;
3543 
3544 #ifdef __cplusplus
3545 
3546 class DECLSPEC_UUID("b8967f85-58ae-4f46-9fb2-5d7904798f4b")
3548 #endif
3549 #endif /* __PropSysObjects_LIBRARY_DEFINED__ */
3550 
3551 /* Additional Prototypes for ALL interfaces */
3552 
3553 unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
3554 unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
3555 unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
3556 void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
3557 
3558 unsigned long __RPC_USER LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * );
3559 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * );
3560 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * );
3561 void __RPC_USER LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * );
3562 
3563 unsigned long __RPC_USER BSTR_UserSize64( unsigned long *, unsigned long , BSTR * );
3564 unsigned char * __RPC_USER BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * );
3565 unsigned char * __RPC_USER BSTR_UserUnmarshal64(unsigned long *, unsigned char *, BSTR * );
3566 void __RPC_USER BSTR_UserFree64( unsigned long *, BSTR * );
3567 
3568 unsigned long __RPC_USER LPSAFEARRAY_UserSize64( unsigned long *, unsigned long , LPSAFEARRAY * );
3569 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * );
3570 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal64(unsigned long *, unsigned char *, LPSAFEARRAY * );
3571 void __RPC_USER LPSAFEARRAY_UserFree64( unsigned long *, LPSAFEARRAY * );
3572 
3573 /* [local] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_Initialize_Proxy(
3574  IInitializeWithStream * This,
3575  /* [in] */ IStream *pstream,
3576  /* [in] */ DWORD grfMode);
3577 
3578 
3579 /* [call_as] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_Initialize_Stub(
3580  IInitializeWithStream * This,
3581  /* [in] */ __RPC__in_opt IStream *pstream,
3582  /* [in] */ DWORD grfMode);
3583 
3584 /* [local] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_CoerceToCanonicalValue_Proxy(
3585  IPropertyDescription * This,
3586  /* [out][in] */ PROPVARIANT *ppropvar);
3587 
3588 
3589 /* [call_as] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_CoerceToCanonicalValue_Stub(
3590  IPropertyDescription * This,
3591  /* [in] */ __RPC__in REFPROPVARIANT propvar,
3592  /* [out] */ __RPC__out PROPVARIANT *ppropvar);
3593 
3594 
3595 
3596 /* end of Additional Prototypes */
3597 
3598 #ifdef __cplusplus
3599 }
3600 #endif
3601 
3602 #endif
3603 
3604 
3605