summaryrefslogtreecommitdiffstats
path: root/dxsdk/Include/DShowIDL/dyngraph.idl
diff options
context:
space:
mode:
Diffstat (limited to 'dxsdk/Include/DShowIDL/dyngraph.idl')
-rw-r--r--dxsdk/Include/DShowIDL/dyngraph.idl318
1 files changed, 0 insertions, 318 deletions
diff --git a/dxsdk/Include/DShowIDL/dyngraph.idl b/dxsdk/Include/DShowIDL/dyngraph.idl
deleted file mode 100644
index 569def6e..00000000
--- a/dxsdk/Include/DShowIDL/dyngraph.idl
+++ /dev/null
@@ -1,318 +0,0 @@
-//------------------------------------------------------------------------------
-// File: DynGraph.idl
-//
-// Desc: Dynamic graph interfaces
-//
-// Copyright (c) 1999-2002, Microsoft Corporation. All rights reserved.
-//------------------------------------------------------------------------------
-
-
-interface IPinConnection;
-interface IPinFlowControl;
-interface IGraphConfig;
-interface IGraphConfigCallback;
-
-//--------------------------------------------------------------------
-//
-// IPinConnection - supported by input pins
-//
-//--------------------------------------------------------------------
-[
- local,
- object,
- uuid(4a9a62d3-27d4-403d-91e9-89f540e55534),
- pointer_default(unique)
-]
-interface IPinConnection : IUnknown {
-
- // Do you accept this type chane in your current state?
- HRESULT DynamicQueryAccept([in] const AM_MEDIA_TYPE *pmt);
-
- // Set event when EndOfStream receive - do NOT pass it on
- // This condition is cancelled by a flush or Stop
- HRESULT NotifyEndOfStream([in] HANDLE hNotifyEvent);
-
- // Are you an 'end pin'
- HRESULT IsEndPin();
-
- HRESULT DynamicDisconnect();
-};
-
-//--------------------------------------------------------------------
-//
-// IPinFlowControl - supported by output pins
-//
-//--------------------------------------------------------------------
-[
- local,
- object,
- uuid(c56e9858-dbf3-4f6b-8119-384af2060deb),
- pointer_default(unique)
-]
-interface IPinFlowControl : IUnknown {
- // Block processing on this pin
- HRESULT Block([in] DWORD dwBlockFlags, [in] HANDLE hEvent);
-}
-
-// block flags
-enum _AM_PIN_FLOW_CONTROL_BLOCK_FLAGS {
- AM_PIN_FLOW_CONTROL_BLOCK = 0x00000001, // 0 means unblock
-};
-
-
-// Reconnect flags
-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;
-
-// RemoveFilterEx flags
-enum _REM_FILTER_FLAGS {
- REMFILTERF_LEAVECONNECTED = 0x00000001
-};
-
-typedef enum _AM_FILTER_FLAGS {
- AM_FILTER_FLAGS_REMOVABLE = 0x00000001
- } AM_FILTER_FLAGS;
-
-
-//--------------------------------------------------------------------
-//
-// IGraphConfig
-//
-//--------------------------------------------------------------------
-
-[
- 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, // can be NULL
- [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);
-
- // Get the start time associated with the last Run() call
- // If the graph is not running returns VFW_E_WRONG_STATE
- 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 );
-}
-
-//--------------------------------------------------------------------
-//
-// IGraphConfigCallback
-//
-//--------------------------------------------------------------------
-
-[
- local,
- object,
- uuid(ade0fd60-d19d-11d2-abf6-00a0c905f375),
- pointer_default(unique)
-]
-interface IGraphConfigCallback : IUnknown
-{
- HRESULT Reconfigure(PVOID pvContext, DWORD dwFlags);
-}
-
-// Filter Chain Definition
-//
-// Filter chains have the following properties:
-//
-// - Each filter chain has one or more filters.
-//
-// - Each filter in a filter chain has at most one connected input pin and one
-// connected output pin. For example, filters A, C, D, F, G, H, I, J and K
-// (see the diagram below) can be in a filter chain because each one has at
-// most one connected input pin and one connected output pin.
-//
-// - Any filter in a chain is reachable by any other filter in the chain.
-// For example, in the filter chain F-G-H, F can reach H by following the F-
-// G connection to G and then following the G-H connection to H. Filters F
-// and J cannot be in the same filter chain because J is not reachable from
-// F. Anotherwords, there no sequence of connected filters between F and J.
-//
-// - The start filter is the only filter in the filter chain who's input
-// pin is not connected to another filter in the chain. For instance, F is
-// the start filter in F-G-H because F's input pin is connected to E and E
-// is not in the filter chain. G's input pin is connected to F and H's is
-// connected to G. Both F and G are in the filter chain.
-//
-// - The end filter is the only filter in the filter chain who's output pin
-// is not connected to another filter in the chain. For example, in the
-// filter chain J-K, K is the end filter because K's output pin is
-// connected to L. J's output pin is connected to K and K is in the J-K
-// filter chain.
-//
-//
-// --->|---| |---|--->
-// | C |--->| D |
-// |---| |---|--->|---| |---|--->|---| |---| |---| |---|
-// | A |--->| B | | E |--->| F |--->| G |--->| H |
-// |---| |---|--->|---|------------>|---| |---| |---| |---|
-// | I |--->
-// --->|---|--->
-//
-// |---| |---| |---|
-// | J |--->| K |--->| L |
-// |---| |---| |---|
-//
-// Example Filter Graph
-//
-//
-//
-// IFilterChain Methods Documentation
-//
-// HRESULT StartChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
-//
-// StartChain() switches all the filters in the chain into the running state
-// If one of the filters will not switch to the running state, then all the filters
-// in the chain are stopped. This method can only be called if the filter graph is
-// running.
-//
-// Parameters:
-// - pStartFilter [in]
-// The first filter in the filter chain. Note that this can be the same
-// filter as pEndFilter .
-//
-// - pEndFilter [in]
-// The last filter in the filter chain. Note that this can be the same
-// filter as pStartFilter. If pEndFilter is NULL then the filter chain extends
-// from pStartFilter to the last downstream filter which can be in a filter chain.
-// For example, IFilterChain::StartChain( A, NULL ) would start filter A.
-// IFilterChain::StartChain( G, NULL ) would start filters G and H.
-// IFilterChain::StartChain( C, NULL ) would start filters C and D. Finally,
-// IFilterChain::StartChain( E, NULL ) would fail because E cannot be in a
-// filter chain (see the Filter Chain Definition section for more information).
-//
-// Return Value:
-// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
-// information on interpreting HRESULTs.
-//
-//
-//
-//
-// HRESULT PauseChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
-//
-// PauseChain() switches all the filters in a chain to the paused state. If it cannot
-// switch one of the filtres into the paused state, all the filters in the chain are
-// stopped. This method can only be called if the filter graph is paused.
-//
-// Parameters:
-// - pStartFilter [in]
-// The first filter in the filter chain. Note that this can be the same
-// filter as pEndFilter .
-//
-// - pEndFilter [in]
-// The last filter in the filter chain. Note that this can be the same
-// filter as pStartFilter. If pEndFilter is NULL then the filter chain extends
-// from pStartFilter to the last downstream filter which can be in a filter chain.
-// For example, IFilterChain::StopChain( A, NULL ) would stop filter A.
-// IFilterChain::StopChain( G, NULL ) would stop filters G and H.
-// IFilterChain::StopChain( C, NULL ) would stop filters C and D. Finally,
-// IFilterChain::StopChain( E, NULL ) would fail because E cannot be in a filter
-// chain (see the Filter Chain Definition section for more information).
-//
-//
-// Return Value:
-// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
-// information on interpreting HRESULTs.
-//
-//
-//
-// HRESULT StopChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
-//
-// StopChain() switches all the filters in chain to the stopped state.
-//
-// Parameters:
-// - pStartFilter [in]
-// The first filter in the filter chain. Note that this can be the same
-// filter as pEndFilter .
-//
-// - pEndFilter [in]
-// The last filter in the filter chain. Note that this can be the same
-// filter as pStartFilter. If pEndFilter is NULL then the filter chain extends
-// from pStartFilter to the last downstream filter which can be in a filter chain.
-// For example, IFilterChain::StopChain( A, NULL ) would stop filter A.
-// IFilterChain::StopChain( G, NULL ) would stop filters G and H.
-// IFilterChain::StopChain( C, NULL ) would stop filters C and D. Finally,
-// IFilterChain::StopChain( E, NULL ) would fail because E cannot be in a filter
-// chain (see the Filter Chain Definition section for more information).
-//
-//
-// Return Value:
-// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
-// information on interpreting HRESULTs.
-//
-//
-//
-//
-//
-// HRESULT RemoveChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
-//
-// RemoveChain() removes every filter in a chain from the filter graph.
-// The filters can be removed while the graph is running.
-//
-// Parameters:
-// - pStartFilter [in]
-// The first filter in the filter chain. Note that this can be the same
-// filter as pEndFilter .
-//
-// - pEndFilter [in]
-// The last filter in the filter chain. Note that this can be the same
-// filter as pStartFilter. If pEndFilter is NULL then the filter chain
-// extends from pStartFilter to the last downstream filter which can be in a
-// filter chain. For example, IFilterChain::RemoveChain( A, NULL ) would remove
-// filter A from the filter graph. IFilterChain::RemoveChain( G, NULL ) would
-// remove filters G and H. IFilterChain::RemoveChain( C, NULL ) would remove
-// filters C and D. Finally, IFilterChain::RemoveChain( E, NULL ) would fail
-// because E cannot be in a filter chain (see the Filter Chain Definition
-// section for more information).
-//
-//
-// Return Value:
-// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
-// information on interpreting HRESULTs.
-//
-//
-[
- 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 );
-}
-
-
-
-