weakreference.h (6113B) - Raw
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__ 23 typedef interface IWeakReference IWeakReference; 24 #ifdef __cplusplus 25 interface IWeakReference; 26 #endif /* __cplusplus */ 27 #endif 28 29 #ifndef __IWeakReferenceSource_FWD_DEFINED__ 30 #define __IWeakReferenceSource_FWD_DEFINED__ 31 typedef interface IWeakReferenceSource IWeakReferenceSource; 32 #ifdef __cplusplus 33 interface IWeakReferenceSource; 34 #endif /* __cplusplus */ 35 #endif 36 37 /* Headers for imported files */ 38 39 #include <inspectable.h> 40 41 #ifdef __cplusplus 42 extern "C" { 43 #endif 44 45 /***************************************************************************** 46 * IWeakReference interface 47 */ 48 #ifndef __IWeakReference_INTERFACE_DEFINED__ 49 #define __IWeakReference_INTERFACE_DEFINED__ 50 51 DEFINE_GUID(IID_IWeakReference, 0x00000037, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 52 #if defined(__cplusplus) && !defined(CINTERFACE) 53 MIDL_INTERFACE("00000037-0000-0000-c000-000000000046") 54 IWeakReference : 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 65 typedef 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 89 interface 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 ***/ 103 static inline HRESULT IWeakReference_QueryInterface(IWeakReference* This,REFIID riid,void **ppvObject) { 104 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 105 } 106 static inline ULONG IWeakReference_AddRef(IWeakReference* This) { 107 return This->lpVtbl->AddRef(This); 108 } 109 static inline ULONG IWeakReference_Release(IWeakReference* This) { 110 return This->lpVtbl->Release(This); 111 } 112 /*** IWeakReference methods ***/ 113 static 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 130 DEFINE_GUID(IID_IWeakReferenceSource, 0x00000038, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 131 #if defined(__cplusplus) && !defined(CINTERFACE) 132 MIDL_INTERFACE("00000038-0000-0000-c000-000000000046") 133 IWeakReferenceSource : 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 143 typedef 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 166 interface 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 ***/ 180 static inline HRESULT IWeakReferenceSource_QueryInterface(IWeakReferenceSource* This,REFIID riid,void **ppvObject) { 181 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 182 } 183 static inline ULONG IWeakReferenceSource_AddRef(IWeakReferenceSource* This) { 184 return This->lpVtbl->AddRef(This); 185 } 186 static inline ULONG IWeakReferenceSource_Release(IWeakReferenceSource* This) { 187 return This->lpVtbl->Release(This); 188 } 189 /*** IWeakReferenceSource methods ***/ 190 static 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__ */