reactos/sdk/include/dxsdk/vidcap.idl

60 lines
1.6 KiB
Text

import "unknwn.idl";
import "strmif.idl";
cpp_quote("#include \"ks.h\"")
cpp_quote("#ifndef _KS_")
typedef struct {
ULONG FromNode;
ULONG FromNodePin;
ULONG ToNode;
ULONG ToNodePin;
} KSTOPOLOGY_CONNECTION, *PKSTOPOLOGY_CONNECTION;
cpp_quote("#endif")
[
object,
local,
uuid(720D4AC0-7533-11D0-A5D6-28DB04C10000),
pointer_default(unique)
]
interface IKsTopologyInfo : IUnknown
{
HRESULT get_NumCategories([out] DWORD *pdwNumCategories);
HRESULT get_Category([in] DWORD dwIndex, [out] GUID *pCategory);
HRESULT get_NumConnections([out] DWORD *pdwNumConnections);
HRESULT get_ConnectionInfo([in] DWORD dwIndex, [out] KSTOPOLOGY_CONNECTION *pConnectionInfo);
HRESULT get_NodeName([in] DWORD dwNodeId, [out] WCHAR *pwchNodeName, [in] DWORD dwBufSize, [out] DWORD *pdwNameLen);
HRESULT get_NumNodes([out] DWORD *pdwNumNodes);
HRESULT get_NodeType([in] DWORD dwNodeId, [out] GUID *pNodeType);
HRESULT CreateNodeInstance([in] DWORD dwNodeId, [in] REFIID iid, [out] void **ppvObject);
}
[
object,
local,
uuid(11737C14-24A7-4bb5-81A0-0D003813B0C4),
pointer_default(unique)
]
interface IKsNodeControl :IUnknown
{
HRESULT put_NodeId([in] DWORD dwNodeId);
HRESULT put_KsControl([in] PVOID pKsControl);
}
[
object,
local,
uuid(1ABDAECA-68B6-4F83-9371-B413907C7B9F),
pointer_default(unique)
]
interface ISelector : IUnknown
{
HRESULT get_NumSources([out] DWORD *pdwNumSources);
HRESULT get_SourceNodeId([out] DWORD *pdwPinId);
HRESULT put_SourceNodeId([in] DWORD dwPinId);
}