BdaCreateFilterFactoryEx function (bdasup.h)
The BdaCreateFilterFactoryEx function adds the specified filter descriptor as a filter factory to the specified device and associates the filter factory with the specified BDA template topology.
Syntax
NTSTATUS BdaCreateFilterFactoryEx(
[in] PKSDEVICE pKSDevice,
[in] const KSFILTER_DESCRIPTOR *pFilterDescriptor,
[in] const BDA_FILTER_TEMPLATE *pBdaFilterTemplate,
[out, optional] PKSFILTERFACTORY *ppKSFilterFactory
);
Parameters
[in] pKSDevice
Points to the BDA device to which to add the filter factory with associated BDA template topology.
[in] pFilterDescriptor
Points to a KSFILTER_DESCRIPTOR structure that describes a filter for the BDA device. Note that not all of the template pin and node types may be exposed as pin and node factories when the filter is first initialized.
[in] pBdaFilterTemplate
Points to a BDA_FILTER_TEMPLATE structure that describes a BDA template topology.
[out, optional] ppKSFilterFactory
Points to a buffer that receives a pointer to a KSFILTERFACTORY structure for the newly created filter factory.
Return value
Returns STATUS_SUCCESS or an appropriate error code.
Remarks
A BDA minidriver calls the BdaCreateFilterFactoryEx function to add a filter factory with an associated BDA template topology to a device and to register all of the topology's static template structures with the BDA support library (BdaSup.sys). The BDA support library can then handle the following method and property calls:
A BDA minidriver calls BdaCreateFilterFactoryEx rather than the BdaCreateFilterFactory function whenever it requires a pointer to the newly created KSFILTERFACTORY. The BdaCreateFilterFactory function also creates a filter factory but doesn't return it to the caller. The BDA minidriver requires a pointer to the newly created KSFILTERFACTORY if the minidriver must call the _KsEdit function to edit KSFILTERFACTORY.Requirements
Requirement | Value |
---|---|
Minimum supported client | Available on Microsoft Windows XP and later operating systems. |
Target Platform | Desktop |
Header | bdasup.h (include Bdasup.h) |
Library | Bdasup.lib |
IRQL | PASSIVE_LEVEL |