ReactOS 0.4.15-dev-7788-g1ad9096
bdasup.h
Go to the documentation of this file.
1#pragma once
2
3#if (NTDDI_VERSION >= NTDDI_WINXP)
4
5#if defined(__cplusplus)
6extern "C" {
7#endif
8
9#define STDMETHODCALLTYPE __stdcall
10
11#ifndef _WDMDDK_
12typedef GUID *PGUID;
13#endif
14
15/* Types */
16
18
19typedef struct _BDA_PIN_PAIRING {
29
30typedef struct _BDA_FILTER_TEMPLATE {
31 const KSFILTER_DESCRIPTOR *pFilterDescriptor;
35
36typedef struct _KSM_PIN_PAIR {
42
43typedef struct _KSM_PIN {
45 __GNU_EXTENSION union {
48 };
51
52/* Functions */
53
58 _In_ PIRP Irp);
59
64 _In_ PIRP Irp);
65
70 _In_ PKSDEVICE pKSDevice,
71 _In_ const KSFILTER_DESCRIPTOR *pFilterDescriptor,
73
78 _In_ PKSDEVICE pKSDevice,
79 _In_ const KSFILTER_DESCRIPTOR *pFilterDescriptor,
81 _Out_opt_ PKSFILTERFACTORY *ppKSFilterFactory);
82
87 _In_ PKSFILTER pKSFilter,
90
95 _In_ PKSFILTER pKSFilter,
98
103 _In_ PKSFILTER pKSFilter,
105
110 _In_ PKSFILTERFACTORY pFilterFactory,
111 _In_opt_ const KSFILTER_DESCRIPTOR *pFilterDescriptor);
112
117 _In_ PIRP Irp,
119
124 _In_ PKSFILTER pKSFilter,
126
131 _In_ PIRP Irp,
134
139 _In_ PIRP Irp,
142
147 _In_ PIRP Irp,
150
155 _In_ PIRP Irp,
158
163 _In_ PIRP Irp,
166
171 _In_ PIRP Irp,
174
179 _In_ PIRP Irp,
182
187 _In_ PIRP Irp,
190
195 _In_ PIRP Irp,
198
203 _In_ PIRP Irp,
205 _Out_writes_bytes_(OutputBufferLenFromIrp(Irp)) ULONG *pulProperty);
206
211 _In_ PIRP Irp,
213 _Out_writes_bytes_(OutputBufferLenFromIrp(Irp)) ULONG *pulProperty);
214
219 _In_ PIRP Irp,
222
227 _In_ PIRP Irp);
228
233 _In_ PKSFILTER pKSFilter);
234
239 _In_ PIRP Irp,
241
242#if defined(__cplusplus)
243}
244#endif
245
246#endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
#define __GNU_EXTENSION
Definition: _mingw_mac.h:135
LONG NTSTATUS
Definition: precomp.h:26
#define STDMETHODIMP_(t)
Definition: basetyps.h:44
NTSTATUS NTAPI BdaUninitFilter(IN PKSFILTER pKSFilter)
Definition: bdasup.c:1027
NTSTATUS NTAPI BdaPropertyNodeMethods(IN PIRP Irp, IN KSP_NODE *pKSProperty, OUT GUID *pguidProperty)
Definition: bdasup.c:780
NTSTATUS NTAPI BdaPropertyNodeTypes(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT ULONG *pulProperty)
Definition: bdasup.c:810
NTSTATUS NTAPI BdaFilterFactoryUpdateCacheData(IN PKSFILTERFACTORY FilterFactory, IN const KSFILTER_DESCRIPTOR *FilterDescriptor OPTIONAL)
Definition: bdasup.c:607
NTSTATUS NTAPI BdaInitFilter(IN PKSFILTER pKSFilter, IN const BDA_FILTER_TEMPLATE *pBdaFilterTemplate)
Definition: bdasup.c:488
NTSTATUS NTAPI BdaValidateNodeProperty(IN PIRP Irp, IN KSPROPERTY *KSProperty)
Definition: bdasup.c:1038
NTSTATUS NTAPI BdaPropertyNodeDescriptors(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT BDANODE_DESCRIPTOR *pNodeDescriptorProperty)
Definition: bdasup.c:750
NTSTATUS NTAPI BdaCreateTopology(IN PKSFILTER pKSFilter, IN ULONG InputPinId, IN ULONG OutputPinId)
Definition: bdasup.c:541
NTSTATUS NTAPI BdaCheckChanges(IN PIRP Irp)
Definition: bdasup.c:167
NTSTATUS NTAPI BdaPropertyNodeEvents(IN PIRP Irp, IN KSP_NODE *pKSProperty, OUT GUID *pguidProperty)
Definition: bdasup.c:765
NTSTATUS NTAPI BdaCreateFilterFactoryEx(IN PKSDEVICE pKSDevice, IN const KSFILTER_DESCRIPTOR *pFilterDescriptor, IN const BDA_FILTER_TEMPLATE *BdaFilterTemplate, OUT PKSFILTERFACTORY *ppKSFilterFactory)
Definition: bdasup.c:246
NTSTATUS NTAPI BdaPropertyPinTypes(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT ULONG *pulProperty)
Definition: bdasup.c:878
NTSTATUS NTAPI BdaPropertyGetPinControl(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT ULONG *pulProperty)
Definition: bdasup.c:707
NTSTATUS NTAPI BdaPropertyGetControllingPinId(IN PIRP Irp, IN KSP_BDA_NODE_PIN *pProperty, OUT ULONG *pulControllingPinId)
Definition: bdasup.c:692
NTSTATUS NTAPI BdaCreatePin(IN PKSFILTER pKSFilter, IN ULONG ulPinType, OUT ULONG *pulPinId)
Definition: bdasup.c:357
NTSTATUS NTAPI BdaMethodCreateTopology(IN PIRP Irp, IN KSMETHOD *pKSMethod, OPTIONAL PVOID pvIgnored)
Definition: bdasup.c:642
NTSTATUS NTAPI BdaGetChangeState(IN PIRP Irp, OUT BDA_CHANGE_STATE *ChangeState)
Definition: bdasup.c:620
NTSTATUS NTAPI BdaDeletePin(IN PKSFILTER pKSFilter, IN ULONG *pulPinId)
Definition: bdasup.c:593
NTSTATUS NTAPI BdaStartChanges(IN PIRP Irp)
Definition: bdasup.c:1011
NTSTATUS NTAPI BdaCreateFilterFactory(IN PKSDEVICE pKSDevice, IN const KSFILTER_DESCRIPTOR *pFilterDescriptor, IN const BDA_FILTER_TEMPLATE *pBdaFilterTemplate)
Definition: bdasup.c:197
NTSTATUS NTAPI BdaPropertyNodeProperties(IN PIRP Irp, IN KSP_NODE *pKSProperty, OUT GUID *pguidProperty)
Definition: bdasup.c:795
NTSTATUS NTAPI BdaCommitChanges(IN PIRP Irp)
Definition: bdasup.c:182
NTSTATUS NTAPI BdaPropertyTemplateConnections(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT KSTOPOLOGY_CONNECTION *pConnectionProperty)
Definition: bdasup.c:946
NTSTATUS NTAPI BdaMethodDeletePin(IN PIRP Irp, IN KSMETHOD *pKSMethod, OPTIONAL PVOID pvIgnored)
Definition: bdasup.c:674
NTSTATUS NTAPI BdaMethodCreatePin(IN PIRP Irp, IN KSMETHOD *pKSMethod, OUT ULONG *pulPinFactoryID)
Definition: bdasup.c:453
_Must_inspect_result_ _In_ const KSFILTER_DESCRIPTOR _In_ const BDA_FILTER_TEMPLATE _Out_opt_ PKSFILTERFACTORY * ppKSFilterFactory
Definition: bdasup.h:81
struct _KSM_PIN * PKSM_PIN
_Must_inspect_result_ _In_ KSMETHOD _Out_opt_ ULONG * pulPinFactoryID
Definition: bdasup.h:133
struct _KSM_PIN_PAIR KSM_PIN_PAIR
ULONG BDA_TOPOLOGY_JOINT
Definition: bdasup.h:17
_Must_inspect_result_ _In_ KSP_BDA_NODE_PIN * pProperty
Definition: bdasup.h:156
struct _KSM_PIN KSM_PIN
_Must_inspect_result_ _In_ KSMETHOD PVOID pvIgnored
Definition: bdasup.h:141
_Must_inspect_result_ _In_ KSPROPERTY _Out_opt_ KSTOPOLOGY_CONNECTION * pConnectionProperty
Definition: bdasup.h:221
_Must_inspect_result_ _In_ ULONG ulPinType
Definition: bdasup.h:88
struct _BDA_PIN_PAIRING * PBDA_PIN_PAIRING
GUID * PGUID
Definition: bdasup.h:12
_Must_inspect_result_ _Out_opt_ BDA_CHANGE_STATE * pChangeState
Definition: bdasup.h:118
_Must_inspect_result_ _In_ const KSFILTER_DESCRIPTOR * pFilterDescriptor
Definition: bdasup.h:71
_Must_inspect_result_ _In_ KSPROPERTY _Out_opt_ ULONG * pulProperty
Definition: bdasup.h:165
_Must_inspect_result_ _In_ ULONG _Out_opt_ ULONG * pulPinId
Definition: bdasup.h:89
struct _KSM_PIN_PAIR * PKSM_PIN_PAIR
_Must_inspect_result_ _In_ KSPROPERTY _Out_opt_ BDANODE_DESCRIPTOR * pNodeDescriptorProperty
Definition: bdasup.h:173
ULONG * PBDA_TOPOLOGY_JOINT
Definition: bdasup.h:17
_Must_inspect_result_ _In_ KSP_BDA_NODE_PIN _Out_opt_ ULONG * pulControllingPinId
Definition: bdasup.h:157
_Must_inspect_result_ _In_ const KSFILTER_DESCRIPTOR _In_ const BDA_FILTER_TEMPLATE * pBdaFilterTemplate
Definition: bdasup.h:72
_Must_inspect_result_ _In_ KSP_NODE _Out_opt_ GUID * pguidProperty
Definition: bdasup.h:181
_Must_inspect_result_ _In_ KSMETHOD * pKSMethod
Definition: bdasup.h:132
struct _BDA_PIN_PAIRING BDA_PIN_PAIRING
_Must_inspect_result_ _In_ ULONG InputPinId
Definition: bdasup.h:96
_Must_inspect_result_ _In_ KSPROPERTY * pKSProperty
Definition: bdasup.h:164
struct _BDA_FILTER_TEMPLATE BDA_FILTER_TEMPLATE
_Must_inspect_result_ _In_ ULONG _In_ ULONG OutputPinId
Definition: bdasup.h:97
struct _BDA_FILTER_TEMPLATE * PBDA_FILTER_TEMPLATE
BDA_CHANGE_STATE
Definition: bdatypes.h:115
_In_ PIRP Irp
Definition: csq.h:116
#define _IRQL_requires_(irql)
Definition: driverspecs.h:229
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
#define _Out_opt_
Definition: ms_sal.h:346
#define _Out_writes_bytes_(size)
Definition: ms_sal.h:350
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _In_
Definition: ms_sal.h:308
#define _In_opt_
Definition: ms_sal.h:309
Definition: ks.h:2074
const BDA_PIN_PAIRING * pPinPairs
Definition: bdasup.h:33
const KSFILTER_DESCRIPTOR * pFilterDescriptor
Definition: bdasup.h:31
const ULONG * pTopologyJoints
Definition: bdasup.h:27
ULONG ulcTopologyJoints
Definition: bdasup.h:26
ULONG ulcMinOutputsPerInput
Definition: bdasup.h:25
ULONG ulcMinInputsPerOutput
Definition: bdasup.h:23
ULONG ulcMaxOutputsPerInput
Definition: bdasup.h:24
ULONG ulInputPin
Definition: bdasup.h:20
ULONG ulcMaxInputsPerOutput
Definition: bdasup.h:22
ULONG ulOutputPin
Definition: bdasup.h:21
ULONG InputPinId
Definition: bdasup.h:38
KSMETHOD Method
Definition: bdasup.h:37
ULONG OutputPinId
Definition: bdasup.h:39
ULONG Reserved
Definition: bdasup.h:40
KSMETHOD Method
Definition: bdasup.h:44
ULONG PinId
Definition: bdasup.h:46
ULONG Reserved
Definition: bdasup.h:49
ULONG PinType
Definition: bdasup.h:47
uint32_t ULONG
Definition: typedefs.h:59