ReactOS  0.4.14-dev-52-g6116262
bdasup.h
Go to the documentation of this file.
1 #pragma once
2 
3 #if (NTDDI_VERSION >= NTDDI_WINXP)
4 
5 #if defined(__cplusplus)
6 extern "C" {
7 #endif
8 
9 #define STDMETHODCALLTYPE __stdcall
10 
11 #ifndef _WDMDDK_
12 typedef GUID *PGUID;
13 #endif
14 
15 /* Types */
16 
18 
19 typedef struct _BDA_PIN_PAIRING {
29 
30 typedef struct _BDA_FILTER_TEMPLATE {
31  const KSFILTER_DESCRIPTOR *pFilterDescriptor;
35 
36 typedef struct _KSM_PIN_PAIR {
42 
43 typedef struct _KSM_PIN {
45  __GNU_EXTENSION union {
48  };
50 } KSM_PIN, * PKSM_PIN;
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,
141  PVOID pvIgnored);
142 
147  _In_ PIRP Irp,
149  PVOID pvIgnored);
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
NTSTATUS NTAPI BdaInitFilter(IN PKSFILTER pKSFilter, IN const BDA_FILTER_TEMPLATE *pBdaFilterTemplate)
Definition: bdasup.c:498
NTSTATUS NTAPI BdaCommitChanges(IN PIRP Irp)
Definition: bdasup.c:189
GUID * PGUID
Definition: bdasup.h:12
NTSTATUS NTAPI BdaPropertyTemplateConnections(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT KSTOPOLOGY_CONNECTION *pConnectionProperty)
Definition: bdasup.c:958
#define STDMETHODIMP_(t)
Definition: basetyps.h:44
#define _Must_inspect_result_
Definition: no_sal2.h:314
ULONG PinType
Definition: bdasup.h:47
ULONG ulOutputPin
Definition: bdasup.h:21
NTSTATUS NTAPI BdaPropertyNodeEvents(IN PIRP Irp, IN KSP_NODE *pKSProperty, OUT GUID *pguidProperty)
Definition: bdasup.c:777
NTSTATUS NTAPI BdaUninitFilter(IN PKSFILTER pKSFilter)
Definition: bdasup.c:1039
struct _KSM_PIN * PKSM_PIN
_In_ PIRP Irp
Definition: csq.h:116
_Must_inspect_result_ _In_ ULONG _In_ ULONG OutputPinId
Definition: bdasup.h:96
LONG NTSTATUS
Definition: precomp.h:26
NTSTATUS NTAPI BdaPropertyNodeMethods(IN PIRP Irp, IN KSP_NODE *pKSProperty, OUT GUID *pguidProperty)
Definition: bdasup.c:792
NTSTATUS NTAPI BdaGetChangeState(IN PIRP Irp, OUT BDA_CHANGE_STATE *ChangeState)
Definition: bdasup.c:632
ULONG ulcTopologyJoints
Definition: bdasup.h:26
NTSTATUS NTAPI BdaPropertyPinTypes(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT ULONG *pulProperty)
Definition: bdasup.c:890
ULONG ulcMaxInputsPerOutput
Definition: bdasup.h:22
NTSTATUS NTAPI BdaCheckChanges(IN PIRP Irp)
Definition: bdasup.c:174
_Must_inspect_result_ _IRQL_requires_(PASSIVE_LEVEL) BdaCheckChanges(_In_ PIRP Irp)
KSMETHOD Method
Definition: bdasup.h:37
#define _In_opt_
Definition: no_sal2.h:213
KSMETHOD Method
Definition: bdasup.h:44
NTSTATUS NTAPI BdaPropertyNodeProperties(IN PIRP Irp, IN KSP_NODE *pKSProperty, OUT GUID *pguidProperty)
Definition: bdasup.c:807
_Must_inspect_result_ _In_ KSP_NODE _Out_opt_ GUID * pguidProperty
Definition: bdasup.h:180
ULONG ulInputPin
Definition: bdasup.h:20
ULONG Reserved
Definition: bdasup.h:40
_Must_inspect_result_ _In_ ULONG ulPinType
Definition: bdasup.h:88
NTSTATUS NTAPI BdaMethodCreatePin(IN PIRP Irp, IN KSMETHOD *pKSMethod, OUT ULONG *pulPinFactoryID)
Definition: bdasup.c:463
_Must_inspect_result_ _In_ ULONG _Out_opt_ ULONG * pulPinId
Definition: bdasup.h:88
ULONG BDA_TOPOLOGY_JOINT
Definition: bdasup.h:17
struct _KSM_PIN_PAIR * PKSM_PIN_PAIR
NTSTATUS NTAPI BdaPropertyNodeDescriptors(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT BDANODE_DESCRIPTOR *pNodeDescriptorProperty)
Definition: bdasup.c:762
Definition: ks.h:2074
NTSTATUS NTAPI BdaCreateFilterFactoryEx(IN PKSDEVICE pKSDevice, IN const KSFILTER_DESCRIPTOR *pFilterDescriptor, IN const BDA_FILTER_TEMPLATE *BdaFilterTemplate, OUT PKSFILTERFACTORY *ppKSFilterFactory)
Definition: bdasup.c:254
struct _BDA_FILTER_TEMPLATE BDA_FILTER_TEMPLATE
_Must_inspect_result_ _In_ KSMETHOD _Out_opt_ ULONG * pulPinFactoryID
Definition: bdasup.h:132
NTSTATUS NTAPI BdaCreateTopology(IN PKSFILTER pKSFilter, IN ULONG InputPinId, IN ULONG OutputPinId)
Definition: bdasup.c:553
NTSTATUS NTAPI BdaPropertyGetPinControl(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT ULONG *pulProperty)
Definition: bdasup.c:719
ULONG * PBDA_TOPOLOGY_JOINT
Definition: bdasup.h:17
ULONG InputPinId
Definition: bdasup.h:38
#define _Out_opt_
Definition: no_sal2.h:339
_Must_inspect_result_ _In_ KSP_BDA_NODE_PIN * pProperty
Definition: bdasup.h:156
_Must_inspect_result_ _In_ const KSFILTER_DESCRIPTOR _In_ const BDA_FILTER_TEMPLATE _Out_opt_ PKSFILTERFACTORY * ppKSFilterFactory
Definition: bdasup.h:79
NTSTATUS NTAPI BdaPropertyNodeTypes(IN PIRP Irp, IN KSPROPERTY *pKSProperty, OUT ULONG *pulProperty)
Definition: bdasup.c:822
NTSTATUS NTAPI BdaDeletePin(IN PKSFILTER pKSFilter, IN ULONG *pulPinId)
Definition: bdasup.c:605
ULONG Reserved
Definition: bdasup.h:49
_Must_inspect_result_ _In_ KSP_BDA_NODE_PIN _Out_opt_ ULONG * pulControllingPinId
Definition: bdasup.h:156
NTSTATUS NTAPI BdaFilterFactoryUpdateCacheData(IN PKSFILTERFACTORY FilterFactory, IN const KSFILTER_DESCRIPTOR *FilterDescriptor OPTIONAL)
Definition: bdasup.c:619
ULONG ulcMinOutputsPerInput
Definition: bdasup.h:25
struct _BDA_FILTER_TEMPLATE * PBDA_FILTER_TEMPLATE
_Must_inspect_result_ _In_ KSPROPERTY _Out_writes_bytes_(OutputBufferLenFromIrp(Irp)) ULONG *pulProperty)
NTSTATUS NTAPI BdaStartChanges(IN PIRP Irp)
Definition: bdasup.c:1023
NTSTATUS NTAPI BdaMethodDeletePin(IN PIRP Irp, IN KSMETHOD *pKSMethod, OPTIONAL PVOID pvIgnored)
Definition: bdasup.c:686
struct _KSM_PIN KSM_PIN
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
_Must_inspect_result_ _In_ const KSFILTER_DESCRIPTOR _In_ const BDA_FILTER_TEMPLATE * pBdaFilterTemplate
Definition: bdasup.h:71
_Must_inspect_result_ _In_ KSMETHOD PVOID pvIgnored
Definition: bdasup.h:140
NTSTATUS NTAPI BdaMethodCreateTopology(IN PIRP Irp, IN KSMETHOD *pKSMethod, OPTIONAL PVOID pvIgnored)
Definition: bdasup.c:654
#define _In_
Definition: no_sal2.h:204
struct _KSM_PIN_PAIR KSM_PIN_PAIR
NTSTATUS NTAPI BdaCreatePin(IN PKSFILTER pKSFilter, IN ULONG ulPinType, OUT ULONG *pulPinId)
Definition: bdasup.c:366
_Must_inspect_result_ _In_ KSPROPERTY * pKSProperty
Definition: bdasup.h:164
_Must_inspect_result_ _Out_opt_ BDA_CHANGE_STATE * pChangeState
Definition: bdasup.h:118
struct _BDA_PIN_PAIRING * PBDA_PIN_PAIRING
BDA_CHANGE_STATE
Definition: bdatypes.h:115
NTSTATUS NTAPI BdaPropertyGetControllingPinId(IN PIRP Irp, IN KSP_BDA_NODE_PIN *pProperty, OUT ULONG *pulControllingPinId)
Definition: bdasup.c:704
const KSFILTER_DESCRIPTOR * pFilterDescriptor
Definition: bdasup.h:31
_Must_inspect_result_ _In_ const KSFILTER_DESCRIPTOR * pFilterDescriptor
Definition: bdasup.h:71
ULONG ulcMaxOutputsPerInput
Definition: bdasup.h:24
_Must_inspect_result_ _In_ ULONG InputPinId
Definition: bdasup.h:96
unsigned int ULONG
Definition: retypes.h:1
const BDA_PIN_PAIRING * pPinPairs
Definition: bdasup.h:33
ULONG OutputPinId
Definition: bdasup.h:39
_Must_inspect_result_ _In_ KSPROPERTY _Out_opt_ BDANODE_DESCRIPTOR * pNodeDescriptorProperty
Definition: bdasup.h:172
_Must_inspect_result_ _In_ KSMETHOD * pKSMethod
Definition: bdasup.h:132
NTSTATUS NTAPI BdaCreateFilterFactory(IN PKSDEVICE pKSDevice, IN const KSFILTER_DESCRIPTOR *pFilterDescriptor, IN const BDA_FILTER_TEMPLATE *pBdaFilterTemplate)
Definition: bdasup.c:204
struct _BDA_PIN_PAIRING BDA_PIN_PAIRING
_Must_inspect_result_ _In_ KSPROPERTY _Out_opt_ KSTOPOLOGY_CONNECTION * pConnectionProperty
Definition: bdasup.h:220
_Must_inspect_result_ _In_ KSPROPERTY _Out_opt_ ULONG * pulProperty
Definition: bdasup.h:164
NTSTATUS NTAPI BdaValidateNodeProperty(IN PIRP Irp, IN KSPROPERTY *KSProperty)
Definition: bdasup.c:1050
const ULONG * pTopologyJoints
Definition: bdasup.h:27
ULONG PinId
Definition: bdasup.h:46
ULONG ulcMinInputsPerOutput
Definition: bdasup.h:23