From f610f642b1c59f871ca198f60057c79fe2f29709 Mon Sep 17 00:00:00 2001 From: Dmitry Chapyshev Date: Sun, 28 Sep 2008 06:04:47 +0000 Subject: [PATCH] - Sync ddstream.idl with wine head - Add qedit.idl from wine svn path=/trunk/; revision=36560 --- reactos/include/dxsdk/ddstream.idl | 18 ++-- reactos/include/dxsdk/dxsdk.rbuild | 1 + reactos/include/dxsdk/qedit.idl | 168 +++++++++++++++++++++++++++++ 3 files changed, 178 insertions(+), 9 deletions(-) create mode 100644 reactos/include/dxsdk/qedit.idl diff --git a/reactos/include/dxsdk/ddstream.idl b/reactos/include/dxsdk/ddstream.idl index 644401559ac..947e2bcde4f 100644 --- a/reactos/include/dxsdk/ddstream.idl +++ b/reactos/include/dxsdk/ddstream.idl @@ -44,14 +44,14 @@ pointer_default(unique) interface IDirectDrawMediaStream : IMediaStream { HRESULT GetFormat( - [out, optional] DDSURFACEDESC *pDDSDCurrent, - [out, optional] IDirectDrawPalette **ppDirectDrawPalette, - [out, optional] DDSURFACEDESC *pDDSDDesired, - [out, optional] DWORD *pdwFlags); + [out] DDSURFACEDESC *pDDSDCurrent, + [out] IDirectDrawPalette **ppDirectDrawPalette, + [out] DDSURFACEDESC *pDDSDDesired, + [out] DWORD *pdwFlags); HRESULT SetFormat( [in] const DDSURFACEDESC *pDDSurfaceDesc, - [in, optional] IDirectDrawPalette *pDirectDrawPalette); + [in] IDirectDrawPalette *pDirectDrawPalette); HRESULT GetDirectDraw( [out] IDirectDraw **ppDirectDraw); @@ -60,8 +60,8 @@ interface IDirectDrawMediaStream : IMediaStream [in] IDirectDraw *pDirectDraw); HRESULT CreateSample( - [in, optional] IDirectDrawSurface *pSurface, - [in, optional] const RECT *pRect, + [in] IDirectDrawSurface *pSurface, + [in] const RECT *pRect, [in] DWORD dwFlags, [out] IDirectDrawStreamSample **ppSample); @@ -79,8 +79,8 @@ pointer_default(unique) interface IDirectDrawStreamSample : IStreamSample { HRESULT GetSurface( - [out, optional] IDirectDrawSurface ** ppDirectDrawSurface, - [out, optional] RECT * pRect); + [out] IDirectDrawSurface ** ppDirectDrawSurface, + [out] RECT * pRect); HRESULT SetRect( [in] const RECT * pRect); diff --git a/reactos/include/dxsdk/dxsdk.rbuild b/reactos/include/dxsdk/dxsdk.rbuild index 1ec03b7c647..8183bd34b30 100644 --- a/reactos/include/dxsdk/dxsdk.rbuild +++ b/reactos/include/dxsdk/dxsdk.rbuild @@ -9,6 +9,7 @@ mediaobj.idl medparam.idl mmstream.idl + qedit.idl regbag.idl tvratings.idl vidcap.idl diff --git a/reactos/include/dxsdk/qedit.idl b/reactos/include/dxsdk/qedit.idl new file mode 100644 index 00000000000..48764c11a72 --- /dev/null +++ b/reactos/include/dxsdk/qedit.idl @@ -0,0 +1,168 @@ +/* + * Copyright (C) 2008 Google (Lei Zhang) + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +import "oaidl.idl"; +import "ocidl.idl"; +/* import "dxtrans.idl"; */ +import "amstream.idl"; +import "msxml.idl"; + +[ + object, + uuid(0579154A-2B53-4994-B0D0-E773148EFF85), + local, + pointer_default(unique) +] +interface ISampleGrabberCB : IUnknown +{ + HRESULT SampleCB( + double SampleTime, + IMediaSample * pSample + ); + HRESULT BufferCB( + double SampleTime, + BYTE * pBuffer, + long BufferLen + ); +} + +[ + object, + uuid(6B652FFF-11FE-4fce-92AD-0266B5D7C78F), + local, + pointer_default(unique) +] +interface ISampleGrabber: IUnknown +{ + HRESULT SetOneShot( + BOOL OneShot + ); + + HRESULT SetMediaType( + const AM_MEDIA_TYPE * pType + ); + + HRESULT GetConnectedMediaType( + AM_MEDIA_TYPE * pType + ); + + HRESULT SetBufferSamples( + BOOL BufferThem + ); + + HRESULT GetCurrentBuffer( + [in,out] long * pBufferSize, + [out] long * pBuffer + ); + + HRESULT GetCurrentSample( + [out] IMediaSample ** ppSample + ); + + HRESULT SetCallback( + ISampleGrabberCB * pCallback, + long WhichMethodToCallback + ); +}; + +[ + object, + uuid(65bd0710-24d2-4FF7-9324-ed2e5d3abafa), + pointer_default(unique) +] +interface IMediaDet : IUnknown +{ + HRESULT get_Filter( + [out] IUnknown* *pVal + ); + + HRESULT put_Filter( + IUnknown* newVal + ); + + HRESULT get_OutputStreams( + [out] long *pVal + ); + + HRESULT get_CurrentStream( + [out] long *pVal + ); + + HRESULT put_CurrentStream( + long newVal + ); + + HRESULT get_StreamType( + [out] GUID *pVal + ); + + HRESULT get_StreamTypeB( + [out] BSTR *pVal + ); + + HRESULT get_StreamLength( + [out] double *pVal + ); + + HRESULT get_Filename( + [out] BSTR *pVal + ); + + HRESULT put_Filename( + BSTR newVal + ); + + HRESULT GetBitmapBits( + double StreamTime, + long * pBufferSize, + char * pBuffer, + long Width, + long Height + ); + + HRESULT WriteBitmapBits( + double StreamTime, + long Width, + long Height, + BSTR Filename + ); + + HRESULT get_StreamMediaType( + [out] AM_MEDIA_TYPE * pVal + ); + + HRESULT GetSampleGrabber( + [out] ISampleGrabber ** ppVal + ); + + HRESULT get_FrameRate( + [out] double *pVal + ); + + HRESULT EnterBitmapGrabMode( + double SeekTime + ); +}; + +[ + uuid(65BD0711-24D2-4ff7-9324-ED2E5D3ABAFA), +] +coclass MediaDet +{ + [default] interface IMediaDet; +};