12 const GUID IID_IKsObject = {0x423c13a2, 0x2070, 0x11d0, {0x9e, 0xf7, 0x00, 0xaa, 0x00, 0xa2, 0x16, 0xa1}};
15 const GUID CLSID_DVBTNetworkProvider = {0x216c62df, 0x6d7f, 0x4e9a, {0x85, 0x71, 0x5, 0xf1, 0x4e, 0xdb, 0x76, 0x6a}};
17 const GUID KSPROPSETID_BdaTopology = {0xa14ee835, 0x0a23, 0x11d3, {0x9c, 0xc7, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0}};
18 const GUID KSMETHODSETID_BdaDeviceConfiguration = {0x71985f45, 0x1ca1, 0x11d3, {0x9c, 0xc8, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0}};
19 const GUID KSMETHODSETID_BdaChangeSync = {0xfd0a5af3, 0xb41d, 0x11d2, {0x9c, 0x95, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0}};
20 const GUID IID_IBaseFilter = {0x56a86895, 0x0ad4, 0x11ce, {0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70}};
21 const GUID IID_IAsyncReader = {0x56A868AA, 0x0AD4, 0x11CE, {0xB0, 0x3A, 0x00, 0x20, 0xAF, 0x0B, 0xA7, 0x70}};
22 const GUID IID_IAMOpenProgress = {0x8E1C39A1, 0xDE53, 0x11cf, {0xAA, 0x63, 0x00, 0x80, 0xC7, 0x44, 0x52, 0x8D}};
23 const GUID IID_IBDA_Topology = {0x79B56888, 0x7FEA, 0x4690, {0xB4, 0x5D, 0x38, 0xFD, 0x3C, 0x78, 0x49, 0xBE}};
24 const GUID IID_IBDA_NetworkProvider = {0xfd501041, 0x8ebe, 0x11ce, {0x81, 0x83, 0x00, 0xaa, 0x00, 0x57, 0x7d, 0xa2}};
25 const GUID IID_IBDA_DeviceControl = {0xFD0A5AF3, 0xB41D, 0x11d2, {0x9C, 0x95, 0x00, 0xC0, 0x4F, 0x79, 0x71, 0xE0}};
27 const GUID IID_IDistributorNotify = {0x56a868af, 0x0ad4, 0x11ce, {0xb0, 0x3a, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70}};
93 reinterpret_cast<IUnknown*>(*Output)->AddRef();
99 reinterpret_cast<IBDA_DeviceControl*>(*Output)->AddRef();
106 reinterpret_cast<IBDA_Topology*>(*Output)->AddRef();
133 #ifdef BDAPLGIN_TRACE 159 #ifdef BDAPLGIN_TRACE 185 #ifdef BDAPLGIN_TRACE 230 #ifdef BDAPLGIN_TRACE 267 #ifdef BDAPLGIN_TRACE 282 swprintf(
Buffer,
L"CBDADeviceControl::GetPinTypes: Index %lu Value %lx\nFunction %s\n Name %s\n-----\n",
Index, rgNodeDescriptors[
Index].ulBdaNodeType, pGUIDFunction, pGUIDName);
313 #ifdef BDAPLGIN_TRACE 353 #ifdef BDAPLGIN_TRACE 375 #ifdef BDAPLGIN_TRACE 386 #ifdef BDAPLGIN_TRACE 397 #ifdef BDAPLGIN_TRACE 408 #ifdef BDAPLGIN_TRACE 419 #ifdef BDAPLGIN_TRACE 442 #ifdef BDAPLGIN_TRACE 464 Property.ulInputPinId = ulInputPinId;
465 Property.ulOutputPinId = ulOutputPinId;
474 #ifdef BDAPLGIN_TRACE 476 swprintf(
Buffer,
L"CBDADeviceControl::GetControlNode: hr %lx, BytesReturned %lu PinId %lu ulInputPinId %lu ulOutputPinId %lu ulNodeType %lu\n",
hr,
BytesReturned, PinId, ulInputPinId, ulOutputPinId, ulNodeType);
485 #ifdef BDAPLGIN_TRACE 505 #ifdef BDAPLGIN_TRACE
const GUID IID_IBaseFilter
#define IOCTL_KS_PROPERTY
STDMETHODIMP_(ULONG) AddRef()
virtual ULONG Release(__in_opt PVOID Tag=NULL, __in LONG Line=0, __in_opt PSTR File=NULL)
HRESULT STDMETHODCALLTYPE StartChanges(void)
CBDADeviceControl(IUnknown *pUnkOuter, IBaseFilter *pFilter, HANDLE hFile)
const GUID CLSID_DVBTNetworkProvider
HRESULT STDMETHODCALLTYPE SetMediaType(ULONG ulPinId, AM_MEDIA_TYPE *pMediaType)
#define INVALID_HANDLE_VALUE
KSDDKAPI HRESULT WINAPI KsSynchronousDeviceControl(HANDLE Handle, ULONG IoControl, PVOID InBuffer, ULONG InLength, PVOID OutBuffer, ULONG OutLength, PULONG BytesReturned)
const GUID KSMETHODSETID_BdaDeviceConfiguration
HRESULT STDMETHODCALLTYPE GetControlNode(ULONG ulInputPinId, ULONG ulOutputPinId, ULONG ulNodeType, IUnknown **ppControlNode)
#define KSPROPERTY_TYPE_GET
HRESULT STDMETHODCALLTYPE CheckChanges(void)
struct _BDANODE_DESCRIPTOR BDANODE_DESCRIPTOR
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesReturned
HRESULT STDMETHODCALLTYPE GetNodeDescriptors(ULONG *ulcNodeDescriptors, ULONG ulcNodeDescriptorsMax, BDANODE_DESCRIPTOR *rgNodeDescriptors)
void WINAPI SHIM_OBJ_NAME() OutputDebugStringW(LPCWSTR lpOutputString)
HRESULT STDMETHODCALLTYPE CommitChanges(void)
_Must_inspect_result_ _In_ ULONG ulPinType
STDMETHODIMP QueryInterface(REFIID InterfaceId, PVOID *Interface)
#define KSMETHOD_TYPE_NONE
_Must_inspect_result_ _In_ ULONG _Out_opt_ ULONG * pulPinId
const GUID KSMETHODSETID_BdaChangeSync
HRESULT STDMETHODCALLTYPE DeletePin(ULONG ulPinId)
_In_ WDFCOLLECTION _In_ ULONG Index
HRESULT STDMETHODCALLTYPE GetChangeState(ULONG *pState)
#define STDMETHODCALLTYPE
HRESULT STDMETHODCALLTYPE CreateTopology(ULONG ulInputPinId, ULONG ulOutputPinId)
HRESULT STDMETHODCALLTYPE GetNodeTypes(ULONG *pulcNodeTypes, ULONG ulcNodeTypesMax, ULONG *rgulNodeTypes)
#define InterlockedDecrement
int _cdecl swprintf(const WCHAR *,...)
HRESULT STDMETHODCALLTYPE SetMedium(ULONG ulPinId, REGPINMEDIUM *pMedium)
const GUID IID_IBDA_DeviceControl
#define InterlockedIncrement
HRESULT STDMETHODCALLTYPE GetPinTypes(ULONG *pulcPinTypes, ULONG ulcPinTypesMax, ULONG *rgulPinTypes)
IN PVOID IN PVOID IN USHORT IN USHORT IN PINTERFACE Interface
const GUID IID_IAsyncReader
STDMETHODIMP_(ULONG) Release()
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
const GUID IID_IDistributorNotify
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
virtual ~CBDADeviceControl()
const GUID KSPROPSETID_BdaTopology
const GUID IID_IBDA_NetworkProvider
const GUID IID_IAMOpenProgress
HRESULT STDMETHODCALLTYPE GetNodeInterfaces(ULONG ulNodeType, ULONG *pulcInterfaces, ULONG ulcInterfacesMax, GUID *rgguidInterfaces)
HRESULT STDMETHODCALLTYPE GetTemplateConnections(ULONG *pulcConnections, ULONG ulcConnectionsMax, BDA_TEMPLATE_CONNECTION *rgConnections)
UINT(* handler)(MSIPACKAGE *)
HRESULT WINAPI CBDADeviceControl_fnConstructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv)
Property(long _type, long _tag, INREAL _value)
HRESULT WINAPI CControlNode_fnConstructor(IBaseFilter *pFilter, ULONG NodeType, ULONG PinId, REFIID riid, LPVOID *ppv)
const GUID IID_IBDA_Topology
HRESULT WINAPI StringFromCLSID(REFCLSID id, LPOLESTR *idstr)
HRESULT STDMETHODCALLTYPE CreatePin(ULONG ulPinType, ULONG *pulPinId)