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