1 /*** Autogenerated by WIDL 0.1 from ddstream.idl - Do not edit ***/
5 #ifndef __WIDL_DDSTREAM_H
6 #define __WIDL_DDSTREAM_H
12 #ifndef __WINE_DDRAW_H
13 typedef void *LPDDSURFACEDESC
;
15 typedef struct tDDSURFACEDESC DDSURFACEDESC
;
17 #ifndef __IDirectDraw_FWD_DEFINED__
18 #define __IDirectDraw_FWD_DEFINED__
19 typedef struct IDirectDraw IDirectDraw
;
22 #ifndef __IDirectDrawSurface_FWD_DEFINED__
23 #define __IDirectDrawSurface_FWD_DEFINED__
24 typedef struct IDirectDrawSurface IDirectDrawSurface
;
27 #ifndef __IDirectDrawPalette_FWD_DEFINED__
28 #define __IDirectDrawPalette_FWD_DEFINED__
29 typedef struct IDirectDrawPalette IDirectDrawPalette
;
35 DDSFF_PROGRESSIVERENDER
= 0x1
38 #ifndef __IDirectDrawMediaStream_FWD_DEFINED__
39 #define __IDirectDrawMediaStream_FWD_DEFINED__
40 typedef struct IDirectDrawMediaStream IDirectDrawMediaStream
;
43 #ifndef __IDirectDrawStreamSample_FWD_DEFINED__
44 #define __IDirectDrawStreamSample_FWD_DEFINED__
45 typedef struct IDirectDrawStreamSample IDirectDrawStreamSample
;
48 /*****************************************************************************
49 * IDirectDrawMediaStream interface
51 #ifndef __IDirectDrawMediaStream_INTERFACE_DEFINED__
52 #define __IDirectDrawMediaStream_INTERFACE_DEFINED__
54 DEFINE_GUID(IID_IDirectDrawMediaStream
, 0xf4104fce, 0x9a70, 0x11d0, 0x8f,0xde, 0x00,0xc0,0x4f,0xd9,0x18,0x9d);
55 #if defined(__cplusplus) && !defined(CINTERFACE)
56 struct IDirectDrawMediaStream
: public IMediaStream
58 virtual HRESULT STDMETHODCALLTYPE
GetFormat(
59 DDSURFACEDESC
* pDDSDCurrent
,
60 IDirectDrawPalette
** ppDirectDrawPalette
,
61 DDSURFACEDESC
* pDDSDDesired
,
64 virtual HRESULT STDMETHODCALLTYPE
SetFormat(
65 const DDSURFACEDESC
* pDDSurfaceDesc
,
66 IDirectDrawPalette
* pDirectDrawPalette
) = 0;
68 virtual HRESULT STDMETHODCALLTYPE
GetDirectDraw(
69 IDirectDraw
** ppDirectDraw
) = 0;
71 virtual HRESULT STDMETHODCALLTYPE
SetDirectDraw(
72 IDirectDraw
* pDirectDraw
) = 0;
74 virtual HRESULT STDMETHODCALLTYPE
CreateSample(
75 IDirectDrawSurface
* pSurface
,
78 IDirectDrawStreamSample
** ppSample
) = 0;
80 virtual HRESULT STDMETHODCALLTYPE
GetTimePerFrame(
81 STREAM_TIME
* pFrameTime
) = 0;
85 typedef struct IDirectDrawMediaStreamVtbl IDirectDrawMediaStreamVtbl
;
86 struct IDirectDrawMediaStream
{
87 const IDirectDrawMediaStreamVtbl
* lpVtbl
;
89 struct IDirectDrawMediaStreamVtbl
{
90 ICOM_MSVTABLE_COMPAT_FIELDS
92 /*** IUnknown methods ***/
93 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
94 IDirectDrawMediaStream
* This
,
98 ULONG (STDMETHODCALLTYPE
*AddRef
)(
99 IDirectDrawMediaStream
* This
);
101 ULONG (STDMETHODCALLTYPE
*Release
)(
102 IDirectDrawMediaStream
* This
);
104 /*** IMediaStream methods ***/
105 HRESULT (STDMETHODCALLTYPE
*GetMultiMediaStream
)(
106 IDirectDrawMediaStream
* This
,
107 IMultiMediaStream
** ppMultiMediaStream
);
109 HRESULT (STDMETHODCALLTYPE
*GetInformation
)(
110 IDirectDrawMediaStream
* This
,
114 HRESULT (STDMETHODCALLTYPE
*SetSameFormat
)(
115 IDirectDrawMediaStream
* This
,
116 IMediaStream
* pStreamThatHasDesiredFormat
,
119 HRESULT (STDMETHODCALLTYPE
*AllocateSample
)(
120 IDirectDrawMediaStream
* This
,
122 IStreamSample
** ppSample
);
124 HRESULT (STDMETHODCALLTYPE
*CreateSharedSample
)(
125 IDirectDrawMediaStream
* This
,
126 IStreamSample
* pExistingSample
,
128 IStreamSample
** ppNewSample
);
130 HRESULT (STDMETHODCALLTYPE
*SendEndOfStream
)(
131 IDirectDrawMediaStream
* This
,
134 /*** IDirectDrawMediaStream methods ***/
135 HRESULT (STDMETHODCALLTYPE
*GetFormat
)(
136 IDirectDrawMediaStream
* This
,
137 DDSURFACEDESC
* pDDSDCurrent
,
138 IDirectDrawPalette
** ppDirectDrawPalette
,
139 DDSURFACEDESC
* pDDSDDesired
,
142 HRESULT (STDMETHODCALLTYPE
*SetFormat
)(
143 IDirectDrawMediaStream
* This
,
144 const DDSURFACEDESC
* pDDSurfaceDesc
,
145 IDirectDrawPalette
* pDirectDrawPalette
);
147 HRESULT (STDMETHODCALLTYPE
*GetDirectDraw
)(
148 IDirectDrawMediaStream
* This
,
149 IDirectDraw
** ppDirectDraw
);
151 HRESULT (STDMETHODCALLTYPE
*SetDirectDraw
)(
152 IDirectDrawMediaStream
* This
,
153 IDirectDraw
* pDirectDraw
);
155 HRESULT (STDMETHODCALLTYPE
*CreateSample
)(
156 IDirectDrawMediaStream
* This
,
157 IDirectDrawSurface
* pSurface
,
160 IDirectDrawStreamSample
** ppSample
);
162 HRESULT (STDMETHODCALLTYPE
*GetTimePerFrame
)(
163 IDirectDrawMediaStream
* This
,
164 STREAM_TIME
* pFrameTime
);
168 /*** IUnknown methods ***/
169 #define IDirectDrawMediaStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
170 #define IDirectDrawMediaStream_AddRef(p) (p)->lpVtbl->AddRef(p)
171 #define IDirectDrawMediaStream_Release(p) (p)->lpVtbl->Release(p)
172 /*** IMediaStream methods ***/
173 #define IDirectDrawMediaStream_GetMultiMediaStream(p,a) (p)->lpVtbl->GetMultiMediaStream(p,a)
174 #define IDirectDrawMediaStream_GetInformation(p,a,b) (p)->lpVtbl->GetInformation(p,a,b)
175 #define IDirectDrawMediaStream_SetSameFormat(p,a,b) (p)->lpVtbl->SetSameFormat(p,a,b)
176 #define IDirectDrawMediaStream_AllocateSample(p,a,b) (p)->lpVtbl->AllocateSample(p,a,b)
177 #define IDirectDrawMediaStream_CreateSharedSample(p,a,b,c) (p)->lpVtbl->CreateSharedSample(p,a,b,c)
178 #define IDirectDrawMediaStream_SendEndOfStream(p,a) (p)->lpVtbl->SendEndOfStream(p,a)
179 /*** IDirectDrawMediaStream methods ***/
180 #define IDirectDrawMediaStream_GetFormat(p,a,b,c,d) (p)->lpVtbl->GetFormat(p,a,b,c,d)
181 #define IDirectDrawMediaStream_SetFormat(p,a,b) (p)->lpVtbl->SetFormat(p,a,b)
182 #define IDirectDrawMediaStream_GetDirectDraw(p,a) (p)->lpVtbl->GetDirectDraw(p,a)
183 #define IDirectDrawMediaStream_SetDirectDraw(p,a) (p)->lpVtbl->SetDirectDraw(p,a)
184 #define IDirectDrawMediaStream_CreateSample(p,a,b,c,d) (p)->lpVtbl->CreateSample(p,a,b,c,d)
185 #define IDirectDrawMediaStream_GetTimePerFrame(p,a) (p)->lpVtbl->GetTimePerFrame(p,a)
189 #define IDirectDrawMediaStream_METHODS \
190 ICOM_MSVTABLE_COMPAT_FIELDS \
191 /*** IUnknown methods ***/ \
192 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
193 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
194 STDMETHOD_(ULONG,Release)(THIS) PURE; \
195 /*** IMediaStream methods ***/ \
196 STDMETHOD_(HRESULT,GetMultiMediaStream)(THIS_ IMultiMediaStream** ppMultiMediaStream) PURE; \
197 STDMETHOD_(HRESULT,GetInformation)(THIS_ MSPID* pPurposeId, STREAM_TYPE* pType) PURE; \
198 STDMETHOD_(HRESULT,SetSameFormat)(THIS_ IMediaStream* pStreamThatHasDesiredFormat, DWORD dwFlags) PURE; \
199 STDMETHOD_(HRESULT,AllocateSample)(THIS_ DWORD dwFlags, IStreamSample** ppSample) PURE; \
200 STDMETHOD_(HRESULT,CreateSharedSample)(THIS_ IStreamSample* pExistingSample, DWORD dwFlags, IStreamSample** ppNewSample) PURE; \
201 STDMETHOD_(HRESULT,SendEndOfStream)(THIS_ DWORD dwFlags) PURE; \
202 /*** IDirectDrawMediaStream methods ***/ \
203 STDMETHOD_(HRESULT,GetFormat)(THIS_ DDSURFACEDESC* pDDSDCurrent, IDirectDrawPalette** ppDirectDrawPalette, DDSURFACEDESC* pDDSDDesired, DWORD* pdwFlags) PURE; \
204 STDMETHOD_(HRESULT,SetFormat)(THIS_ const DDSURFACEDESC* pDDSurfaceDesc, IDirectDrawPalette* pDirectDrawPalette) PURE; \
205 STDMETHOD_(HRESULT,GetDirectDraw)(THIS_ IDirectDraw** ppDirectDraw) PURE; \
206 STDMETHOD_(HRESULT,SetDirectDraw)(THIS_ IDirectDraw* pDirectDraw) PURE; \
207 STDMETHOD_(HRESULT,CreateSample)(THIS_ IDirectDrawSurface* pSurface, const RECT* pRect, DWORD dwFlags, IDirectDrawStreamSample** ppSample) PURE; \
208 STDMETHOD_(HRESULT,GetTimePerFrame)(THIS_ STREAM_TIME* pFrameTime) PURE;
210 HRESULT CALLBACK
IDirectDrawMediaStream_GetFormat_Proxy(
211 IDirectDrawMediaStream
* This
,
212 DDSURFACEDESC
* pDDSDCurrent
,
213 IDirectDrawPalette
** ppDirectDrawPalette
,
214 DDSURFACEDESC
* pDDSDDesired
,
216 void __RPC_STUB
IDirectDrawMediaStream_GetFormat_Stub(
217 struct IRpcStubBuffer
* This
,
218 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
219 PRPC_MESSAGE pRpcMessage
,
220 DWORD
* pdwStubPhase
);
221 HRESULT CALLBACK
IDirectDrawMediaStream_SetFormat_Proxy(
222 IDirectDrawMediaStream
* This
,
223 const DDSURFACEDESC
* pDDSurfaceDesc
,
224 IDirectDrawPalette
* pDirectDrawPalette
);
225 void __RPC_STUB
IDirectDrawMediaStream_SetFormat_Stub(
226 struct IRpcStubBuffer
* This
,
227 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
228 PRPC_MESSAGE pRpcMessage
,
229 DWORD
* pdwStubPhase
);
230 HRESULT CALLBACK
IDirectDrawMediaStream_GetDirectDraw_Proxy(
231 IDirectDrawMediaStream
* This
,
232 IDirectDraw
** ppDirectDraw
);
233 void __RPC_STUB
IDirectDrawMediaStream_GetDirectDraw_Stub(
234 struct IRpcStubBuffer
* This
,
235 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
236 PRPC_MESSAGE pRpcMessage
,
237 DWORD
* pdwStubPhase
);
238 HRESULT CALLBACK
IDirectDrawMediaStream_SetDirectDraw_Proxy(
239 IDirectDrawMediaStream
* This
,
240 IDirectDraw
* pDirectDraw
);
241 void __RPC_STUB
IDirectDrawMediaStream_SetDirectDraw_Stub(
242 struct IRpcStubBuffer
* This
,
243 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
244 PRPC_MESSAGE pRpcMessage
,
245 DWORD
* pdwStubPhase
);
246 HRESULT CALLBACK
IDirectDrawMediaStream_CreateSample_Proxy(
247 IDirectDrawMediaStream
* This
,
248 IDirectDrawSurface
* pSurface
,
251 IDirectDrawStreamSample
** ppSample
);
252 void __RPC_STUB
IDirectDrawMediaStream_CreateSample_Stub(
253 struct IRpcStubBuffer
* This
,
254 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
255 PRPC_MESSAGE pRpcMessage
,
256 DWORD
* pdwStubPhase
);
257 HRESULT CALLBACK
IDirectDrawMediaStream_GetTimePerFrame_Proxy(
258 IDirectDrawMediaStream
* This
,
259 STREAM_TIME
* pFrameTime
);
260 void __RPC_STUB
IDirectDrawMediaStream_GetTimePerFrame_Stub(
261 struct IRpcStubBuffer
* This
,
262 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
263 PRPC_MESSAGE pRpcMessage
,
264 DWORD
* pdwStubPhase
);
266 #endif /* __IDirectDrawMediaStream_INTERFACE_DEFINED__ */
268 /*****************************************************************************
269 * IDirectDrawStreamSample interface
271 #ifndef __IDirectDrawStreamSample_INTERFACE_DEFINED__
272 #define __IDirectDrawStreamSample_INTERFACE_DEFINED__
274 DEFINE_GUID(IID_IDirectDrawStreamSample
, 0xf4104fcf, 0x9a70, 0x11d0, 0x8f,0xde, 0x00,0xc0,0x4f,0xd9,0x18,0x9d);
275 #if defined(__cplusplus) && !defined(CINTERFACE)
276 struct IDirectDrawStreamSample
: public IStreamSample
278 virtual HRESULT STDMETHODCALLTYPE
GetSurface(
279 IDirectDrawSurface
** ppDirectDrawSurface
,
282 virtual HRESULT STDMETHODCALLTYPE
SetRect(
283 const RECT
* pRect
) = 0;
287 typedef struct IDirectDrawStreamSampleVtbl IDirectDrawStreamSampleVtbl
;
288 struct IDirectDrawStreamSample
{
289 const IDirectDrawStreamSampleVtbl
* lpVtbl
;
291 struct IDirectDrawStreamSampleVtbl
{
292 ICOM_MSVTABLE_COMPAT_FIELDS
294 /*** IUnknown methods ***/
295 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
296 IDirectDrawStreamSample
* This
,
300 ULONG (STDMETHODCALLTYPE
*AddRef
)(
301 IDirectDrawStreamSample
* This
);
303 ULONG (STDMETHODCALLTYPE
*Release
)(
304 IDirectDrawStreamSample
* This
);
306 /*** IStreamSample methods ***/
307 HRESULT (STDMETHODCALLTYPE
*GetMediaStream
)(
308 IDirectDrawStreamSample
* This
,
309 IMediaStream
** ppMediaStream
);
311 HRESULT (STDMETHODCALLTYPE
*GetSampleTimes
)(
312 IDirectDrawStreamSample
* This
,
313 STREAM_TIME
* pStartTime
,
314 STREAM_TIME
* pEndTime
,
315 STREAM_TIME
* pCurrentTime
);
317 HRESULT (STDMETHODCALLTYPE
*SetSampleTimes
)(
318 IDirectDrawStreamSample
* This
,
319 const STREAM_TIME
* pStartTime
,
320 const STREAM_TIME
* pEndTime
);
322 HRESULT (STDMETHODCALLTYPE
*Update
)(
323 IDirectDrawStreamSample
* This
,
329 HRESULT (STDMETHODCALLTYPE
*CompletionStatus
)(
330 IDirectDrawStreamSample
* This
,
332 DWORD dwMilliseconds
);
334 /*** IDirectDrawStreamSample methods ***/
335 HRESULT (STDMETHODCALLTYPE
*GetSurface
)(
336 IDirectDrawStreamSample
* This
,
337 IDirectDrawSurface
** ppDirectDrawSurface
,
340 HRESULT (STDMETHODCALLTYPE
*SetRect
)(
341 IDirectDrawStreamSample
* This
,
346 /*** IUnknown methods ***/
347 #define IDirectDrawStreamSample_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
348 #define IDirectDrawStreamSample_AddRef(p) (p)->lpVtbl->AddRef(p)
349 #define IDirectDrawStreamSample_Release(p) (p)->lpVtbl->Release(p)
350 /*** IStreamSample methods ***/
351 #define IDirectDrawStreamSample_GetMediaStream(p,a) (p)->lpVtbl->GetMediaStream(p,a)
352 #define IDirectDrawStreamSample_GetSampleTimes(p,a,b,c) (p)->lpVtbl->GetSampleTimes(p,a,b,c)
353 #define IDirectDrawStreamSample_SetSampleTimes(p,a,b) (p)->lpVtbl->SetSampleTimes(p,a,b)
354 #define IDirectDrawStreamSample_Update(p,a,b,c,d) (p)->lpVtbl->Update(p,a,b,c,d)
355 #define IDirectDrawStreamSample_CompletionStatus(p,a,b) (p)->lpVtbl->CompletionStatus(p,a,b)
356 /*** IDirectDrawStreamSample methods ***/
357 #define IDirectDrawStreamSample_GetSurface(p,a,b) (p)->lpVtbl->GetSurface(p,a,b)
358 #define IDirectDrawStreamSample_SetRect(p,a) (p)->lpVtbl->SetRect(p,a)
362 #define IDirectDrawStreamSample_METHODS \
363 ICOM_MSVTABLE_COMPAT_FIELDS \
364 /*** IUnknown methods ***/ \
365 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
366 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
367 STDMETHOD_(ULONG,Release)(THIS) PURE; \
368 /*** IStreamSample methods ***/ \
369 STDMETHOD_(HRESULT,GetMediaStream)(THIS_ IMediaStream** ppMediaStream) PURE; \
370 STDMETHOD_(HRESULT,GetSampleTimes)(THIS_ STREAM_TIME* pStartTime, STREAM_TIME* pEndTime, STREAM_TIME* pCurrentTime) PURE; \
371 STDMETHOD_(HRESULT,SetSampleTimes)(THIS_ const STREAM_TIME* pStartTime, const STREAM_TIME* pEndTime) PURE; \
372 STDMETHOD_(HRESULT,Update)(THIS_ DWORD dwFlags, HANDLE hEvent, PAPCFUNC pfnAPC, DWORD dwAPCData) PURE; \
373 STDMETHOD_(HRESULT,CompletionStatus)(THIS_ DWORD dwFlags, DWORD dwMilliseconds) PURE; \
374 /*** IDirectDrawStreamSample methods ***/ \
375 STDMETHOD_(HRESULT,GetSurface)(THIS_ IDirectDrawSurface** ppDirectDrawSurface, RECT* pRect) PURE; \
376 STDMETHOD_(HRESULT,SetRect)(THIS_ const RECT* pRect) PURE;
378 HRESULT CALLBACK
IDirectDrawStreamSample_GetSurface_Proxy(
379 IDirectDrawStreamSample
* This
,
380 IDirectDrawSurface
** ppDirectDrawSurface
,
382 void __RPC_STUB
IDirectDrawStreamSample_GetSurface_Stub(
383 struct IRpcStubBuffer
* This
,
384 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
385 PRPC_MESSAGE pRpcMessage
,
386 DWORD
* pdwStubPhase
);
387 HRESULT CALLBACK
IDirectDrawStreamSample_SetRect_Proxy(
388 IDirectDrawStreamSample
* This
,
390 void __RPC_STUB
IDirectDrawStreamSample_SetRect_Stub(
391 struct IRpcStubBuffer
* This
,
392 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
393 PRPC_MESSAGE pRpcMessage
,
394 DWORD
* pdwStubPhase
);
396 #endif /* __IDirectDrawStreamSample_INTERFACE_DEFINED__ */
401 #endif /* __WIDL_DDSTREAM_H */