Implemented IMemAllocator.
[wine/multimedia.git] / dlls / quartz / ibasvid.c
blobdff5cd06c29c8990b3d0c7bf1c33aad662479587
1 /*
2 * Implementation of IBasicVideo2 for FilterGraph.
4 * FIXME - stub.
6 * hidenori@a2.ctktv.ne.jp
7 */
9 #include "config.h"
11 #include "windef.h"
12 #include "winbase.h"
13 #include "wingdi.h"
14 #include "winuser.h"
15 #include "winerror.h"
16 #include "wine/obj_base.h"
17 #include "wine/obj_oleaut.h"
18 #include "strmif.h"
19 #include "control.h"
20 #include "uuids.h"
22 #include "debugtools.h"
23 DEFAULT_DEBUG_CHANNEL(quartz);
25 #include "quartz_private.h"
26 #include "fgraph.h"
29 static HRESULT WINAPI
30 IBasicVideo2_fnQueryInterface(IBasicVideo2* iface,REFIID riid,void** ppobj)
32 CFilterGraph_THIS(iface,basvid);
34 TRACE("(%p)->()\n",This);
36 return IUnknown_QueryInterface(This->unk.punkControl,riid,ppobj);
39 static ULONG WINAPI
40 IBasicVideo2_fnAddRef(IBasicVideo2* iface)
42 CFilterGraph_THIS(iface,basvid);
44 TRACE("(%p)->()\n",This);
46 return IUnknown_AddRef(This->unk.punkControl);
49 static ULONG WINAPI
50 IBasicVideo2_fnRelease(IBasicVideo2* iface)
52 CFilterGraph_THIS(iface,basvid);
54 TRACE("(%p)->()\n",This);
56 return IUnknown_Release(This->unk.punkControl);
59 static HRESULT WINAPI
60 IBasicVideo2_fnGetTypeInfoCount(IBasicVideo2* iface,UINT* pcTypeInfo)
62 CFilterGraph_THIS(iface,basvid);
64 FIXME("(%p)->()\n",This);
66 return E_NOTIMPL;
69 static HRESULT WINAPI
70 IBasicVideo2_fnGetTypeInfo(IBasicVideo2* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
72 CFilterGraph_THIS(iface,basvid);
74 FIXME("(%p)->()\n",This);
76 return E_NOTIMPL;
79 static HRESULT WINAPI
80 IBasicVideo2_fnGetIDsOfNames(IBasicVideo2* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
82 CFilterGraph_THIS(iface,basvid);
84 FIXME("(%p)->()\n",This);
86 return E_NOTIMPL;
89 static HRESULT WINAPI
90 IBasicVideo2_fnInvoke(IBasicVideo2* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
92 CFilterGraph_THIS(iface,basvid);
94 FIXME("(%p)->()\n",This);
96 return E_NOTIMPL;
100 static HRESULT WINAPI
101 IBasicVideo2_fnget_AvgTimePerFrame(IBasicVideo2* iface,REFTIME* prefTime)
103 CFilterGraph_THIS(iface,basvid);
105 FIXME("(%p)->()\n",This);
107 return E_NOTIMPL;
110 static HRESULT WINAPI
111 IBasicVideo2_fnget_BitRate(IBasicVideo2* iface,long* plRate)
113 CFilterGraph_THIS(iface,basvid);
115 FIXME("(%p)->()\n",This);
117 return E_NOTIMPL;
120 static HRESULT WINAPI
121 IBasicVideo2_fnget_BitErrorRate(IBasicVideo2* iface,long* plRate)
123 CFilterGraph_THIS(iface,basvid);
125 FIXME("(%p)->()\n",This);
127 return E_NOTIMPL;
130 static HRESULT WINAPI
131 IBasicVideo2_fnget_VideoWidth(IBasicVideo2* iface,long* plWidth)
133 CFilterGraph_THIS(iface,basvid);
135 FIXME("(%p)->()\n",This);
137 return E_NOTIMPL;
140 static HRESULT WINAPI
141 IBasicVideo2_fnget_VideoHeight(IBasicVideo2* iface,long* plHeight)
143 CFilterGraph_THIS(iface,basvid);
145 FIXME("(%p)->()\n",This);
147 return E_NOTIMPL;
150 static HRESULT WINAPI
151 IBasicVideo2_fnput_SourceLeft(IBasicVideo2* iface,long lLeft)
153 CFilterGraph_THIS(iface,basvid);
155 FIXME("(%p)->()\n",This);
157 return E_NOTIMPL;
160 static HRESULT WINAPI
161 IBasicVideo2_fnget_SourceLeft(IBasicVideo2* iface,long* plLeft)
163 CFilterGraph_THIS(iface,basvid);
165 FIXME("(%p)->()\n",This);
167 return E_NOTIMPL;
170 static HRESULT WINAPI
171 IBasicVideo2_fnput_SourceWidth(IBasicVideo2* iface,long lWidth)
173 CFilterGraph_THIS(iface,basvid);
175 FIXME("(%p)->()\n",This);
177 return E_NOTIMPL;
180 static HRESULT WINAPI
181 IBasicVideo2_fnget_SourceWidth(IBasicVideo2* iface,long* plWidth)
183 CFilterGraph_THIS(iface,basvid);
185 FIXME("(%p)->()\n",This);
187 return E_NOTIMPL;
190 static HRESULT WINAPI
191 IBasicVideo2_fnput_SourceTop(IBasicVideo2* iface,long lTop)
193 CFilterGraph_THIS(iface,basvid);
195 FIXME("(%p)->()\n",This);
197 return E_NOTIMPL;
200 static HRESULT WINAPI
201 IBasicVideo2_fnget_SourceTop(IBasicVideo2* iface,long* plTop)
203 CFilterGraph_THIS(iface,basvid);
205 FIXME("(%p)->()\n",This);
207 return E_NOTIMPL;
210 static HRESULT WINAPI
211 IBasicVideo2_fnput_SourceHeight(IBasicVideo2* iface,long lHeight)
213 CFilterGraph_THIS(iface,basvid);
215 FIXME("(%p)->()\n",This);
217 return E_NOTIMPL;
220 static HRESULT WINAPI
221 IBasicVideo2_fnget_SourceHeight(IBasicVideo2* iface,long* plHeight)
223 CFilterGraph_THIS(iface,basvid);
225 FIXME("(%p)->()\n",This);
227 return E_NOTIMPL;
230 static HRESULT WINAPI
231 IBasicVideo2_fnput_DestinationLeft(IBasicVideo2* iface,long lLeft)
233 CFilterGraph_THIS(iface,basvid);
235 FIXME("(%p)->()\n",This);
237 return E_NOTIMPL;
240 static HRESULT WINAPI
241 IBasicVideo2_fnget_DestinationLeft(IBasicVideo2* iface,long* plLeft)
243 CFilterGraph_THIS(iface,basvid);
245 FIXME("(%p)->()\n",This);
247 return E_NOTIMPL;
250 static HRESULT WINAPI
251 IBasicVideo2_fnput_DestinationWidth(IBasicVideo2* iface,long lWidth)
253 CFilterGraph_THIS(iface,basvid);
255 FIXME("(%p)->()\n",This);
257 return E_NOTIMPL;
260 static HRESULT WINAPI
261 IBasicVideo2_fnget_DestinationWidth(IBasicVideo2* iface,long* plWidth)
263 CFilterGraph_THIS(iface,basvid);
265 FIXME("(%p)->()\n",This);
267 return E_NOTIMPL;
270 static HRESULT WINAPI
271 IBasicVideo2_fnput_DestinationTop(IBasicVideo2* iface,long lTop)
273 CFilterGraph_THIS(iface,basvid);
275 FIXME("(%p)->()\n",This);
277 return E_NOTIMPL;
280 static HRESULT WINAPI
281 IBasicVideo2_fnget_DestinationTop(IBasicVideo2* iface,long* plTop)
283 CFilterGraph_THIS(iface,basvid);
285 FIXME("(%p)->()\n",This);
287 return E_NOTIMPL;
290 static HRESULT WINAPI
291 IBasicVideo2_fnput_DestinationHeight(IBasicVideo2* iface,long lHeight)
293 CFilterGraph_THIS(iface,basvid);
295 FIXME("(%p)->()\n",This);
297 return E_NOTIMPL;
300 static HRESULT WINAPI
301 IBasicVideo2_fnget_DestinationHeight(IBasicVideo2* iface,long* plHeight)
303 CFilterGraph_THIS(iface,basvid);
305 FIXME("(%p)->()\n",This);
307 return E_NOTIMPL;
310 static HRESULT WINAPI
311 IBasicVideo2_fnSetSourcePosition(IBasicVideo2* iface,long lLeft,long lTop,long lWidth,long lHeight)
313 CFilterGraph_THIS(iface,basvid);
315 FIXME("(%p)->()\n",This);
317 return E_NOTIMPL;
320 static HRESULT WINAPI
321 IBasicVideo2_fnGetSourcePosition(IBasicVideo2* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
323 CFilterGraph_THIS(iface,basvid);
325 FIXME("(%p)->()\n",This);
327 return E_NOTIMPL;
330 static HRESULT WINAPI
331 IBasicVideo2_fnSetDefaultSourcePosition(IBasicVideo2* iface)
333 CFilterGraph_THIS(iface,basvid);
335 FIXME("(%p)->()\n",This);
337 return E_NOTIMPL;
340 static HRESULT WINAPI
341 IBasicVideo2_fnSetDestinationPosition(IBasicVideo2* iface,long lLeft,long lTop,long lWidth,long lHeight)
343 CFilterGraph_THIS(iface,basvid);
345 FIXME("(%p)->()\n",This);
347 return E_NOTIMPL;
350 static HRESULT WINAPI
351 IBasicVideo2_fnGetDestinationPosition(IBasicVideo2* iface,long* plLeft,long* plTop,long* plWidth,long* plHeight)
353 CFilterGraph_THIS(iface,basvid);
355 FIXME("(%p)->()\n",This);
357 return E_NOTIMPL;
360 static HRESULT WINAPI
361 IBasicVideo2_fnSetDefaultDestinationPosition(IBasicVideo2* iface)
363 CFilterGraph_THIS(iface,basvid);
365 FIXME("(%p)->()\n",This);
367 return E_NOTIMPL;
370 static HRESULT WINAPI
371 IBasicVideo2_fnGetVideoSize(IBasicVideo2* iface,long* plWidth,long* plHeight)
373 CFilterGraph_THIS(iface,basvid);
375 FIXME("(%p)->()\n",This);
377 return E_NOTIMPL;
380 static HRESULT WINAPI
381 IBasicVideo2_fnGetVideoPaletteEntries(IBasicVideo2* iface,long lStart,long lCount,long* plRet,long* plPaletteEntry)
383 CFilterGraph_THIS(iface,basvid);
385 FIXME("(%p)->()\n",This);
387 return E_NOTIMPL;
390 static HRESULT WINAPI
391 IBasicVideo2_fnGetCurrentImage(IBasicVideo2* iface,long* plBufferSize,long* plDIBBuffer)
393 CFilterGraph_THIS(iface,basvid);
395 FIXME("(%p)->()\n",This);
397 return E_NOTIMPL;
400 static HRESULT WINAPI
401 IBasicVideo2_fnIsUsingDefaultSource(IBasicVideo2* iface)
403 CFilterGraph_THIS(iface,basvid);
405 FIXME("(%p)->()\n",This);
407 return E_NOTIMPL;
410 static HRESULT WINAPI
411 IBasicVideo2_fnIsUsingDefaultDestination(IBasicVideo2* iface)
413 CFilterGraph_THIS(iface,basvid);
415 FIXME("(%p)->()\n",This);
417 return E_NOTIMPL;
420 static HRESULT WINAPI
421 IBasicVideo2_fnGetPreferredAspectRatio(IBasicVideo2* iface,long* plRateX,long* plRateY)
423 CFilterGraph_THIS(iface,basvid);
425 FIXME("(%p)->()\n",This);
427 return E_NOTIMPL;
433 static ICOM_VTABLE(IBasicVideo2) ibasicvideo =
435 ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
436 /* IUnknown fields */
437 IBasicVideo2_fnQueryInterface,
438 IBasicVideo2_fnAddRef,
439 IBasicVideo2_fnRelease,
440 /* IDispatch fields */
441 IBasicVideo2_fnGetTypeInfoCount,
442 IBasicVideo2_fnGetTypeInfo,
443 IBasicVideo2_fnGetIDsOfNames,
444 IBasicVideo2_fnInvoke,
445 /* IBasicVideo fields */
446 IBasicVideo2_fnget_AvgTimePerFrame,
447 IBasicVideo2_fnget_BitRate,
448 IBasicVideo2_fnget_BitErrorRate,
449 IBasicVideo2_fnget_VideoWidth,
450 IBasicVideo2_fnget_VideoHeight,
451 IBasicVideo2_fnput_SourceLeft,
452 IBasicVideo2_fnget_SourceLeft,
453 IBasicVideo2_fnput_SourceWidth,
454 IBasicVideo2_fnget_SourceWidth,
455 IBasicVideo2_fnput_SourceTop,
456 IBasicVideo2_fnget_SourceTop,
457 IBasicVideo2_fnput_SourceHeight,
458 IBasicVideo2_fnget_SourceHeight,
459 IBasicVideo2_fnput_DestinationLeft,
460 IBasicVideo2_fnget_DestinationLeft,
461 IBasicVideo2_fnput_DestinationWidth,
462 IBasicVideo2_fnget_DestinationWidth,
463 IBasicVideo2_fnput_DestinationTop,
464 IBasicVideo2_fnget_DestinationTop,
465 IBasicVideo2_fnput_DestinationHeight,
466 IBasicVideo2_fnget_DestinationHeight,
467 IBasicVideo2_fnSetSourcePosition,
468 IBasicVideo2_fnGetSourcePosition,
469 IBasicVideo2_fnSetDefaultSourcePosition,
470 IBasicVideo2_fnSetDestinationPosition,
471 IBasicVideo2_fnGetDestinationPosition,
472 IBasicVideo2_fnSetDefaultDestinationPosition,
473 IBasicVideo2_fnGetVideoSize,
474 IBasicVideo2_fnGetVideoPaletteEntries,
475 IBasicVideo2_fnGetCurrentImage,
476 IBasicVideo2_fnIsUsingDefaultSource,
477 IBasicVideo2_fnIsUsingDefaultDestination,
478 /* IBasicVideo2 fields */
479 IBasicVideo2_fnGetPreferredAspectRatio,
483 HRESULT CFilterGraph_InitIBasicVideo2( CFilterGraph* pfg )
485 TRACE("(%p)\n",pfg);
486 ICOM_VTBL(&pfg->basvid) = &ibasicvideo;
488 return NOERROR;
491 void CFilterGraph_UninitIBasicVideo2( CFilterGraph* pfg )
493 TRACE("(%p)\n",pfg);