master
  1/*** Autogenerated by WIDL 10.4 from include/weakreference.idl - Do not edit ***/
  2
  3#ifdef _WIN32
  4#ifndef __REQUIRED_RPCNDR_H_VERSION__
  5#define __REQUIRED_RPCNDR_H_VERSION__ 475
  6#endif
  7#include <rpc.h>
  8#include <rpcndr.h>
  9#endif
 10
 11#ifndef COM_NO_WINDOWS_H
 12#include <windows.h>
 13#include <ole2.h>
 14#endif
 15
 16#ifndef __weakreference_h__
 17#define __weakreference_h__
 18
 19/* Forward declarations */
 20
 21#ifndef __IWeakReference_FWD_DEFINED__
 22#define __IWeakReference_FWD_DEFINED__
 23typedef interface IWeakReference IWeakReference;
 24#ifdef __cplusplus
 25interface IWeakReference;
 26#endif /* __cplusplus */
 27#endif
 28
 29#ifndef __IWeakReferenceSource_FWD_DEFINED__
 30#define __IWeakReferenceSource_FWD_DEFINED__
 31typedef interface IWeakReferenceSource IWeakReferenceSource;
 32#ifdef __cplusplus
 33interface IWeakReferenceSource;
 34#endif /* __cplusplus */
 35#endif
 36
 37/* Headers for imported files */
 38
 39#include <inspectable.h>
 40
 41#ifdef __cplusplus
 42extern "C" {
 43#endif
 44
 45/*****************************************************************************
 46 * IWeakReference interface
 47 */
 48#ifndef __IWeakReference_INTERFACE_DEFINED__
 49#define __IWeakReference_INTERFACE_DEFINED__
 50
 51DEFINE_GUID(IID_IWeakReference, 0x00000037, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
 52#if defined(__cplusplus) && !defined(CINTERFACE)
 53MIDL_INTERFACE("00000037-0000-0000-c000-000000000046")
 54IWeakReference : public IUnknown
 55{
 56    virtual HRESULT STDMETHODCALLTYPE Resolve(
 57        REFIID iid,
 58        IInspectable **ref) = 0;
 59
 60};
 61#ifdef __CRT_UUID_DECL
 62__CRT_UUID_DECL(IWeakReference, 0x00000037, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
 63#endif
 64#else
 65typedef struct IWeakReferenceVtbl {
 66    BEGIN_INTERFACE
 67
 68    /*** IUnknown methods ***/
 69    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 70        IWeakReference *This,
 71        REFIID riid,
 72        void **ppvObject);
 73
 74    ULONG (STDMETHODCALLTYPE *AddRef)(
 75        IWeakReference *This);
 76
 77    ULONG (STDMETHODCALLTYPE *Release)(
 78        IWeakReference *This);
 79
 80    /*** IWeakReference methods ***/
 81    HRESULT (STDMETHODCALLTYPE *Resolve)(
 82        IWeakReference *This,
 83        REFIID iid,
 84        IInspectable **ref);
 85
 86    END_INTERFACE
 87} IWeakReferenceVtbl;
 88
 89interface IWeakReference {
 90    CONST_VTBL IWeakReferenceVtbl* lpVtbl;
 91};
 92
 93#ifdef COBJMACROS
 94#ifndef WIDL_C_INLINE_WRAPPERS
 95/*** IUnknown methods ***/
 96#define IWeakReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 97#define IWeakReference_AddRef(This) (This)->lpVtbl->AddRef(This)
 98#define IWeakReference_Release(This) (This)->lpVtbl->Release(This)
 99/*** IWeakReference methods ***/
100#define IWeakReference_Resolve(This,iid,ref) (This)->lpVtbl->Resolve(This,iid,ref)
101#else
102/*** IUnknown methods ***/
103static inline HRESULT IWeakReference_QueryInterface(IWeakReference* This,REFIID riid,void **ppvObject) {
104    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
105}
106static inline ULONG IWeakReference_AddRef(IWeakReference* This) {
107    return This->lpVtbl->AddRef(This);
108}
109static inline ULONG IWeakReference_Release(IWeakReference* This) {
110    return This->lpVtbl->Release(This);
111}
112/*** IWeakReference methods ***/
113static inline HRESULT IWeakReference_Resolve(IWeakReference* This,REFIID iid,IInspectable **ref) {
114    return This->lpVtbl->Resolve(This,iid,ref);
115}
116#endif
117#endif
118
119#endif
120
121
122#endif  /* __IWeakReference_INTERFACE_DEFINED__ */
123
124/*****************************************************************************
125 * IWeakReferenceSource interface
126 */
127#ifndef __IWeakReferenceSource_INTERFACE_DEFINED__
128#define __IWeakReferenceSource_INTERFACE_DEFINED__
129
130DEFINE_GUID(IID_IWeakReferenceSource, 0x00000038, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
131#if defined(__cplusplus) && !defined(CINTERFACE)
132MIDL_INTERFACE("00000038-0000-0000-c000-000000000046")
133IWeakReferenceSource : public IUnknown
134{
135    virtual HRESULT STDMETHODCALLTYPE GetWeakReference(
136        IWeakReference **ref) = 0;
137
138};
139#ifdef __CRT_UUID_DECL
140__CRT_UUID_DECL(IWeakReferenceSource, 0x00000038, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
141#endif
142#else
143typedef struct IWeakReferenceSourceVtbl {
144    BEGIN_INTERFACE
145
146    /*** IUnknown methods ***/
147    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
148        IWeakReferenceSource *This,
149        REFIID riid,
150        void **ppvObject);
151
152    ULONG (STDMETHODCALLTYPE *AddRef)(
153        IWeakReferenceSource *This);
154
155    ULONG (STDMETHODCALLTYPE *Release)(
156        IWeakReferenceSource *This);
157
158    /*** IWeakReferenceSource methods ***/
159    HRESULT (STDMETHODCALLTYPE *GetWeakReference)(
160        IWeakReferenceSource *This,
161        IWeakReference **ref);
162
163    END_INTERFACE
164} IWeakReferenceSourceVtbl;
165
166interface IWeakReferenceSource {
167    CONST_VTBL IWeakReferenceSourceVtbl* lpVtbl;
168};
169
170#ifdef COBJMACROS
171#ifndef WIDL_C_INLINE_WRAPPERS
172/*** IUnknown methods ***/
173#define IWeakReferenceSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
174#define IWeakReferenceSource_AddRef(This) (This)->lpVtbl->AddRef(This)
175#define IWeakReferenceSource_Release(This) (This)->lpVtbl->Release(This)
176/*** IWeakReferenceSource methods ***/
177#define IWeakReferenceSource_GetWeakReference(This,ref) (This)->lpVtbl->GetWeakReference(This,ref)
178#else
179/*** IUnknown methods ***/
180static inline HRESULT IWeakReferenceSource_QueryInterface(IWeakReferenceSource* This,REFIID riid,void **ppvObject) {
181    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
182}
183static inline ULONG IWeakReferenceSource_AddRef(IWeakReferenceSource* This) {
184    return This->lpVtbl->AddRef(This);
185}
186static inline ULONG IWeakReferenceSource_Release(IWeakReferenceSource* This) {
187    return This->lpVtbl->Release(This);
188}
189/*** IWeakReferenceSource methods ***/
190static inline HRESULT IWeakReferenceSource_GetWeakReference(IWeakReferenceSource* This,IWeakReference **ref) {
191    return This->lpVtbl->GetWeakReference(This,ref);
192}
193#endif
194#endif
195
196#endif
197
198
199#endif  /* __IWeakReferenceSource_INTERFACE_DEFINED__ */
200
201/* Begin additional prototypes for all interfaces */
202
203
204/* End additional prototypes */
205
206#ifdef __cplusplus
207}
208#endif
209
210#endif /* __weakreference_h__ */