1 /*** Autogenerated by WIDL 4.19 from include/objectarray.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 __objectarray_h__ 17 #define __objectarray_h__ 18 19 /* Forward declarations */ 20 21 #ifndef __IObjectArray_FWD_DEFINED__ 22 #define __IObjectArray_FWD_DEFINED__ 23 typedef interface IObjectArray IObjectArray; 24 #ifdef __cplusplus 25 interface IObjectArray; 26 #endif /* __cplusplus */ 27 #endif 28 29 #ifndef __IObjectCollection_FWD_DEFINED__ 30 #define __IObjectCollection_FWD_DEFINED__ 31 typedef interface IObjectCollection IObjectCollection; 32 #ifdef __cplusplus 33 interface IObjectCollection; 34 #endif /* __cplusplus */ 35 #endif 36 37 /* Headers for imported files */ 38 39 #include <oaidl.h> 40 #include <ocidl.h> 41 42 #ifdef __cplusplus 43 extern "C" { 44 #endif 45 46 /***************************************************************************** 47 * IObjectArray interface 48 */ 49 #ifndef __IObjectArray_INTERFACE_DEFINED__ 50 #define __IObjectArray_INTERFACE_DEFINED__ 51 52 DEFINE_GUID(IID_IObjectArray, 0x92ca9dcd, 0x5622, 0x4bba, 0xa8,0x05, 0x5e,0x9f,0x54,0x1b,0xd8,0xc9); 53 #if defined(__cplusplus) && !defined(CINTERFACE) 54 MIDL_INTERFACE("92ca9dcd-5622-4bba-a805-5e9f541bd8c9") 55 IObjectArray : public IUnknown 56 { 57 virtual HRESULT STDMETHODCALLTYPE GetCount( 58 UINT *pcObjects) = 0; 59 60 virtual HRESULT STDMETHODCALLTYPE GetAt( 61 UINT uiIndex, 62 REFIID riid, 63 void **ppv) = 0; 64 65 }; 66 #ifdef __CRT_UUID_DECL 67 __CRT_UUID_DECL(IObjectArray, 0x92ca9dcd, 0x5622, 0x4bba, 0xa8,0x05, 0x5e,0x9f,0x54,0x1b,0xd8,0xc9) 68 #endif 69 #else 70 typedef struct IObjectArrayVtbl { 71 BEGIN_INTERFACE 72 73 /*** IUnknown methods ***/ 74 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 75 IObjectArray *This, 76 REFIID riid, 77 void **ppvObject); 78 79 ULONG (STDMETHODCALLTYPE *AddRef)( 80 IObjectArray *This); 81 82 ULONG (STDMETHODCALLTYPE *Release)( 83 IObjectArray *This); 84 85 /*** IObjectArray methods ***/ 86 HRESULT (STDMETHODCALLTYPE *GetCount)( 87 IObjectArray *This, 88 UINT *pcObjects); 89 90 HRESULT (STDMETHODCALLTYPE *GetAt)( 91 IObjectArray *This, 92 UINT uiIndex, 93 REFIID riid, 94 void **ppv); 95 96 END_INTERFACE 97 } IObjectArrayVtbl; 98 99 interface IObjectArray { 100 CONST_VTBL IObjectArrayVtbl* lpVtbl; 101 }; 102 103 #ifdef COBJMACROS 104 #ifndef WIDL_C_INLINE_WRAPPERS 105 /*** IUnknown methods ***/ 106 #define IObjectArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 107 #define IObjectArray_AddRef(This) (This)->lpVtbl->AddRef(This) 108 #define IObjectArray_Release(This) (This)->lpVtbl->Release(This) 109 /*** IObjectArray methods ***/ 110 #define IObjectArray_GetCount(This,pcObjects) (This)->lpVtbl->GetCount(This,pcObjects) 111 #define IObjectArray_GetAt(This,uiIndex,riid,ppv) (This)->lpVtbl->GetAt(This,uiIndex,riid,ppv) 112 #else 113 /*** IUnknown methods ***/ 114 static FORCEINLINE HRESULT IObjectArray_QueryInterface(IObjectArray* This,REFIID riid,void **ppvObject) { 115 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 116 } 117 static FORCEINLINE ULONG IObjectArray_AddRef(IObjectArray* This) { 118 return This->lpVtbl->AddRef(This); 119 } 120 static FORCEINLINE ULONG IObjectArray_Release(IObjectArray* This) { 121 return This->lpVtbl->Release(This); 122 } 123 /*** IObjectArray methods ***/ 124 static FORCEINLINE HRESULT IObjectArray_GetCount(IObjectArray* This,UINT *pcObjects) { 125 return This->lpVtbl->GetCount(This,pcObjects); 126 } 127 static FORCEINLINE HRESULT IObjectArray_GetAt(IObjectArray* This,UINT uiIndex,REFIID riid,void **ppv) { 128 return This->lpVtbl->GetAt(This,uiIndex,riid,ppv); 129 } 130 #endif 131 #endif 132 133 #endif 134 135 136 #endif /* __IObjectArray_INTERFACE_DEFINED__ */ 137 138 /***************************************************************************** 139 * IObjectCollection interface 140 */ 141 #ifndef __IObjectCollection_INTERFACE_DEFINED__ 142 #define __IObjectCollection_INTERFACE_DEFINED__ 143 144 DEFINE_GUID(IID_IObjectCollection, 0x5632b1a4, 0xe38a, 0x400a, 0x92,0x8a, 0xd4,0xcd,0x63,0x23,0x02,0x95); 145 #if defined(__cplusplus) && !defined(CINTERFACE) 146 MIDL_INTERFACE("5632b1a4-e38a-400a-928a-d4cd63230295") 147 IObjectCollection : public IObjectArray 148 { 149 virtual HRESULT STDMETHODCALLTYPE AddObject( 150 IUnknown *punk) = 0; 151 152 virtual HRESULT STDMETHODCALLTYPE AddFromArray( 153 IObjectArray *poaSource) = 0; 154 155 virtual HRESULT STDMETHODCALLTYPE RemoveObjectAt( 156 UINT uiIndex) = 0; 157 158 virtual HRESULT STDMETHODCALLTYPE Clear( 159 ) = 0; 160 161 }; 162 #ifdef __CRT_UUID_DECL 163 __CRT_UUID_DECL(IObjectCollection, 0x5632b1a4, 0xe38a, 0x400a, 0x92,0x8a, 0xd4,0xcd,0x63,0x23,0x02,0x95) 164 #endif 165 #else 166 typedef struct IObjectCollectionVtbl { 167 BEGIN_INTERFACE 168 169 /*** IUnknown methods ***/ 170 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 171 IObjectCollection *This, 172 REFIID riid, 173 void **ppvObject); 174 175 ULONG (STDMETHODCALLTYPE *AddRef)( 176 IObjectCollection *This); 177 178 ULONG (STDMETHODCALLTYPE *Release)( 179 IObjectCollection *This); 180 181 /*** IObjectArray methods ***/ 182 HRESULT (STDMETHODCALLTYPE *GetCount)( 183 IObjectCollection *This, 184 UINT *pcObjects); 185 186 HRESULT (STDMETHODCALLTYPE *GetAt)( 187 IObjectCollection *This, 188 UINT uiIndex, 189 REFIID riid, 190 void **ppv); 191 192 /*** IObjectCollection methods ***/ 193 HRESULT (STDMETHODCALLTYPE *AddObject)( 194 IObjectCollection *This, 195 IUnknown *punk); 196 197 HRESULT (STDMETHODCALLTYPE *AddFromArray)( 198 IObjectCollection *This, 199 IObjectArray *poaSource); 200 201 HRESULT (STDMETHODCALLTYPE *RemoveObjectAt)( 202 IObjectCollection *This, 203 UINT uiIndex); 204 205 HRESULT (STDMETHODCALLTYPE *Clear)( 206 IObjectCollection *This); 207 208 END_INTERFACE 209 } IObjectCollectionVtbl; 210 211 interface IObjectCollection { 212 CONST_VTBL IObjectCollectionVtbl* lpVtbl; 213 }; 214 215 #ifdef COBJMACROS 216 #ifndef WIDL_C_INLINE_WRAPPERS 217 /*** IUnknown methods ***/ 218 #define IObjectCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 219 #define IObjectCollection_AddRef(This) (This)->lpVtbl->AddRef(This) 220 #define IObjectCollection_Release(This) (This)->lpVtbl->Release(This) 221 /*** IObjectArray methods ***/ 222 #define IObjectCollection_GetCount(This,pcObjects) (This)->lpVtbl->GetCount(This,pcObjects) 223 #define IObjectCollection_GetAt(This,uiIndex,riid,ppv) (This)->lpVtbl->GetAt(This,uiIndex,riid,ppv) 224 /*** IObjectCollection methods ***/ 225 #define IObjectCollection_AddObject(This,punk) (This)->lpVtbl->AddObject(This,punk) 226 #define IObjectCollection_AddFromArray(This,poaSource) (This)->lpVtbl->AddFromArray(This,poaSource) 227 #define IObjectCollection_RemoveObjectAt(This,uiIndex) (This)->lpVtbl->RemoveObjectAt(This,uiIndex) 228 #define IObjectCollection_Clear(This) (This)->lpVtbl->Clear(This) 229 #else 230 /*** IUnknown methods ***/ 231 static FORCEINLINE HRESULT IObjectCollection_QueryInterface(IObjectCollection* This,REFIID riid,void **ppvObject) { 232 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 233 } 234 static FORCEINLINE ULONG IObjectCollection_AddRef(IObjectCollection* This) { 235 return This->lpVtbl->AddRef(This); 236 } 237 static FORCEINLINE ULONG IObjectCollection_Release(IObjectCollection* This) { 238 return This->lpVtbl->Release(This); 239 } 240 /*** IObjectArray methods ***/ 241 static FORCEINLINE HRESULT IObjectCollection_GetCount(IObjectCollection* This,UINT *pcObjects) { 242 return This->lpVtbl->GetCount(This,pcObjects); 243 } 244 static FORCEINLINE HRESULT IObjectCollection_GetAt(IObjectCollection* This,UINT uiIndex,REFIID riid,void **ppv) { 245 return This->lpVtbl->GetAt(This,uiIndex,riid,ppv); 246 } 247 /*** IObjectCollection methods ***/ 248 static FORCEINLINE HRESULT IObjectCollection_AddObject(IObjectCollection* This,IUnknown *punk) { 249 return This->lpVtbl->AddObject(This,punk); 250 } 251 static FORCEINLINE HRESULT IObjectCollection_AddFromArray(IObjectCollection* This,IObjectArray *poaSource) { 252 return This->lpVtbl->AddFromArray(This,poaSource); 253 } 254 static FORCEINLINE HRESULT IObjectCollection_RemoveObjectAt(IObjectCollection* This,UINT uiIndex) { 255 return This->lpVtbl->RemoveObjectAt(This,uiIndex); 256 } 257 static FORCEINLINE HRESULT IObjectCollection_Clear(IObjectCollection* This) { 258 return This->lpVtbl->Clear(This); 259 } 260 #endif 261 #endif 262 263 #endif 264 265 266 #endif /* __IObjectCollection_INTERFACE_DEFINED__ */ 267 268 /* Begin additional prototypes for all interfaces */ 269 270 271 /* End additional prototypes */ 272 273 #ifdef __cplusplus 274 } 275 #endif 276 277 #endif /* __objectarray_h__ */ 278