Commit 7c8b85a2 authored by Robert Shearman's avatar Robert Shearman Committed by Alexandre Julliard

- Added DShow headers.

- Added needed const's in FilterGraph implementation.
parent de086614
...@@ -505,7 +505,7 @@ static HRESULT WINAPI Mediaseeking_CheckCapabilities(IMediaSeeking *iface, ...@@ -505,7 +505,7 @@ static HRESULT WINAPI Mediaseeking_CheckCapabilities(IMediaSeeking *iface,
} }
static HRESULT WINAPI Mediaseeking_IsFormatSupported(IMediaSeeking *iface, static HRESULT WINAPI Mediaseeking_IsFormatSupported(IMediaSeeking *iface,
GUID *pFormat) { const GUID *pFormat) {
ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface); ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface);
TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pFormat); TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pFormat);
...@@ -532,7 +532,7 @@ static HRESULT WINAPI Mediaseeking_GetTimeFormat(IMediaSeeking *iface, ...@@ -532,7 +532,7 @@ static HRESULT WINAPI Mediaseeking_GetTimeFormat(IMediaSeeking *iface,
} }
static HRESULT WINAPI Mediaseeking_IsUsingTimeFormat(IMediaSeeking *iface, static HRESULT WINAPI Mediaseeking_IsUsingTimeFormat(IMediaSeeking *iface,
GUID *pFormat) { const GUID *pFormat) {
ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface); ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface);
TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pFormat); TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pFormat);
...@@ -541,7 +541,7 @@ static HRESULT WINAPI Mediaseeking_IsUsingTimeFormat(IMediaSeeking *iface, ...@@ -541,7 +541,7 @@ static HRESULT WINAPI Mediaseeking_IsUsingTimeFormat(IMediaSeeking *iface,
} }
static HRESULT WINAPI Mediaseeking_SetTimeFormat(IMediaSeeking *iface, static HRESULT WINAPI Mediaseeking_SetTimeFormat(IMediaSeeking *iface,
GUID *pFormat) { const GUID *pFormat) {
ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface); ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface);
TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pFormat); TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pFormat);
...@@ -578,9 +578,9 @@ static HRESULT WINAPI Mediaseeking_GetCurrentPosition(IMediaSeeking *iface, ...@@ -578,9 +578,9 @@ static HRESULT WINAPI Mediaseeking_GetCurrentPosition(IMediaSeeking *iface,
static HRESULT WINAPI Mediaseeking_ConvertTimeFormat(IMediaSeeking *iface, static HRESULT WINAPI Mediaseeking_ConvertTimeFormat(IMediaSeeking *iface,
LONGLONG *pTarget, LONGLONG *pTarget,
GUID *pTargetFormat, const GUID *pTargetFormat,
LONGLONG Source, LONGLONG Source,
GUID *pSourceFormat) { const GUID *pSourceFormat) {
ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface); ICOM_THIS_MULTI(IFilterGraphImpl, IMediaSeeking_vtbl, iface);
TRACE("(%p/%p)->(%p, %p, %lld, %p): stub !!!\n", This, iface, pTarget, pTargetFormat, Source, pSourceFormat); TRACE("(%p/%p)->(%p, %p, %lld, %p): stub !!!\n", This, iface, pTarget, pTargetFormat, Source, pSourceFormat);
......
...@@ -7,9 +7,16 @@ MODULE = none ...@@ -7,9 +7,16 @@ MODULE = none
IDL_SRCS = \ IDL_SRCS = \
oaidl.idl \ oaidl.idl \
objidl.idl \ objidl.idl \
strmif.idl \
unknwn.idl \ unknwn.idl \
wtypes.idl wtypes.idl
IDL_INCLUDES = \
axcore.idl \
axextend.idl \
devenum.idl \
dyngraph.idl
WINDOWS_INCLUDES = \ WINDOWS_INCLUDES = \
accctrl.h \ accctrl.h \
audevcod.h \ audevcod.h \
...@@ -188,6 +195,7 @@ WINDOWS_INCLUDES = \ ...@@ -188,6 +195,7 @@ WINDOWS_INCLUDES = \
wshisotp.h \ wshisotp.h \
wsipx.h \ wsipx.h \
zmouse.h \ zmouse.h \
$(IDL_INCLUDES) \
$(IDL_SRCS) \ $(IDL_SRCS) \
$(IDL_SRCS:.idl=.h) $(IDL_SRCS:.idl=.h)
......
/*
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
import "guiddef.h";
import "oaidl.idl";
cpp_quote("#define CDEF_CLASS_DEFAULT 0x0001")
cpp_quote("#define CDEF_BYPASS_CLASS_MANAGER 0x0002")
cpp_quote("#define CDEF_CLASS_LEGACY 0x0004")
cpp_quote("#define CDEF_MERIT_ABOVE_DO_NOT_USE 0x0008")
[
object,
uuid(29840822-5B84-11D0-BD3B-00A0C911CE86),
pointer_default(unique)
]
interface ICreateDevEnum : IUnknown
{
HRESULT CreateClassEnumerator(
[in] REFCLSID clsidDeviceClass,
[out] IEnumMoniker ** ppEnumMoniker,
[in] DWORD dwFlags);
}
/*
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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
{
AM_GRAPH_CONFIG_RECONNECT_DIRECTCONNECT = 0x00000001,
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
{
REMFILTERF_LEAVECONNECTED = 0x00000001
};
typedef enum _AM_FILTER_FLAGS
{
AM_FILTER_FLAGS_REMOVABLE = 0x00000001
} AM_FILTER_FLAGS;
[
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,
[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 SetFilterFlags([in] IBaseFilter *pFilter, [in] DWORD dwFlags);
HRESULT GetFilterFlags([in] IBaseFilter *pFilter, [out] DWORD *pdwFlags);
HRESULT RemoveFilterEx([in] IBaseFilter *pFilter, DWORD Flags);
}
[
local,
object,
uuid(ade0fd60-d19d-11d2-abf6-00a0c905f375),
pointer_default(unique)
]
interface IGraphConfigCallback : IUnknown
{
HRESULT Reconfigure(PVOID pvContext, DWORD dwFlags);
}
[
local,
object,
uuid(DCFBDCF6-0DC2-45f5-9AB2-7C330EA09C29),
pointer_default(unique)
]
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);
}
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
import "objidl.idl";
#include "devenum.idl"
#include "axcore.idl"
#include "axextend.idl"
#include "dyngraph.idl"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment