KSAUTOMATION_TABLE FilterAutomationTable =
{
1,
- sizeof(KSPROPERTY_SET),
+ sizeof(KSPROPERTY_ITEM),
&FilterPropertySet,
1,
- sizeof(KSMETHOD_SET),
+ sizeof(KSMETHOD_ITEM),
&FilterMethodSet,
0,
- sizeof(KSEVENT_SET),
+ sizeof(KSEVENT_ITEM),
NULL
};
KSAUTOMATION_TABLE PinAutomationTable =
{
1,
- sizeof(KSPROPERTY_SET),
+ sizeof(KSPROPERTY_ITEM),
&PinPropertySet,
0,
- sizeof(KSMETHOD_SET),
+ sizeof(KSMETHOD_ITEM),
NULL,
0,
- sizeof(KSEVENT_SET),
+ sizeof(KSEVENT_ITEM),
NULL
};
DllInitialize(
PUNICODE_STRING RegistryPath)
{
+ DPRINT("BDASUP::DllInitialize\n");
+
KeInitializeSpinLock(&g_Settings.FilterFactoryInstanceListLock);
InitializeListHead(&g_Settings.FilterFactoryInstanceList);
g_Settings.Initialized = TRUE;
NTAPI
BdaCheckChanges(IN PIRP Irp)
{
+ DPRINT("BdaCheckChanges\n");
+
if (!Irp)
return STATUS_INVALID_PARAMETER;
NTAPI
BdaCommitChanges(IN PIRP Irp)
{
+ DPRINT("BdaCommitChanges\n");
+
if (!Irp)
return STATUS_INVALID_PARAMETER;
NTSTATUS Status;
KSFILTER_DESCRIPTOR FilterDescriptor;
+ DPRINT("BdaCreateFilterFactoryEx\n");
/* backup filter descriptor */
RtlMoveMemory(&FilterDescriptor, pFilterDescriptor, sizeof(KSFILTER_DESCRIPTOR));
/* check for success */
if (!NT_SUCCESS(Status))
+ {
+ DPRINT1("KsMergeAutomationTables failed with %lx\n", Status);
return Status;
+ }
/* allocate filter instance */
FilterInstance = AllocateItem(NonPagedPool, sizeof(BDA_FILTER_INSTANCE_ENTRY));
if (!NT_SUCCESS(Status))
{
/* destroy filter instance */
+ DPRINT1("KsAddItemToObjectBag failed with %lx\n", Status);
FreeItem(FilterInstance);
KsDeleteFilterFactory(FilterFactory);
return Status;
{
/* failed to create filter factory */
FreeItem(FilterInstance);
+ DPRINT1("KsCreateFilterFactory failed with %lx\n", Status);
}
/* done */
+ DPRINT("BdaCreateFilterFactoryEx Status %x\n", Status);
return Status;
}
ULONG PinId;
KSPIN_DESCRIPTOR_EX NewPinDescriptor;
+ DPRINT("BdaCreatePin\n");
+
if (!pulPinId || !pKSFilter)
return STATUS_INVALID_PARAMETER;
PKSM_PIN Pin;
PKSFILTER Filter;
+ DPRINT("BdaMethodCreatePin\n");
+
if (!Irp)
{
/* invalid parameter */
ULONG Index, PinId;
NTSTATUS Status = STATUS_SUCCESS;
+ DPRINT("BdaInitFilter\n");
+
/* check input parameters */
if (!pKSFilter)
return STATUS_INVALID_PARAMETER;
PKSFILTERFACTORY FilterFactory;
KSTOPOLOGY_CONNECTION Connection;
+ DPRINT("BdaCreateTopology\n");
+
/* check input parameters */
if (!pKSFilter)
return STATUS_INVALID_PARAMETER;
IN ULONG *pulPinId)
{
UNIMPLEMENTED
+ DPRINT("BdaDeletePin\n");
return STATUS_NOT_IMPLEMENTED;
}
IN PKSFILTERFACTORY FilterFactory,
IN const KSFILTER_DESCRIPTOR *FilterDescriptor OPTIONAL)
{
+ DPRINT("BdaFilterFactoryUpdateCacheData\n");
return KsFilterFactoryUpdateCacheData(FilterFactory, FilterDescriptor);
}
IN PIRP Irp,
OUT BDA_CHANGE_STATE *ChangeState)
{
+ DPRINT("BdaGetChangeState\n");
+
if (Irp && ChangeState)
{
*ChangeState = BDA_CHANGES_COMPLETE;
PKSFILTER Filter;
PKSP_BDA_NODE_PIN Node;
+ DPRINT("BdaMethodCreateTopology\n");
+
/* check input parameters */
if (!Irp || !pKSMethod)
return STATUS_INVALID_PARAMETER;
IN KSMETHOD *pKSMethod,
OPTIONAL PVOID pvIgnored)
{
+ DPRINT("BdaMethodDeletePin\n");
+
if (!Irp)
return STATUS_INVALID_PARAMETER;
OUT ULONG *pulControllingPinId)
{
UNIMPLEMENTED
+ DPRINT("BdaPropertyGetControllingPinId\n");
return STATUS_NOT_IMPLEMENTED;
}
PKSFILTERFACTORY FilterFactory;
PBDA_FILTER_INSTANCE_ENTRY InstanceEntry;
+ DPRINT("BdaPropertyGetPinControl\n");
+
/* first get the pin */
Pin = KsGetPinFromIrp(Irp);
ASSERT(Pin);
OUT BDANODE_DESCRIPTOR *pNodeDescriptorProperty)
{
UNIMPLEMENTED
+ DPRINT("BdaPropertyNodeDescriptors\n");
return STATUS_NOT_IMPLEMENTED;
}
OUT GUID *pguidProperty)
{
UNIMPLEMENTED
+ DPRINT("BdaPropertyNodeEvents\n");
return STATUS_NOT_IMPLEMENTED;
}
OUT GUID *pguidProperty)
{
UNIMPLEMENTED
+ DPRINT("BdaPropertyNodeMethods\n");
return STATUS_NOT_IMPLEMENTED;
}
OUT GUID *pguidProperty)
{
UNIMPLEMENTED
+ DPRINT("BdaPropertyNodeProperties\n");
return STATUS_NOT_IMPLEMENTED;
}
PIO_STACK_LOCATION IoStack;
ULONG Index;
+ DPRINT("BdaPropertyNodeTypes\n");
+
/* check input parameter */
if (!Irp || !pKSProperty)
return STATUS_INVALID_PARAMETER;
PIO_STACK_LOCATION IoStack;
ULONG Index;
+ DPRINT("BdaPropertyPinTypes\n");
+
/* check input parameter */
if (!Irp || !pKSProperty)
return STATUS_INVALID_PARAMETER;
PIO_STACK_LOCATION IoStack;
ULONG Index;
+ DPRINT("BdaPropertyTemplateConnections\n");
+
/* validate parameters */
if (!Irp || !pKSProperty)
return STATUS_INVALID_PARAMETER;
NTAPI
BdaStartChanges(IN PIRP Irp)
{
+ DPRINT("BdaStartChanges\n");
+
if (Irp)
return STATUS_SUCCESS;
else
NTAPI
BdaUninitFilter(IN PKSFILTER pKSFilter)
{
+ DPRINT("BdaUninitFilter\n");
return STATUS_SUCCESS;
}
IN PIRP Irp,
IN KSPROPERTY *KSProperty)
{
+ DPRINT("BdaValidateNodeProperty\n");
+
/* check for valid parameter */
if (Irp && KSProperty)
return STATUS_SUCCESS;