Author: cwittich
Date: Wed Sep 10 02:41:27 2008
New Revision: 36106
URL:
http://svn.reactos.org/svn/reactos?rev=36106&view=rev
Log:
sync dxsdk idl files with wine
Removed:
trunk/reactos/include/dxsdk/dvdif.idl
Modified:
trunk/reactos/include/dxsdk/Videoacc.idl
trunk/reactos/include/dxsdk/amstream.idl
trunk/reactos/include/dxsdk/austream.idl
trunk/reactos/include/dxsdk/ddstream.idl
trunk/reactos/include/dxsdk/devenum.idl
trunk/reactos/include/dxsdk/dxsdk.rbuild
trunk/reactos/include/dxsdk/dyngraph.idl
trunk/reactos/include/dxsdk/mediaobj.idl
trunk/reactos/include/dxsdk/medparam.idl
trunk/reactos/include/dxsdk/mmstream.idl
trunk/reactos/include/dxsdk/strmif.idl
Modified: trunk/reactos/include/dxsdk/Videoacc.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/Videoacc.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/Videoacc.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/Videoacc.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -2,8 +2,6 @@
cpp_quote("#if 0")
-typedef void* LPVOID;
-typedef void* LPGUID;
typedef void* LPDIRECTDRAWSURFACE;
typedef void* LPDDPIXELFORMAT;
typedef void* LPAMVAInternalMemInfo;
Modified: trunk/reactos/include/dxsdk/amstream.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/amstream.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/amstream.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/amstream.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,3 +1,20 @@
+/*
+ * Copyright 2004 Christian Costa
+ *
+ * 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 "unknwn.idl";
import "mmstream.idl";
@@ -9,61 +26,62 @@
cpp_quote("#include <ddstream.h>")
cpp_quote("#include <austream.h>")
+cpp_quote("#if 0")
+interface IDirectDraw;
+interface IDirectDrawSurface;
+cpp_quote("#endif")
+
interface IAMMultiMediaStream;
interface IAMMediaStream;
interface IMediaStreamFilter;
-interface IDirectDraw;
-interface IDirectDrawSurface;
interface IAMMediaTypeStream;
interface IAMMediaTypeSample;
-enum
-{
- AMMSF_NOGRAPHTHREAD = 0x00000001
+enum {
+ AMMSF_NOGRAPHTHREAD = 0x00000001
};
-enum
-{
- AMMSF_ADDDEFAULTRENDERER = 0x00000001,
- AMMSF_CREATEPEER = 0x00000002,
- AMMSF_STOPIFNOSAMPLES = 0x00000004,
- AMMSF_NOSTALL = 0x00000008
+enum {
+ AMMSF_ADDDEFAULTRENDERER = 0x00000001,
+ AMMSF_CREATEPEER = 0x00000002,
+ AMMSF_STOPIFNOSAMPLES = 0x00000004,
+ AMMSF_NOSTALL = 0x00000008
};
-enum
-{
- AMMSF_RENDERTYPEMASK = 0x00000003,
- AMMSF_RENDERTOEXISTING = 0x00000000,
- AMMSF_RENDERALLSTREAMS = 0x00000001,
- AMMSF_NORENDER = 0x00000002,
-
- AMMSF_NOCLOCK = 0x00000004,
- AMMSF_RUN = 0x00000008
+enum {
+ AMMSF_RENDERTYPEMASK = 0x00000003,
+ AMMSF_RENDERTOEXISTING = 0x00000000,
+ AMMSF_RENDERALLSTREAMS = 0x00000001,
+ AMMSF_NORENDER = 0x00000002,
+ AMMSF_NOCLOCK = 0x00000004,
+ AMMSF_RUN = 0x00000008
};
-typedef [v1_enum] enum
-{
- Disabled = 0,
- ReadData = 1,
- RenderData = 2
+
+typedef [v1_enum] enum {
+ Disabled = 0,
+ ReadData = 1,
+ RenderData = 2
} OUTPUT_STATE;
-
+/*
[
object,
uuid(7DB01C96-C0C3-11d0-8FF1-00C04FD9189D),
dual,
+helpstring("IDirectShowStream Interface"),
pointer_default(unique)
]
interface IDirectShowStream : IDispatch
{
- [propget, id(1)] HRESULT FileName([out, retval] BSTR *pVal);
- [propput, id(1)] HRESULT FileName([in] BSTR newVal);
- [propget, id(2)] HRESULT Video([out, retval] OUTPUT_STATE *pVal);
- [propput, id(2)] HRESULT Video([in] OUTPUT_STATE newVal);
- [propget, id(3)] HRESULT Audio([out, retval] OUTPUT_STATE *pVal);
- [propput, id(3)] HRESULT Audio([in] OUTPUT_STATE newVal);
+ [propget, id(1), helpstring("property FileName")] HRESULT FileName([out,
retval] BSTR *pVal);
+ [propput, id(1), helpstring("property FileName")] HRESULT FileName([in] BSTR
newVal);
+ [propget, id(2), helpstring("property Video")] HRESULT Video([out, retval]
OUTPUT_STATE *pVal);
+ [propput, id(2), helpstring("propetry Video")] HRESULT Video([in] OUTPUT_STATE
newVal);
+ [propget, id(3), helpstring("property Audio")] HRESULT Audio([out, retval]
OUTPUT_STATE *pVal);
+ [propput, id(3), helpstring("propetry Audio")] HRESULT Audio([in] OUTPUT_STATE
newVal);
};
+*/
[
object,
@@ -72,14 +90,36 @@
]
interface IAMMultiMediaStream : IMultiMediaStream
{
- HRESULT Initialize([in] STREAM_TYPE StreamType, [in] DWORD dwFlags, [in]
IGraphBuilder *pFilterGraph);
- HRESULT GetFilterGraph([out] IGraphBuilder **ppGraphBuilder);
- HRESULT GetFilter([out] IMediaStreamFilter **ppFilter);
- HRESULT AddMediaStream([in] IUnknown *pStreamObject, [in] const MSPID *PurposeId,
[in] DWORD dwFlags, [out] IMediaStream **ppNewStream);
- HRESULT OpenFile([in] LPCWSTR pszFileName, [in] DWORD dwFlags);
- HRESULT OpenMoniker([in] IBindCtx *pCtx, [in] IMoniker *pMoniker, [in] DWORD
dwFlags);
- HRESULT Render([in] DWORD dwFlags);
-}
+ HRESULT Initialize(
+ [in] STREAM_TYPE StreamType,
+ [in] DWORD dwFlags,
+ [in, optional] IGraphBuilder *pFilterGraph);
+
+ HRESULT GetFilterGraph(
+ [out] IGraphBuilder **ppGraphBuilder);
+
+ HRESULT GetFilter(
+ [out] IMediaStreamFilter **ppFilter);
+
+ HRESULT AddMediaStream(
+ [in, optional] IUnknown *pStreamObject,
+ [in, optional] const MSPID *PurposeId,
+ [in] DWORD dwFlags,
+ [out, optional] IMediaStream **ppNewStream);
+
+ HRESULT OpenFile(
+ [in] LPCWSTR pszFileName,
+ [in] DWORD dwFlags);
+
+ HRESULT OpenMoniker(
+ [in] IBindCtx *pCtx,
+ [in] IMoniker *pMoniker,
+ [in] DWORD dwFlags);
+
+ HRESULT Render(
+ [in] DWORD dwFlags);
+}
+
[
object,
@@ -88,12 +128,25 @@
]
interface IAMMediaStream : IMediaStream
{
- HRESULT Initialize([in] IUnknown *pSourceObject, [in] DWORD dwFlags, [in] REFMSPID
PurposeId, [in] const STREAM_TYPE StreamType);
- HRESULT SetState([in] FILTER_STATE State);
- HRESULT JoinAMMultiMediaStream([in] IAMMultiMediaStream *pAMMultiMediaStream);
- HRESULT JoinFilter([in] IMediaStreamFilter *pMediaStreamFilter);
- HRESULT JoinFilterGraph([in] IFilterGraph *pFilterGraph);
-};
+ HRESULT Initialize(
+ [in, optional] IUnknown *pSourceObject,
+ [in] DWORD dwFlags,
+ [in] REFMSPID PurposeId,
+ [in] const STREAM_TYPE StreamType);
+
+ HRESULT SetState(
+ [in] FILTER_STATE State);
+
+ HRESULT JoinAMMultiMediaStream(
+ [in] IAMMultiMediaStream *pAMMultiMediaStream);
+
+ HRESULT JoinFilter(
+ [in] IMediaStreamFilter *pMediaStreamFilter);
+
+ HRESULT JoinFilterGraph(
+ [in] IFilterGraph *pFilterGraph);
+}
+
[
object,
@@ -103,16 +156,35 @@
]
interface IMediaStreamFilter : IBaseFilter
{
- HRESULT AddMediaStream([in] IAMMediaStream *pAMMediaStream);
- HRESULT GetMediaStream([in] REFMSPID idPurpose, [out] IMediaStream **ppMediaStream);
- HRESULT EnumMediaStreams([in] long Index, [out] IMediaStream **ppMediaStream);
- HRESULT SupportSeeking([in] BOOL bRenderer);
- HRESULT ReferenceTimeToStreamTime([in] [out] REFERENCE_TIME *pTime);
- HRESULT GetCurrentStreamTime([out] REFERENCE_TIME *pCurrentStreamTime);
- HRESULT WaitUntil([in] REFERENCE_TIME WaitStreamTime);
- HRESULT Flush([in] BOOL bCancelEOS);
- HRESULT EndOfStream();
-};
+ HRESULT AddMediaStream(
+ [in] IAMMediaStream *pAMMediaStream);
+
+ HRESULT GetMediaStream(
+ [in] REFMSPID idPurpose,
+ [out] IMediaStream **ppMediaStream);
+
+ HRESULT EnumMediaStreams(
+ [in] long Index,
+ [out] IMediaStream **ppMediaStream);
+
+ HRESULT SupportSeeking(
+ [in] BOOL bRenderer);
+
+ HRESULT ReferenceTimeToStreamTime(
+ [in] [out] REFERENCE_TIME *pTime);
+
+ HRESULT GetCurrentStreamTime(
+ [out] REFERENCE_TIME *pCurrentStreamTime);
+
+ HRESULT WaitUntil(
+ [in] REFERENCE_TIME WaitStreamTime);
+
+ HRESULT Flush(
+ [in] BOOL bCancelEOS);
+
+ HRESULT EndOfStream();
+}
+
[
object,
@@ -122,8 +194,9 @@
]
interface IDirectDrawMediaSampleAllocator : IUnknown
{
- HRESULT GetDirectDraw(IDirectDraw **ppDirectDraw);
-};
+ HRESULT GetDirectDraw(IDirectDraw **ppDirectDraw);
+}
+
[
object,
@@ -133,9 +206,13 @@
]
interface IDirectDrawMediaSample : IUnknown
{
- HRESULT GetSurfaceAndReleaseLock([out] IDirectDrawSurface **ppDirectDrawSurface,
[out] RECT * pRect);
- HRESULT LockMediaSamplePointer(void);
-};
+ HRESULT GetSurfaceAndReleaseLock(
+ [out] IDirectDrawSurface **ppDirectDrawSurface,
+ [out] RECT * pRect);
+
+ HRESULT LockMediaSamplePointer(void);
+}
+
[
object,
@@ -146,19 +223,30 @@
interface IAMMediaTypeStream : IMediaStream
{
- HRESULT GetFormat([out] AM_MEDIA_TYPE * pMediaType, [in] DWORD dwFlags);
- HRESULT SetFormat([in] AM_MEDIA_TYPE * pMediaType, [in] DWORD dwFlags);
- HRESULT CreateSample([in] long lSampleSize, [in] BYTE * pbBuffer, [in] DWORD
dwFlags, [in] IUnknown *pUnkOuter, [out] IAMMediaTypeSample ** ppAMMediaTypeSample);
- HRESULT GetStreamAllocatorRequirements([out] ALLOCATOR_PROPERTIES *pProps);
- HRESULT SetStreamAllocatorRequirements([in] ALLOCATOR_PROPERTIES *pProps);
-};
-
-
-
-
-
-
- [
+ HRESULT GetFormat(
+ [out] AM_MEDIA_TYPE * pMediaType,
+ [in] DWORD dwFlags);
+
+ HRESULT SetFormat(
+ [in] AM_MEDIA_TYPE * pMediaType,
+ [in] DWORD dwFlags);
+
+ HRESULT CreateSample(
+ [in] long lSampleSize,
+ [in, optional] BYTE * pbBuffer,
+ [in] DWORD dwFlags,
+ [in, optional] IUnknown *pUnkOuter,
+ [out] IAMMediaTypeSample ** ppAMMediaTypeSample);
+
+ HRESULT GetStreamAllocatorRequirements(
+ [out] ALLOCATOR_PROPERTIES *pProps);
+
+ HRESULT SetStreamAllocatorRequirements(
+ [in] ALLOCATOR_PROPERTIES *pProps);
+}
+
+
+[
object,
local,
uuid(AB6B4AFB-F6E4-11d0-900D-00C04FD9189D),
@@ -166,47 +254,66 @@
]
interface IAMMediaTypeSample : IStreamSample
{
- HRESULT SetPointer([in] BYTE *pBuffer, [in] long lSize);
- HRESULT GetPointer([out] BYTE ** ppBuffer);
- long GetSize(void);
- HRESULT GetTime([out] REFERENCE_TIME * pTimeStart, [out] REFERENCE_TIME * pTimeEnd);
- HRESULT SetTime([in] REFERENCE_TIME * pTimeStart, [in] REFERENCE_TIME * pTimeEnd);
- HRESULT IsSyncPoint(void);
- HRESULT SetSyncPoint(BOOL bIsSyncPoint);
- HRESULT IsPreroll(void);
- HRESULT SetPreroll(BOOL bIsPreroll);
- long GetActualDataLength(void);
- HRESULT SetActualDataLength(long Len);
- HRESULT GetMediaType(AM_MEDIA_TYPE **ppMediaType);
- HRESULT SetMediaType(AM_MEDIA_TYPE *pMediaType);
- HRESULT IsDiscontinuity(void);
- HRESULT SetDiscontinuity(BOOL bDiscontinuity);
- HRESULT GetMediaTime([out] LONGLONG * pTimeStart, [out] LONGLONG * pTimeEnd);
- HRESULT SetMediaTime([in] LONGLONG * pTimeStart, [in] LONGLONG * pTimeEnd);
-};
-
-[
- uuid(4E6CDE29-C0C4-11d0-8FF1-00C04FD9189D)
-]
-
-library DirectShowStreamLib
-{
- importlib("stdole2.tlb");
- [
- uuid(49c47ce5-9ba4-11d0-8212-00c04fc32c45)
- ]
- coclass AMMultiMediaStream
- {
- [default] dispinterface IDirectShowStream;
- };
-};
-
-cpp_quote("#ifndef __cplusplus")
-cpp_quote("EXTERN_C const CLSID CLSID_AMMultiMediaStream;")
-cpp_quote("#endif")
-
-cpp_quote("DEFINE_GUID(CLSID_AMDirectDrawStream, 0x49c47ce4, 0x9ba4, 0x11d0, 0x82,
0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
-cpp_quote("DEFINE_GUID(CLSID_AMAudioStream, 0x8496e040, 0xaf4c, 0x11d0, 0x82, 0x12,
0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
-cpp_quote("DEFINE_GUID(CLSID_AMAudioData, 0xf2468580, 0xaf8a, 0x11d0, 0x82, 0x12,
0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
-cpp_quote("DEFINE_GUID(CLSID_AMMediaTypeStream, 0xcf0f2f7c, 0xf7bf, 0x11d0, 0x90,
0xd, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
-
+ HRESULT SetPointer(
+ [in] BYTE *pBuffer,
+ [in] long lSize);
+
+ HRESULT GetPointer(
+ [out] BYTE ** ppBuffer);
+
+ long GetSize(void);
+
+ HRESULT GetTime(
+ [out] REFERENCE_TIME * pTimeStart,
+ [out] REFERENCE_TIME * pTimeEnd);
+
+ HRESULT SetTime(
+ [in] REFERENCE_TIME * pTimeStart,
+ [in] REFERENCE_TIME * pTimeEnd);
+
+ HRESULT IsSyncPoint(void);
+
+ HRESULT SetSyncPoint(
+ BOOL bIsSyncPoint);
+
+ HRESULT IsPreroll(void);
+
+ HRESULT SetPreroll(
+ BOOL bIsPreroll);
+
+ long GetActualDataLength(void);
+
+ HRESULT SetActualDataLength(long Len);
+
+ HRESULT GetMediaType(
+ AM_MEDIA_TYPE **ppMediaType);
+
+ HRESULT SetMediaType(
+ AM_MEDIA_TYPE *pMediaType);
+
+ HRESULT IsDiscontinuity(void);
+
+ HRESULT SetDiscontinuity(
+ BOOL bDiscontinuity);
+
+ HRESULT GetMediaTime(
+ [out] LONGLONG * pTimeStart,
+ [out] LONGLONG * pTimeEnd);
+
+ HRESULT SetMediaTime(
+ [in] LONGLONG * pTimeStart,
+ [in] LONGLONG * pTimeEnd);
+}
+
+[
+ uuid(49C47CE5-9BA4-11d0-8212-00C04FC32C45)
+]
+coclass AMMultiMediaStream
+{
+ [default] dispinterface IDirectShowStream;
+}
+
+cpp_quote("DEFINE_GUID(CLSID_AMDirectDrawStream, 0x49c47ce4, 0x9ba4, 0x11d0, 0x82,
0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
+cpp_quote("DEFINE_GUID(CLSID_AMAudioStream, 0x8496e040, 0xaf4c, 0x11d0, 0x82,
0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
+cpp_quote("DEFINE_GUID(CLSID_AMAudioData, 0xf2468580, 0xaf8a, 0x11d0, 0x82,
0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
+cpp_quote("DEFINE_GUID(CLSID_AMMediaTypeStream, 0xcf0f2f7c, 0xf7bf, 0x11d0, 0x90,
0x0d, 0x00, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
Modified: trunk/reactos/include/dxsdk/austream.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/austream.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/austream.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/austream.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,8 +1,24 @@
+/*
+ * Copyright 2004 Christian Costa
+ *
+ * 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 "unknwn.idl";
import "mmstream.idl";
-// hack
cpp_quote("#if 0")
typedef struct tWAVEFORMATEX WAVEFORMATEX;
cpp_quote ("#endif")
@@ -18,26 +34,36 @@
uuid(f7537560-a3be-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
-
interface IAudioMediaStream : IMediaStream
{
- HRESULT GetFormat([out] WAVEFORMATEX *pWaveFormatCurrent);
- HRESULT SetFormat([in] const WAVEFORMATEX *lpWaveFormat);
- HRESULT CreateSample([in] IAudioData *pAudioData, [in] DWORD dwFlags, [out]
IAudioStreamSample **ppSample);
+ HRESULT GetFormat(
+ [out] /*[optional]*/ WAVEFORMATEX *pWaveFormatCurrent
+ );
+
+ HRESULT SetFormat(
+ [in] const WAVEFORMATEX *lpWaveFormat);
+
+ HRESULT CreateSample(
+ [in] IAudioData *pAudioData,
+ [in] DWORD dwFlags,
+ [out] IAudioStreamSample **ppSample
+ );
}
+
[
object,
local,
-uuid(54c719c0-af60-11d0-8212-00c04fc32c45),
+uuid(345fee00-aba5-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
+interface IAudioStreamSample : IStreamSample
+{
+ HRESULT GetAudioData(
+ [out] IAudioData **ppAudio
+ );
+}
-interface IAudioData : IMemoryData
-{
- HRESULT GetFormat([out] WAVEFORMATEX *pWaveFormatCurrent);
- HRESULT SetFormat([in] const WAVEFORMATEX *lpWaveFormat);
-}
[
object,
@@ -47,18 +73,36 @@
]
interface IMemoryData : IUnknown
{
- HRESULT SetBuffer([in] DWORD cbSize, [in] BYTE *pbData, [in] DWORD dwFlags);
- HRESULT GetInfo([out] DWORD *pdwLength, [out] BYTE **ppbData, [out] DWORD
*pcbActualData);
- HRESULT SetActual([in] DWORD cbDataValid);
+ HRESULT SetBuffer(
+ [in] DWORD cbSize,
+ [in] BYTE *pbData,
+ [in] DWORD dwFlags
+ );
+
+ HRESULT GetInfo(
+ [out] DWORD *pdwLength,
+ [out] BYTE **ppbData,
+ [out] DWORD *pcbActualData
+ );
+ HRESULT SetActual(
+ [in] DWORD cbDataValid
+ );
}
+
[
object,
local,
-uuid(345fee00-aba5-11d0-8212-00c04fc32c45),
+uuid(54c719c0-af60-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
-interface IAudioStreamSample : IStreamSample
+interface IAudioData : IMemoryData
{
- HRESULT GetAudioData([out] IAudioData **ppAudio);
+ HRESULT GetFormat(
+ [out] /*[optional]*/ WAVEFORMATEX *pWaveFormatCurrent
+ );
+
+ HRESULT SetFormat(
+ [in] const WAVEFORMATEX *lpWaveFormat
+ );
}
Modified: trunk/reactos/include/dxsdk/ddstream.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/ddstream.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/ddstream.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/ddstream.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,35 +1,39 @@
+/*
+ * Copyright 2004 Christian Costa
+ *
+ * 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 "unknwn.idl";
import "mmstream.idl";
-cpp_quote("#if 0")
+cpp_quote("#ifndef __WINE_DDRAW_H")
typedef void * LPDDSURFACEDESC;
typedef struct tDDSURFACEDESC DDSURFACEDESC;
+interface IDirectDraw;
+interface IDirectDrawSurface;
+interface IDirectDrawPalette;
cpp_quote("#endif")
cpp_quote("#include <ddraw.h>")
-enum
-{
- DDSFF_PROGRESSIVERENDER = 0x00000001
+enum {
+ DDSFF_PROGRESSIVERENDER = 0x00000001
};
-interface IDirectDraw;
-interface IDirectDrawSurface;
-interface IDirectDrawPalette;
interface IDirectDrawMediaStream;
interface IDirectDrawStreamSample;
-
- [
-object,
-local,
-uuid(F4104FCF-9A70-11d0-8FDE-00C04FD9189D),
-pointer_default(unique)
-]
-interface IDirectDrawStreamSample : IStreamSample
-{
- HRESULT GetSurface([out] IDirectDrawSurface ** ppDirectDrawSurface, [out] RECT *
pRect);
- HRESULT SetRect([in] const RECT * pRect);
-};
[
object,
@@ -39,12 +43,46 @@
]
interface IDirectDrawMediaStream : IMediaStream
{
- HRESULT GetFormat([out] DDSURFACEDESC *pDDSDCurrent, [out] IDirectDrawPalette
**ppDirectDrawPalette, [out] DDSURFACEDESC *pDDSDDesired, [out] DWORD *pdwFlags);
- HRESULT SetFormat([in] const DDSURFACEDESC *pDDSurfaceDesc, [in] IDirectDrawPalette
*pDirectDrawPalette);
- HRESULT GetDirectDraw([out] IDirectDraw **ppDirectDraw);
- HRESULT SetDirectDraw([in] IDirectDraw *pDirectDraw);
- HRESULT CreateSample([in] IDirectDrawSurface *pSurface, [in] const RECT *pRect,
[in] DWORD dwFlags, [out]IDirectDrawStreamSample **ppSample);
- HRESULT GetTimePerFrame([out] STREAM_TIME *pFrameTime);
-};
+ HRESULT GetFormat(
+ [out, optional] DDSURFACEDESC *pDDSDCurrent,
+ [out, optional] IDirectDrawPalette **ppDirectDrawPalette,
+ [out, optional] DDSURFACEDESC *pDDSDDesired,
+ [out, optional] DWORD *pdwFlags);
+
+ HRESULT SetFormat(
+ [in] const DDSURFACEDESC *pDDSurfaceDesc,
+ [in, optional] IDirectDrawPalette *pDirectDrawPalette);
+
+ HRESULT GetDirectDraw(
+ [out] IDirectDraw **ppDirectDraw);
+
+ HRESULT SetDirectDraw(
+ [in] IDirectDraw *pDirectDraw);
+
+ HRESULT CreateSample(
+ [in, optional] IDirectDrawSurface *pSurface,
+ [in, optional] const RECT *pRect,
+ [in] DWORD dwFlags,
+ [out] IDirectDrawStreamSample **ppSample);
+
+ HRESULT GetTimePerFrame(
+ [out] STREAM_TIME *pFrameTime);
+}
+[
+object,
+local,
+uuid(F4104FCF-9A70-11d0-8FDE-00C04FD9189D),
+pointer_default(unique)
+]
+interface IDirectDrawStreamSample : IStreamSample
+{
+ HRESULT GetSurface(
+ [out, optional] IDirectDrawSurface ** ppDirectDrawSurface,
+ [out, optional] RECT * pRect);
+
+ HRESULT SetRect(
+ [in] const RECT * pRect);
+
+}
Modified: trunk/reactos/include/dxsdk/devenum.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/devenum.idl?…
==============================================================================
--- trunk/reactos/include/dxsdk/devenum.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/devenum.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,3 +1,22 @@
+/*
+ * Copyright (C) 2002 Robert Shearman
+ *
+ * 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";
cpp_quote("#define CDEF_CLASS_DEFAULT 0x0001")
cpp_quote("#define CDEF_BYPASS_CLASS_MANAGER 0x0002")
@@ -11,9 +30,8 @@
]
interface ICreateDevEnum : IUnknown
{
- import "oaidl.idl";
-
- HRESULT CreateClassEnumerator( [in] REFCLSID clsidDeviceClass,
- [out] IEnumMoniker ** ppEnumMoniker,
- [in] DWORD dwFlags);
+ HRESULT CreateClassEnumerator(
+ [in] REFCLSID clsidDeviceClass,
+ [out] IEnumMoniker ** ppEnumMoniker,
+ [in] DWORD dwFlags);
}
Removed: trunk/reactos/include/dxsdk/dvdif.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/dvdif.idl?re…
==============================================================================
--- trunk/reactos/include/dxsdk/dvdif.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/dvdif.idl (removed)
@@ -1,6 +1,0 @@
-import "unknwn.idl";
-import "objidl.idl";
-
-cpp_quote("#include <ddraw.h>")
-
-// fixme it is not completed
Modified: trunk/reactos/include/dxsdk/dxsdk.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/dxsdk.rbuild…
==============================================================================
--- trunk/reactos/include/dxsdk/dxsdk.rbuild [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/dxsdk.rbuild [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -5,7 +5,6 @@
<file>austream.idl</file>
<file>ddstream.idl</file>
<file>dmodshow.idl</file>
- <file>dyngraph.idl</file>
<file>mixerocx.idl</file>
<file>mediaobj.idl</file>
<file>medparam.idl</file>
@@ -14,8 +13,6 @@
<file>tvratings.idl</file>
<file>vidcap.idl</file>
<file>Videoacc.idl</file>
- <file>Vmrender.idl</file>
<file>strmif.idl</file>
- <file>dvdif.idl</file>
<file>devenum.idl</file>
</module>
Modified: trunk/reactos/include/dxsdk/dyngraph.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/dyngraph.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/dyngraph.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/dyngraph.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,24 +1,58 @@
-
-
- cpp_quote("#if 0")
-import "unknwn.idl";
-typedef int IBaseFilter ;
-typedef int IEnumFilters;
-typedef int IPin;
-typedef int REFERENCE_TIME;
-typedef int AM_MEDIA_TYPE;
-cpp_quote("#endif")
+/*
+ * Copyright (C) 2002 Robert Shearman
+ *
+ * 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
+ */
interface IPinConnection;
interface IPinFlowControl;
interface IGraphConfig;
interface IGraphConfigCallback;
+[
+ local,
+ object,
+ uuid(4a9a62d3-27d4-403d-91e9-89f540e55534),
+ pointer_default(unique)
+]
+interface IPinConnection : IUnknown
+{
+ HRESULT DynamicQueryAccept([in] const AM_MEDIA_TYPE *pmt);
+
+ HRESULT NotifyEndOfStream([in] HANDLE hNotifyEvent);
+
+ HRESULT IsEndPin();
+
+ HRESULT DynamicDisconnect();
+}
+
+[
+ local,
+ object,
+ uuid(c56e9858-dbf3-4f6b-8119-384af2060deb),
+ pointer_default(unique)
+]
+interface IPinFlowControl : IUnknown
+{
+ HRESULT Block([in] DWORD dwBlockFlags, [in] HANDLE hEvent);
+}
+
enum _AM_PIN_FLOW_CONTROL_BLOCK_FLAGS
{
AM_PIN_FLOW_CONTROL_BLOCK = 0x00000001,
};
-
typedef enum _AM_GRAPH_CONFIG_RECONNECT_FLAGS
{
@@ -26,7 +60,6 @@
AM_GRAPH_CONFIG_RECONNECT_CACHE_REMOVED_FILTERS = 0x00000002,
AM_GRAPH_CONFIG_RECONNECT_USE_ONLY_CACHED_FILTERS = 0x00000004
} AM_GRAPH_CONFIG_RECONNECT_FLAGS;
-
enum _REM_FILTER_FLAGS
{
@@ -36,61 +69,55 @@
typedef enum _AM_FILTER_FLAGS
{
AM_FILTER_FLAGS_REMOVABLE = 0x00000001
- } AM_FILTER_FLAGS;
-
+} AM_FILTER_FLAGS;
[
- local,
- object,
- uuid(4a9a62d3-27d4-403d-91e9-89f540e55534),
- pointer_default(unique)
-]
-interface IPinConnection : IUnknown
-{
- HRESULT DynamicQueryAccept([in] const AM_MEDIA_TYPE *pmt);
- HRESULT NotifyEndOfStream([in] HANDLE hNotifyEvent);
- HRESULT IsEndPin();
- HRESULT DynamicDisconnect();
-};
-
-[
- local,
- object,
- uuid(c56e9858-dbf3-4f6b-8119-384af2060deb),
- pointer_default(unique)
-]
-interface IPinFlowControl : IUnknown
-{
- HRESULT Block([in] DWORD dwBlockFlags, [in] HANDLE hEvent);
-}
-
-
-
-[
- local,
- object,
- uuid(03A1EB8E-32BF-4245-8502-114D08A9CB88),
- pointer_default(unique)
+ local,
+ object,
+ uuid(03A1EB8E-32BF-4245-8502-114D08A9CB88),
+ pointer_default(unique)
]
interface IGraphConfig : IUnknown
{
- HRESULT Reconnect([in] IPin *pOutputPin, [in] IPin *pInputPin, [in] const
AM_MEDIA_TYPE *pmtFirstConnection, IBaseFilter *pUsingFilter, [in] HANDLE hAbortEvent,
[in] DWORD dwFlags);
- HRESULT Reconfigure([in] IGraphConfigCallback *pCallback, [in] PVOID pvContext, [in]
DWORD dwFlags, [in] HANDLE hAbortEvent);
+ HRESULT Reconnect(
+ [in] IPin *pOutputPin,
+ [in] IPin *pInputPin,
+ [in] const AM_MEDIA_TYPE *pmtFirstConnection,
+ [in] IBaseFilter *pUsingFilter,
+ [in] HANDLE hAbortEvent,
+ [in] DWORD dwFlags);
+
+ HRESULT Reconfigure(
+ [in] IGraphConfigCallback *pCallback,
+ [in] PVOID pvContext,
+ [in] DWORD dwFlags,
+ [in] HANDLE hAbortEvent);
+
HRESULT AddFilterToCache([in] IBaseFilter *pFilter);
+
HRESULT EnumCacheFilter([out] IEnumFilters **pEnum);
+
HRESULT RemoveFilterFromCache([in]IBaseFilter *pFilter);
+
HRESULT GetStartTime([out] REFERENCE_TIME *prtStart);
- HRESULT PushThroughData([in] IPin *pOutputPin, [in] IPinConnection *pConnection, [in]
HANDLE hEventAbort);
+
+ HRESULT PushThroughData(
+ [in] IPin *pOutputPin,
+ [in] IPinConnection *pConnection,
+ [in] HANDLE hEventAbort);
+
HRESULT SetFilterFlags([in] IBaseFilter *pFilter, [in] DWORD dwFlags);
+
HRESULT GetFilterFlags([in] IBaseFilter *pFilter, [out] DWORD *pdwFlags);
- HRESULT RemoveFilterEx( [in] IBaseFilter *pFilter, DWORD Flags );
+
+ HRESULT RemoveFilterEx([in] IBaseFilter *pFilter, DWORD Flags);
}
[
- local,
- object,
- uuid(ade0fd60-d19d-11d2-abf6-00a0c905f375),
- pointer_default(unique)
+ local,
+ object,
+ uuid(ade0fd60-d19d-11d2-abf6-00a0c905f375),
+ pointer_default(unique)
]
interface IGraphConfigCallback : IUnknown
{
@@ -105,12 +132,19 @@
]
interface IFilterChain : IUnknown
{
- HRESULT StartChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
- HRESULT PauseChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
- HRESULT StopChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
- HRESULT RemoveChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
+ HRESULT StartChain(
+ [in] IBaseFilter *pStartFilter,
+ [in] IBaseFilter *pEndFilter);
+
+ HRESULT PauseChain(
+ [in] IBaseFilter *pStartFilter,
+ [in] IBaseFilter *pEndFilter);
+
+ HRESULT StopChain(
+ [in] IBaseFilter *pStartFilter,
+ [in] IBaseFilter *pEndFilter);
+
+ HRESULT RemoveChain(
+ [in] IBaseFilter *pStartFilter,
+ [in] IBaseFilter *pEndFilter);
}
-
-
-
-
Modified: trunk/reactos/include/dxsdk/mediaobj.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/mediaobj.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/mediaobj.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/mediaobj.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,189 +1,74 @@
+/*
+ * Copyright (C) 2002 Alexandre Julliard
+ * Copyright (C) 2004 Vincent Béron
+ *
+ * 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
+ */
+
+cpp_quote("#if !defined(COM_NO_WINDOWS_H) && !defined(__WINESRC__)")
+cpp_quote("#include <windows.h>")
+cpp_quote("#include <ole2.h>")
+cpp_quote("#endif")
import "unknwn.idl";
import "objidl.idl";
+interface IDMOQualityControl;
+interface IDMOVideoOutputOptimizations;
+interface IMediaBuffer;
+interface IMediaObject;
+interface IMediaObjectInPlace;
-cpp_quote("#ifdef __strmif_h__")
-cpp_quote("typedef AM_MEDIA_TYPE DMO_MEDIA_TYPE;")
-cpp_quote("#else")
typedef struct _DMOMediaType
{
- GUID majortype;
- GUID subtype;
- BOOL bFixedSizeSamples;
- BOOL bTemporalCompression;
- ULONG lSampleSize;
- GUID formattype;
+ GUID majortype;
+ GUID subtype;
+ BOOL bFixedSizeSamples;
+ BOOL bTemporalCompression;
+ ULONG lSampleSize;
+ GUID formattype;
IUnknown *pUnk;
- ULONG cbFormat;
- [size_is(cbFormat)] BYTE * pbFormat;
+ ULONG cbFormat;
+ BYTE *pbFormat;
} DMO_MEDIA_TYPE;
-typedef LONGLONG REFERENCE_TIME;
-cpp_quote("#endif")
-
-
-enum _DMO_INPUT_DATA_BUFFER_FLAGS
-{
- DMO_INPUT_DATA_BUFFERF_SYNCPOINT = 0x00000001,
- DMO_INPUT_DATA_BUFFERF_TIME = 0x00000002,
- DMO_INPUT_DATA_BUFFERF_TIMELENGTH = 0x00000004
-};
-
-enum _DMO_OUTPUT_DATA_BUFFER_FLAGS
-{
- DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT = 0x00000001,
- DMO_OUTPUT_DATA_BUFFERF_TIME = 0x00000002,
- DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH = 0x00000004,
- DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE = 0x01000000
-};
-
-enum _DMO_INPUT_STATUS_FLAGS
-{
- DMO_INPUT_STATUSF_ACCEPT_DATA = 0x00000001
-};
-
-enum _DMO_INPUT_STREAM_INFO_FLAGS
-{
- DMO_INPUT_STREAMF_WHOLE_SAMPLES = 0x00000001,
- DMO_INPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x00000002,
- DMO_INPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x00000004,
- DMO_INPUT_STREAMF_HOLDS_BUFFERS = 0x00000008
-};
-
-enum _DMO_OUTPUT_STREAM_INFO_FLAGS
-{
- DMO_OUTPUT_STREAMF_WHOLE_SAMPLES = 0x00000001,
- DMO_OUTPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x00000002,
- DMO_OUTPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x00000004,
- DMO_OUTPUT_STREAMF_DISCARDABLE = 0x00000008,
- DMO_OUTPUT_STREAMF_OPTIONAL = 0x00000010
-};
-
-enum _DMO_SET_TYPE_FLAGS
-{
- DMO_SET_TYPEF_TEST_ONLY = 0x00000001,
- DMO_SET_TYPEF_CLEAR = 0x00000002
-};
-
-enum _DMO_PROCESS_OUTPUT_FLAGS
-{
- DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER = 0x00000001
-};
-
-enum _DMO_INPLACE_PROCESS_FLAGS
-{
- DMO_INPLACE_NORMAL = 0x00000000,
- DMO_INPLACE_ZERO = 0x00000001
-};
-
-enum _DMO_QUALITY_STATUS_FLAGS
-{
- DMO_QUALITY_STATUS_ENABLED = 0x00000001
-};
-
-enum _DMO_VIDEO_OUTPUT_STREAM_FLAGS
-{
- DMO_VOSF_NEEDS_PREVIOUS_SAMPLE = 0x00000001
-};
-
-
+/*****************************************************************************
+ * IEnumDMO interface
+ */
[
object,
- uuid(59eff8b9-938c-4a26-82f2-95cb84cdc837)
-]
-interface IMediaBuffer : IUnknown
-{
- HRESULT SetLength(DWORD cbLength);
- HRESULT GetMaxLength([out] DWORD *pcbMaxLength);
- HRESULT GetBufferAndLength([out] BYTE **ppBuffer, [out] DWORD *pcbLength);
-}
-
-
-typedef struct _DMO_OUTPUT_DATA_BUFFER
-{
- IMediaBuffer *pBuffer;
- DWORD dwStatus;
- REFERENCE_TIME rtTimestamp;
- REFERENCE_TIME rtTimelength;
-} DMO_OUTPUT_DATA_BUFFER, *PDMO_OUTPUT_DATA_BUFFER;
-
-
-[
- object,
- uuid(d8ad0f58-5494-4102-97c5-ec798e59bcf4)
-]
-interface IMediaObject : IUnknown
-{
- HRESULT GetStreamCount([out] DWORD *pcInputStreams, [out] DWORD
*pcOutputStreams);
- HRESULT GetInputStreamInfo(DWORD dwInputStreamIndex, [out] DWORD *pdwFlags);
- HRESULT GetOutputStreamInfo(DWORD dwOutputStreamIndex, [out] DWORD *pdwFlags);
- HRESULT GetInputType(DWORD dwInputStreamIndex, DWORD dwTypeIndex, [out]
DMO_MEDIA_TYPE *pmt);
- HRESULT GetOutputType(DWORD dwOutputStreamIndex, DWORD dwTypeIndex, [out]
DMO_MEDIA_TYPE *pmt);
- HRESULT SetInputType(DWORD dwInputStreamIndex, [in] const DMO_MEDIA_TYPE *pmt,
DWORD dwFlags);
- HRESULT SetOutputType(DWORD dwOutputStreamIndex, [in] const DMO_MEDIA_TYPE *pmt,
DWORD dwFlags);
- HRESULT GetInputCurrentType(DWORD dwInputStreamIndex, [out] DMO_MEDIA_TYPE
*pmt);
- HRESULT GetOutputCurrentType(DWORD dwOutputStreamIndex, [out] DMO_MEDIA_TYPE
*pmt);
- HRESULT GetInputSizeInfo(DWORD dwInputStreamIndex, [out] DWORD *pcbSize, [out]
DWORD *pcbMaxLookahead, [out] DWORD *pcbAlignment);
- HRESULT GetOutputSizeInfo(DWORD dwOutputStreamIndex, [out] DWORD *pcbSize, [out]
DWORD *pcbAlignment);
- HRESULT GetInputMaxLatency(DWORD dwInputStreamIndex, [out] REFERENCE_TIME
*prtMaxLatency);
- HRESULT SetInputMaxLatency(DWORD dwInputStreamIndex, REFERENCE_TIME
rtMaxLatency);
- HRESULT Flush();
- HRESULT Discontinuity(DWORD dwInputStreamIndex);
- HRESULT AllocateStreamingResources();
- HRESULT FreeStreamingResources();
- HRESULT GetInputStatus(DWORD dwInputStreamIndex, [out] DWORD *dwFlags);
- HRESULT ProcessInput(DWORD dwInputStreamIndex, IMediaBuffer *pBuffer, DWORD
dwFlags, REFERENCE_TIME rtTimestamp, REFERENCE_TIME rtTimelength);
- HRESULT ProcessOutput(DWORD dwFlags,DWORD cOutputBufferCount,
[in,out,size_is(cOutputBufferCount)]
- DMO_OUTPUT_DATA_BUFFER *pOutputBuffers, [out] DWORD *pdwStatus);
- HRESULT Lock(LONG bLock);
-};
-
-
-[
-object,
-uuid(2c3cd98a-2bfa-4a53-9c27-5249ba64ba0f)
+ uuid(2C3CD98A-2BFA-4A53-9C27-5249BA64BA0F),
+ pointer_default(unique)
]
interface IEnumDMO : IUnknown
{
- HRESULT Next(DWORD cItemsToFetch, [out, size_is(cItemsToFetch),
length_is(*pcItemsFetched)] CLSID *pCLSID, [out, size_is(cItemsToFetch),
length_is(*pcItemsFetched), string] WCHAR **Names, [out] DWORD *pcItemsFetched);
- HRESULT Skip(DWORD cItemsToSkip);
- HRESULT Reset(void);
- HRESULT Clone([out] IEnumDMO **ppEnum);
-}
+ [local]
+ HRESULT Next(
+ [in] DWORD cItemsToFetch,
+ [out] CLSID *pCLSID,
+ [out] WCHAR **Names,
+ [out] DWORD *pcItemsFetched
+ );
-[
-object,
-uuid(651b9ad0-0fc7-4aa9-9538-d89931010741)
-]
-interface IMediaObjectInPlace : IUnknown
-{
- HRESULT Process([in] ULONG ulSize, [in,out,size_is(ulSize)] BYTE* pData, [in]
REFERENCE_TIME refTimeStart, [in] DWORD dwFlags);
- HRESULT Clone([out] IMediaObjectInPlace **ppMediaObject);
- HRESULT GetLatency([out] REFERENCE_TIME *pLatencyTime);
-}
+ HRESULT Skip(
+ [in] DWORD cItemsToSkip
+ );
-[
-object,
-uuid(65abea96-cf36-453f-af8a-705e98f16260)
-]
-interface IDMOQualityControl : IUnknown
-{
- HRESULT SetNow([in] REFERENCE_TIME rtNow);
- HRESULT SetStatus([in] DWORD dwFlags);
- HRESULT GetStatus([out] DWORD *pdwFlags);
-}
+ HRESULT Reset();
-[
-object,
-uuid(be8f4f4e-5b16-4d29-b350-7f6b5d9298ac)
-]
-interface IDMOVideoOutputOptimizations : IUnknown
-{
- HRESULT QueryOperationModePreferences (ULONG ulOutputStreamIndex, DWORD
*pdwRequestedCapabilities);
- HRESULT SetOperationMode (ULONG ulOutputStreamIndex, DWORD dwEnabledFeatures);
- HRESULT GetCurrentOperationMode (ULONG ulOutputStreamIndex, DWORD
*pdwEnabledFeatures);
- HRESULT GetCurrentSampleRequirements (ULONG ulOutputStreamIndex, DWORD
*pdwRequestedFeatures
+ HRESULT Clone(
+ [out] IEnumDMO **ppEnum
);
}
-
Modified: trunk/reactos/include/dxsdk/medparam.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/medparam.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/medparam.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/medparam.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -48,7 +48,6 @@
WCHAR szLabel[32];
} MP_PARAMINFO;
-typedef DWORD DWORD;
const DWORD DWORD_ALLPARAMS = -1;
typedef DWORD MP_TIMEDATA;
Modified: trunk/reactos/include/dxsdk/mmstream.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/mmstream.idl…
==============================================================================
--- trunk/reactos/include/dxsdk/mmstream.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/mmstream.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,35 +1,45 @@
-
+/*
+ * Copyright 2004 Christian Costa
+ *
+ * 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 "unknwn.idl";
-cpp_quote("DEFINE_GUID(MSPID_PrimaryVideo, 0xA35FF56A, 0x9FDA, 0x11D0, 0x8F, 0xDF,
0x00, 0xC0, 0x4F, 0xD9, 0x18, 0x9D);")
-cpp_quote("DEFINE_GUID(MSPID_PrimaryAudio, 0xA35FF56B, 0x9FDA, 0x11D0, 0x8F, 0xDF,
0x00, 0xC0, 0x4F, 0xD9, 0x18, 0x9D);")
+cpp_quote("#define MS_ERROR_CODE(x) MAKE_HRESULT(1, FACILITY_ITF,
(x) + 0x400)")
+cpp_quote("#define MS_SUCCESS_CODE(x) MAKE_HRESULT(0, FACILITY_ITF,
x)")
+cpp_quote("#define MS_S_PENDING MS_SUCCESS_CODE(1)")
+cpp_quote("#define MS_S_NOUPDATE MS_SUCCESS_CODE(2)")
+cpp_quote("#define MS_S_ENDOFSTREAM MS_SUCCESS_CODE(3)")
-cpp_quote("#define MS_ERROR_CODE(x) MAKE_HRESULT(1, FACILITY_ITF,
(x) + 0x400)")
-cpp_quote("#define MS_SUCCESS_CODE(x) MAKE_HRESULT(0, FACILITY_ITF,
x)")
-cpp_quote("#define MS_S_PENDING MS_SUCCESS_CODE(1)")
-cpp_quote("#define MS_S_NOUPDATE MS_SUCCESS_CODE(2)")
-cpp_quote("#define MS_S_ENDOFSTREAM MS_SUCCESS_CODE(3)")
-cpp_quote("#define MS_E_SAMPLEALLOC MS_ERROR_CODE(1)")
-cpp_quote("#define MS_E_PURPOSEID MS_ERROR_CODE(2)")
-cpp_quote("#define MS_E_NOSTREAM MS_ERROR_CODE(3)")
-cpp_quote("#define MS_E_NOSEEKING MS_ERROR_CODE(4)")
-cpp_quote("#define MS_E_INCOMPATIBLE MS_ERROR_CODE(5)")
-cpp_quote("#define MS_E_BUSY MS_ERROR_CODE(6)")
-cpp_quote("#define MS_E_NOTINIT MS_ERROR_CODE(7)")
-cpp_quote("#define MS_E_SOURCEALREADYDEFINED MS_ERROR_CODE(8)")
-cpp_quote("#define MS_E_INVALIDSTREAMTYPE MS_ERROR_CODE(9)")
-cpp_quote("#define MS_E_NOTRUNNING MS_ERROR_CODE(10)")
+cpp_quote("#define MS_E_SAMPLEALLOC MS_ERROR_CODE(1)")
+cpp_quote("#define MS_E_PURPOSEID MS_ERROR_CODE(2)")
+cpp_quote("#define MS_E_NOSTREAM MS_ERROR_CODE(3)")
+cpp_quote("#define MS_E_NOSEEKING MS_ERROR_CODE(4)")
+cpp_quote("#define MS_E_INCOMPATIBLE MS_ERROR_CODE(5)")
+cpp_quote("#define MS_E_BUSY MS_ERROR_CODE(6)")
+cpp_quote("#define MS_E_NOTINIT MS_ERROR_CODE(7)")
+cpp_quote("#define MS_E_SOURCEALREADYDEFINED MS_ERROR_CODE(8)")
+cpp_quote("#define MS_E_INVALIDSTREAMTYPE MS_ERROR_CODE(9)")
+cpp_quote("#define MS_E_NOTRUNNING MS_ERROR_CODE(10)")
+cpp_quote("DEFINE_GUID(MSPID_PrimaryVideo, 0xa35ff56a, 0x9fda, 0x11d0, 0x8f, 0xdf,
0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
+cpp_quote("DEFINE_GUID(MSPID_PrimaryAudio, 0xa35ff56b, 0x9fda, 0x11d0, 0x8f, 0xdf,
0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
-
-// FIXME HACK remove the // for two cpp_quote
-cpp_quote("#if 0");
- typedef LPVOID PAPCFUNC;
-cpp_quote("#endif");
-
-cpp_quote("#if(_WIN32_WINNT < 0x0400)")
-cpp_quote("typedef void (__stdcall * PAPCFUNC)(DWORD_PTR dwParam);")
+cpp_quote("#if 0")
+typedef void* PAPCFUNC;
cpp_quote("#endif")
typedef LONGLONG STREAM_TIME;
@@ -37,43 +47,39 @@
typedef GUID MSPID;
typedef REFGUID REFMSPID;
-enum
-{
- MMSSF_HASCLOCK = 0x00000001,
- MMSSF_SUPPORTSEEK = 0x00000002,
- MMSSF_ASYNCHRONOUS = 0x00000004
+typedef enum {
+ STREAMTYPE_READ = 0,
+ STREAMTYPE_WRITE = 1,
+ STREAMTYPE_TRANSFORM = 2
+} STREAM_TYPE;
+
+typedef enum {
+ STREAMSTATE_STOP = 0,
+ STREAMSTATE_RUN = 1
+} STREAM_STATE;
+
+
+typedef enum {
+ COMPSTAT_NOUPDATEOK = 0x00000001,
+ COMPSTAT_WAIT = 0x00000002,
+ COMPSTAT_ABORT = 0x00000004
+} COMPLETION_STATUS_FLAGS;
+
+enum {
+ MMSSF_HASCLOCK = 0x00000001,
+ MMSSF_SUPPORTSEEK = 0x00000002,
+ MMSSF_ASYNCHRONOUS = 0x00000004
};
-typedef enum
-{
- STREAMTYPE_READ = 0,
- STREAMTYPE_WRITE = 1,
- STREAMTYPE_TRANSFORM= 2
-} STREAM_TYPE;
-
-enum
-{
- SSUPDATE_ASYNC = 0x00000001,
- SSUPDATE_CONTINUOUS = 0x00000002
+enum {
+ SSUPDATE_ASYNC = 0x00000001,
+ SSUPDATE_CONTINUOUS = 0x00000002
};
-
-typedef enum
-{
- COMPSTAT_NOUPDATEOK = 0x00000001,
- COMPSTAT_WAIT = 0x00000002,
- COMPSTAT_ABORT = 0x00000004
-} COMPLETION_STATUS_FLAGS;
-
-
-typedef enum
-{
- STREAMSTATE_STOP = 0,
- STREAMSTATE_RUN = 1
-} STREAM_STATE;
interface IMultiMediaStream;
interface IMediaStream;
interface IStreamSample;
+
[
object,
@@ -81,18 +87,38 @@
uuid(B502D1BC-9A57-11d0-8FDE-00C04FD9189D),
pointer_default(unique)
]
-interface IMultiMediaStream : IUnknown
-{
- HRESULT GetInformation([out] DWORD *pdwFlags, [out] STREAM_TYPE *pStreamType);
- HRESULT GetMediaStream([in] REFMSPID idPurpose, [out] IMediaStream **ppMediaStream);
- HRESULT EnumMediaStreams([in] long Index, [out] IMediaStream **ppMediaStream);
- HRESULT GetState([out] STREAM_STATE *pCurrentState);
- HRESULT SetState([in] STREAM_STATE NewState);
- HRESULT GetTime([out] STREAM_TIME *pCurrentTime);
- HRESULT GetDuration([out] STREAM_TIME *pDuration);
- HRESULT Seek([in] STREAM_TIME SeekTime);
- HRESULT GetEndOfStreamEventHandle([out] HANDLE *phEOS);
-};
+interface IMultiMediaStream : IUnknown {
+
+ HRESULT GetInformation(
+ [out, optional] DWORD *pdwFlags,
+ [out, optional] STREAM_TYPE *pStreamType);
+
+ HRESULT GetMediaStream(
+ [in] REFMSPID idPurpose,
+ [out] IMediaStream **ppMediaStream);
+
+ HRESULT EnumMediaStreams(
+ [in] long Index,
+ [out] IMediaStream **ppMediaStream);
+
+ HRESULT GetState(
+ [out] STREAM_STATE *pCurrentState);
+
+ HRESULT SetState(
+ [in] STREAM_STATE NewState);
+
+ HRESULT GetTime(
+ [out] STREAM_TIME *pCurrentTime);
+
+ HRESULT GetDuration(
+ [out] STREAM_TIME *pDuration);
+
+ HRESULT Seek(
+ [in] STREAM_TIME SeekTime);
+
+ HRESULT GetEndOfStreamEventHandle(
+ [out] HANDLE *phEOS);
+}
[
@@ -100,15 +126,31 @@
uuid(B502D1BD-9A57-11d0-8FDE-00C04FD9189D),
pointer_default(unique)
]
-interface IMediaStream : IUnknown
-{
- HRESULT GetMultiMediaStream([out] IMultiMediaStream **ppMultiMediaStream);
- HRESULT GetInformation([out] MSPID *pPurposeId, [out] STREAM_TYPE *pType);
- HRESULT SetSameFormat([in] IMediaStream *pStreamThatHasDesiredFormat, [in] DWORD
dwFlags);
- HRESULT AllocateSample([in] DWORD dwFlags, [out] IStreamSample **ppSample);
- HRESULT CreateSharedSample([in] IStreamSample *pExistingSample, [in] DWORD dwFlags,
[out] IStreamSample **ppNewSample);
- HRESULT SendEndOfStream(DWORD dwFlags);
-};
+interface IMediaStream : IUnknown {
+
+ HRESULT GetMultiMediaStream(
+ [out] IMultiMediaStream **ppMultiMediaStream);
+
+ HRESULT GetInformation(
+ [out, optional] MSPID *pPurposeId,
+ [out, optional] STREAM_TYPE *pType);
+
+ HRESULT SetSameFormat(
+ [in] IMediaStream *pStreamThatHasDesiredFormat,
+ [in] DWORD dwFlags);
+
+ HRESULT AllocateSample(
+ [in] DWORD dwFlags,
+ [out] IStreamSample **ppSample);
+
+ HRESULT CreateSharedSample(
+ [in] IStreamSample *pExistingSample,
+ [in] DWORD dwFlags,
+ [out] IStreamSample **ppNewSample);
+
+ HRESULT SendEndOfStream(DWORD dwFlags);
+}
+
[
object,
@@ -116,13 +158,27 @@
uuid(B502D1BE-9A57-11d0-8FDE-00C04FD9189D),
pointer_default(unique)
]
+interface IStreamSample : IUnknown {
+
+ HRESULT GetMediaStream(
+ [in] IMediaStream **ppMediaStream);
-interface IStreamSample : IUnknown
-{
- HRESULT GetMediaStream([in] IMediaStream **ppMediaStream);
- HRESULT GetSampleTimes([out] STREAM_TIME * pStartTime, [out] STREAM_TIME * pEndTime,
[out] STREAM_TIME * pCurrentTime);
- HRESULT SetSampleTimes([in] const STREAM_TIME *pStartTime, [in] const STREAM_TIME
*pEndTime);
- HRESULT Update([in] DWORD dwFlags, [in] HANDLE hEvent, [in] PAPCFUNC pfnAPC, [in]
DWORD_PTR dwAPCData);
- HRESULT CompletionStatus( [in] DWORD dwFlags, [in] DWORD dwMilliseconds);
-};
+ HRESULT GetSampleTimes(
+ [out, optional] STREAM_TIME * pStartTime,
+ [out, optional] STREAM_TIME * pEndTime,
+ [out, optional] STREAM_TIME * pCurrentTime);
+ HRESULT SetSampleTimes(
+ [in, optional] const STREAM_TIME *pStartTime,
+ [in, optional] const STREAM_TIME *pEndTime);
+
+ HRESULT Update(
+ [in] DWORD dwFlags,
+ [in, optional] HANDLE hEvent,
+ [in, optional] PAPCFUNC pfnAPC,
+ [in, optional] DWORD dwAPCData);
+
+ HRESULT CompletionStatus(
+ [in] DWORD dwFlags,
+ [in, optional] DWORD dwMilliseconds);
+}
Modified: trunk/reactos/include/dxsdk/strmif.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/strmif.idl?r…
==============================================================================
--- trunk/reactos/include/dxsdk/strmif.idl [iso-8859-1] (original)
+++ trunk/reactos/include/dxsdk/strmif.idl [iso-8859-1] Wed Sep 10 02:41:27 2008
@@ -1,9 +1,30 @@
+/*
+ * Copyright (C) 2002 Robert Shearman
+ *
+ * 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 "unknwn.idl";
import "objidl.idl";
+
#include <devenum.idl>
+
#include <axcore.idl>
+
#include <axextend.idl>
-#include <dvdif.idl>
+
#include <dyngraph.idl>
-#include "Vmrender.idl"
+
+/* TODO: #include <dvdif.h> */
+#include <vmrender.idl>