source: trunk/src/quartz/imcntl.c@ 6605

Last change on this file since 6605 was 6578, checked in by sandervl, 24 years ago

wine updates

File size: 4.3 KB
Line 
1/*
2 * Implementation of IMediaControl for FilterGraph.
3 *
4 * FIXME - stub.
5 *
6 * hidenori@a2.ctktv.ne.jp
7 */
8
9#include "config.h"
10
11#include "windef.h"
12#include "winbase.h"
13#include "wingdi.h"
14#include "winerror.h"
15#include "wine/obj_base.h"
16#include "wine/obj_oleaut.h"
17#include "strmif.h"
18#include "control.h"
19#include "uuids.h"
20
21#include "debugtools.h"
22DEFAULT_DEBUG_CHANNEL(quartz);
23
24#include "quartz_private.h"
25#include "fgraph.h"
26
27
28
29static HRESULT WINAPI
30IMediaControl_fnQueryInterface(IMediaControl* iface,REFIID riid,void** ppobj)
31{
32 CFilterGraph_THIS(iface,mediacontrol);
33
34 TRACE("(%p)->()\n",This);
35
36 return IUnknown_QueryInterface(This->unk.punkControl,riid,ppobj);
37}
38
39static ULONG WINAPI
40IMediaControl_fnAddRef(IMediaControl* iface)
41{
42 CFilterGraph_THIS(iface,mediacontrol);
43
44 TRACE("(%p)->()\n",This);
45
46 return IUnknown_AddRef(This->unk.punkControl);
47}
48
49static ULONG WINAPI
50IMediaControl_fnRelease(IMediaControl* iface)
51{
52 CFilterGraph_THIS(iface,mediacontrol);
53
54 TRACE("(%p)->()\n",This);
55
56 return IUnknown_Release(This->unk.punkControl);
57}
58
59static HRESULT WINAPI
60IMediaControl_fnGetTypeInfoCount(IMediaControl* iface,UINT* pcTypeInfo)
61{
62 CFilterGraph_THIS(iface,mediacontrol);
63
64 FIXME("(%p)->()\n",This);
65
66 return E_NOTIMPL;
67}
68
69static HRESULT WINAPI
70IMediaControl_fnGetTypeInfo(IMediaControl* iface,UINT iTypeInfo, LCID lcid, ITypeInfo** ppobj)
71{
72 CFilterGraph_THIS(iface,mediacontrol);
73
74 FIXME("(%p)->()\n",This);
75
76 return E_NOTIMPL;
77}
78
79static HRESULT WINAPI
80IMediaControl_fnGetIDsOfNames(IMediaControl* iface,REFIID riid, LPOLESTR* ppwszName, UINT cNames, LCID lcid, DISPID* pDispId)
81{
82 CFilterGraph_THIS(iface,mediacontrol);
83
84 FIXME("(%p)->()\n",This);
85
86 return E_NOTIMPL;
87}
88
89static HRESULT WINAPI
90IMediaControl_fnInvoke(IMediaControl* iface,DISPID DispId, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarRes, EXCEPINFO* pExcepInfo, UINT* puArgErr)
91{
92 CFilterGraph_THIS(iface,mediacontrol);
93
94 FIXME("(%p)->()\n",This);
95
96 return E_NOTIMPL;
97}
98
99
100static HRESULT WINAPI
101IMediaControl_fnRun(IMediaControl* iface)
102{
103 CFilterGraph_THIS(iface,mediacontrol);
104
105 FIXME("(%p)->()\n",This);
106
107 return E_NOTIMPL;
108}
109
110static HRESULT WINAPI
111IMediaControl_fnPause(IMediaControl* iface)
112{
113 CFilterGraph_THIS(iface,mediacontrol);
114
115 FIXME("(%p)->()\n",This);
116
117 return E_NOTIMPL;
118}
119
120static HRESULT WINAPI
121IMediaControl_fnStop(IMediaControl* iface)
122{
123 CFilterGraph_THIS(iface,mediacontrol);
124
125 FIXME("(%p)->()\n",This);
126
127 return E_NOTIMPL;
128}
129
130static HRESULT WINAPI
131IMediaControl_fnGetState(IMediaControl* iface,LONG lTimeOut,OAFilterState* pFilterState)
132{
133 CFilterGraph_THIS(iface,mediacontrol);
134
135 FIXME("(%p)->()\n",This);
136
137 return E_NOTIMPL;
138}
139
140static HRESULT WINAPI
141IMediaControl_fnRenderFile(IMediaControl* iface,BSTR bstrFileName)
142{
143 CFilterGraph_THIS(iface,mediacontrol);
144
145 FIXME("(%p)->()\n",This);
146
147 return E_NOTIMPL;
148}
149
150static HRESULT WINAPI
151IMediaControl_fnAddSourceFilter(IMediaControl* iface,BSTR bstrFileName,IDispatch** ppobj)
152{
153 CFilterGraph_THIS(iface,mediacontrol);
154
155 FIXME("(%p)->()\n",This);
156
157 return E_NOTIMPL;
158}
159
160static HRESULT WINAPI
161IMediaControl_fnget_FilterCollection(IMediaControl* iface,IDispatch** ppobj)
162{
163 CFilterGraph_THIS(iface,mediacontrol);
164
165 FIXME("(%p)->()\n",This);
166
167 return E_NOTIMPL;
168}
169
170static HRESULT WINAPI
171IMediaControl_fnget_RegFilterCollection(IMediaControl* iface,IDispatch** ppobj)
172{
173 CFilterGraph_THIS(iface,mediacontrol);
174
175 FIXME("(%p)->()\n",This);
176
177 return E_NOTIMPL;
178}
179
180static HRESULT WINAPI
181IMediaControl_fnStopWhenReady(IMediaControl* iface)
182{
183 CFilterGraph_THIS(iface,mediacontrol);
184
185 FIXME("(%p)->()\n",This);
186
187 return E_NOTIMPL;
188}
189
190
191static ICOM_VTABLE(IMediaControl) imediacontrol =
192{
193 ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
194 /* IUnknown fields */
195 IMediaControl_fnQueryInterface,
196 IMediaControl_fnAddRef,
197 IMediaControl_fnRelease,
198 /* IDispatch fields */
199 IMediaControl_fnGetTypeInfoCount,
200 IMediaControl_fnGetTypeInfo,
201 IMediaControl_fnGetIDsOfNames,
202 IMediaControl_fnInvoke,
203 /* IMediaControl fields */
204 IMediaControl_fnRun,
205 IMediaControl_fnPause,
206 IMediaControl_fnStop,
207 IMediaControl_fnGetState,
208 IMediaControl_fnRenderFile,
209 IMediaControl_fnAddSourceFilter,
210 IMediaControl_fnget_FilterCollection,
211 IMediaControl_fnget_RegFilterCollection,
212 IMediaControl_fnStopWhenReady,
213};
214
215
216void CFilterGraph_InitIMediaControl( CFilterGraph* pfg )
217{
218 TRACE("(%p)\n",pfg);
219 ICOM_VTBL(&pfg->mediacontrol) = &imediacontrol;
220}
Note: See TracBrowser for help on using the repository browser.