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