mirror of
https://github.com/reactos/reactos.git
synced 2025-08-02 05:45:50 +00:00
- Fix include guard
- Define PKNKSFREE type - Add KSFILTERFACTORY type - Fix definition of KsAllocateObjectHeader - Fix calling convention for lots of functions - Remove dummy stub implementations svn path=/trunk/; revision=39523
This commit is contained in:
parent
31dd9c0a1c
commit
77f7338705
1 changed files with 119 additions and 81 deletions
|
@ -27,9 +27,7 @@
|
||||||
&Overlapped);
|
&Overlapped);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef KS_H
|
#ifndef _KS_
|
||||||
#define KS_H
|
|
||||||
|
|
||||||
#define _KS_
|
#define _KS_
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -1533,6 +1531,11 @@ typedef struct
|
||||||
KSPRIORITY Priority;
|
KSPRIORITY Priority;
|
||||||
} KSPIN_CONNECT, *PKSPIN_CONNECT;
|
} KSPIN_CONNECT, *PKSPIN_CONNECT;
|
||||||
|
|
||||||
|
typedef
|
||||||
|
void
|
||||||
|
(*PFNKSFREE)(
|
||||||
|
IN PVOID Data
|
||||||
|
);
|
||||||
|
|
||||||
/* ===============================================================
|
/* ===============================================================
|
||||||
Topology
|
Topology
|
||||||
|
@ -1825,6 +1828,13 @@ struct _KSDEVICE_DESCRIPTOR
|
||||||
ULONG FilterDescriptorsCount;
|
ULONG FilterDescriptorsCount;
|
||||||
const KSFILTER_DESCRIPTOR*const* FilterDescriptors;
|
const KSFILTER_DESCRIPTOR*const* FilterDescriptors;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct _KSFILTERFACTORY {
|
||||||
|
const KSFILTER_DESCRIPTOR* FilterDescriptor;
|
||||||
|
KSOBJECT_BAG Bag;
|
||||||
|
PVOID Context;
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
/* ===============================================================
|
/* ===============================================================
|
||||||
Minidriver Callbacks
|
Minidriver Callbacks
|
||||||
|
@ -2221,7 +2231,7 @@ KsAllocateObjectCreateItem(
|
||||||
|
|
||||||
KSDDKAPI NTSTATUS NTAPI
|
KSDDKAPI NTSTATUS NTAPI
|
||||||
KsAllocateObjectHeader(
|
KsAllocateObjectHeader(
|
||||||
OUT PVOID Header,
|
OUT KSOBJECT_HEADER *Header,
|
||||||
IN ULONG ItemsCount,
|
IN ULONG ItemsCount,
|
||||||
IN PKSOBJECT_CREATE_ITEM ItemsList OPTIONAL,
|
IN PKSOBJECT_CREATE_ITEM ItemsList OPTIONAL,
|
||||||
IN PIRP Irp,
|
IN PIRP Irp,
|
||||||
|
@ -2578,19 +2588,23 @@ KsSynchronousIoControlDevice(
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(_NTDDK_)
|
#if defined(_NTDDK_)
|
||||||
KSDDKAPI NTSTATUS NTAPI
|
KSDDKAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsInitializeDriver(
|
KsInitializeDriver(
|
||||||
IN PDRIVER_OBJECT DriverObject,
|
IN PDRIVER_OBJECT DriverObject,
|
||||||
IN PUNICODE_STRING RegistryPath,
|
IN PUNICODE_STRING RegistryPath,
|
||||||
IN const KSDEVICE_DESCRIPTOR *Descriptor OPTIONAL);
|
IN const KSDEVICE_DESCRIPTOR *Descriptor OPTIONAL);
|
||||||
#endif
|
|
||||||
|
|
||||||
#if 0
|
typedef struct _KSFILTERFACTORY KSFILTERFACTORY, *PKSFILTERFACTORY; //FIXME
|
||||||
|
|
||||||
typedef void (*PFNKSFILTERFACTORYPOWER)(
|
typedef void (*PFNKSFILTERFACTORYPOWER)(
|
||||||
IN PKSFILTERFACTORY FilterFactory,
|
IN PKSFILTERFACTORY FilterFactory,
|
||||||
IN DEVICE_POWER_STATE State);
|
IN DEVICE_POWER_STATE State);
|
||||||
|
|
||||||
KSDDKAPI NTSTATUS NTAPI
|
KSDDKAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
_KsEdit(
|
_KsEdit(
|
||||||
IN KSOBJECT_BAG ObjectBag,
|
IN KSOBJECT_BAG ObjectBag,
|
||||||
IN OUT PVOID* PointerToPointerToItem,
|
IN OUT PVOID* PointerToPointerToItem,
|
||||||
|
@ -2598,71 +2612,73 @@ _KsEdit(
|
||||||
IN ULONG OldSize,
|
IN ULONG OldSize,
|
||||||
IN ULONG Tag);
|
IN ULONG Tag);
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
VOID
|
VOID
|
||||||
|
NTAPI
|
||||||
KsAcquireControl(
|
KsAcquireControl(
|
||||||
IN PVOID Object)
|
IN PVOID Object);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
VOID
|
VOID
|
||||||
|
NTAPI
|
||||||
KsAcquireDevice(
|
KsAcquireDevice(
|
||||||
IN PKSDEVICE Device)
|
IN PKSDEVICE Device);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsAddDevice(
|
KsAddDevice(
|
||||||
IN PDRIVER_OBJECT DriverObject,
|
IN PDRIVER_OBJECT DriverObject,
|
||||||
IN PDEVICE_OBJECT PhysicalDeviceObject)
|
IN PDEVICE_OBJECT PhysicalDeviceObject);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
VOID
|
VOID
|
||||||
|
NTAPI
|
||||||
KsAddEvent(
|
KsAddEvent(
|
||||||
IN PVOID Object,
|
IN PVOID Object,
|
||||||
IN PKSEVENT_ENTRY EventEntry)
|
IN PKSEVENT_ENTRY EventEntry);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsAddItemToObjectBag(
|
KsAddItemToObjectBag(
|
||||||
IN KSOBJECT_BAG ObjectBag,
|
IN KSOBJECT_BAG ObjectBag,
|
||||||
IN PVOID Item,
|
IN PVOID Item,
|
||||||
IN PFNKSFREE Free OPTIONAL)
|
IN PFNKSFREE Free OPTIONAL);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsAllocateObjectBag(
|
KsAllocateObjectBag(
|
||||||
IN PKSDEVICE Device,
|
IN PKSDEVICE Device,
|
||||||
OUT KSOBJECT_BAG* ObjectBag)
|
OUT KSOBJECT_BAG* ObjectBag);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
VOID
|
VOID
|
||||||
|
NTAPI
|
||||||
KsCompletePendingRequest(
|
KsCompletePendingRequest(
|
||||||
IN PIRP Irp)
|
IN PIRP Irp);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsCopyObjectBagItems(
|
KsCopyObjectBagItems(
|
||||||
IN KSOBJECT_BAG ObjectBagDestination,
|
IN KSOBJECT_BAG ObjectBagDestination,
|
||||||
IN KSOBJECT_BAG ObjectBagSource)
|
IN KSOBJECT_BAG ObjectBagSource);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsCreateDevice(
|
KsCreateDevice(
|
||||||
IN PDRIVER_OBJECT DriverObject,
|
IN PDRIVER_OBJECT DriverObject,
|
||||||
IN PDEVICE_OBJECT PhysicalDeviceObject,
|
IN PDEVICE_OBJECT PhysicalDeviceObject,
|
||||||
IN const KSDEVICE_DESCRIPTOR* Descriptor OPTIONAL,
|
IN const KSDEVICE_DESCRIPTOR* Descriptor OPTIONAL,
|
||||||
IN ULONG ExtensionSize OPTIONAL,
|
IN ULONG ExtensionSize OPTIONAL,
|
||||||
OUT PKSDEVICE* Device OPTIONAL)
|
OUT PKSDEVICE* Device OPTIONAL);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsCreateFilterFactory(
|
KsCreateFilterFactory(
|
||||||
IN PDEVICE_OBJECT DeviceObject,
|
IN PDEVICE_OBJECT DeviceObject,
|
||||||
IN const KSFILTER_DESCRIPTOR* Descriptor,
|
IN const KSFILTER_DESCRIPTOR* Descriptor,
|
||||||
|
@ -2671,114 +2687,136 @@ KsCreateFilterFactory(
|
||||||
IN ULONG CreateItemFlags,
|
IN ULONG CreateItemFlags,
|
||||||
IN PFNKSFILTERFACTORYPOWER SleepCallback OPTIONAL,
|
IN PFNKSFILTERFACTORYPOWER SleepCallback OPTIONAL,
|
||||||
IN PFNKSFILTERFACTORYPOWER WakeCallback OPTIONAL,
|
IN PFNKSFILTERFACTORYPOWER WakeCallback OPTIONAL,
|
||||||
OUT PKFSFILTERFACTORY FilterFactory OPTIONAL)
|
OUT PKSFILTERFACTORY FilterFactory OPTIONAL);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsDefaultAddEventHandler(
|
KsDefaultAddEventHandler(
|
||||||
IN PIRP Irp,
|
IN PIRP Irp,
|
||||||
IN PKSEVENTDATA EventData,
|
IN PKSEVENTDATA EventData,
|
||||||
IN OUT PKSEVENT_ENTRY EventEntry)
|
IN OUT PKSEVENT_ENTRY EventEntry);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
NTSTATUS
|
|
||||||
KsDeleteFilterFactory(
|
|
||||||
IN PKSFILTERFACTORY FilterFactory)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
#define KsDeleteFilterFactory(FilterFactory) \
|
||||||
|
KsFreeObjectCreateItemsByContext( \
|
||||||
|
*(KSDEVICE_HEADER *)( \
|
||||||
|
KsFilterFactoryGetParentDevice(FilterFactory)->FunctionalDeviceObject-> \
|
||||||
|
DeviceExtension), \
|
||||||
|
FilterFactory)
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
ULONG
|
ULONG
|
||||||
|
NTAPI
|
||||||
KsDeviceGetBusData(
|
KsDeviceGetBusData(
|
||||||
IN PKSDEVICE Device,
|
IN PKSDEVICE Device,
|
||||||
IN ULONG DataType,
|
IN ULONG DataType,
|
||||||
IN PVOID Buffer,
|
IN PVOID Buffer,
|
||||||
IN ULONG Offset,
|
IN ULONG Offset,
|
||||||
IN ULONG Length)
|
IN ULONG Length);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
|
PVOID
|
||||||
|
NTAPI
|
||||||
|
KsGetFirstChild(
|
||||||
|
IN PVOID Object
|
||||||
|
);
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
PKSFILTERFACTORY
|
PKSFILTERFACTORY
|
||||||
|
NTAPI
|
||||||
KsDeviceGetFirstChildFilterFactory(
|
KsDeviceGetFirstChildFilterFactory(
|
||||||
IN PKSDEVICE Device)
|
IN PKSDEVICE Device);
|
||||||
{
|
|
||||||
}
|
#if defined(_UNKNOWN_H_) || defined(__IUnknown_INTERFACE_DEFINED__)
|
||||||
|
|
||||||
PUNKNOWN
|
PUNKNOWN
|
||||||
|
NTAPI
|
||||||
KsDeviceGetOuterUnknown(
|
KsDeviceGetOuterUnknown(
|
||||||
IN PKSDEVICE Device)
|
IN PKSDEVICE Device)
|
||||||
{
|
{
|
||||||
|
return KsGetOuterUnknown((PVOID) Device);
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
KSDDKAPI
|
||||||
KsDeviceRegisterAdapterObject(
|
PUNKNOWN
|
||||||
IN PKSDEVICE Device,
|
NTAPI
|
||||||
IN PADAPTER_OBJECT AdapterObject,
|
|
||||||
IN ULONG MaxMappingByteCount,
|
|
||||||
IN ULONG MappingTableStride)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
KSDDKAPI PUNKNOWN NTAPI
|
|
||||||
KsDeviceRegisterAggregatedClientUnknown(
|
KsDeviceRegisterAggregatedClientUnknown(
|
||||||
IN PKSDEVICE Device,
|
IN PKSDEVICE Device,
|
||||||
IN PUNKNOWN ClientUnknown);
|
IN PUNKNOWN ClientUnknown);
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
|
VOID
|
||||||
|
NTAPI
|
||||||
|
KsDeviceRegisterAdapterObject(
|
||||||
|
IN PKSDEVICE Device,
|
||||||
|
IN PADAPTER_OBJECT AdapterObject,
|
||||||
|
IN ULONG MaxMappingByteCount,
|
||||||
|
IN ULONG MappingTableStride);
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
ULONG
|
ULONG
|
||||||
|
NTAPI
|
||||||
KsDeviceSetBusData(
|
KsDeviceSetBusData(
|
||||||
IN PKSDEVICE Device,
|
IN PKSDEVICE Device,
|
||||||
IN ULONG DataType,
|
IN ULONG DataType,
|
||||||
IN PVOID Buffer,
|
IN PVOID Buffer,
|
||||||
IN ULONG Offset,
|
IN ULONG Offset,
|
||||||
IN ULONG Length)
|
IN ULONG Length);
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
#define KsDiscard(object, pointer) \
|
#define KsDiscard(object, pointer) \
|
||||||
KsRemoveItemFromObjectBag(object->Bag, pointer, TRUE)
|
KsRemoveItemFromObjectBag(object->Bag, pointer, TRUE)
|
||||||
|
|
||||||
VOID
|
#define KsFilterAcquireControl(Filter) \
|
||||||
KsFilterAcquireControl(
|
KsAcquireControl((PVOID) Filter);
|
||||||
IN PKSFILTER Filter)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
|
#define KsFilterAddEvent(Filter, EventEntry) \
|
||||||
|
KsAddEvent(Filter,EventEntry);
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
VOID
|
VOID
|
||||||
|
NTAPI
|
||||||
KsFilterAcquireProcessingMutex(
|
KsFilterAcquireProcessingMutex(
|
||||||
IN PKSFILTER Filter);
|
IN PKSFILTER Filter);
|
||||||
|
|
||||||
VOID
|
KSDDKAPI
|
||||||
KsFilterAddEvent(
|
NTSTATUS
|
||||||
IN PKSFILTER Filter,
|
NTAPI
|
||||||
IN PKSEVENT_ENTRY EventEntry)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
KSDDKAPI NTSTATUS NTAPI
|
|
||||||
KsFilterAddTopologyConnections(
|
KsFilterAddTopologyConnections(
|
||||||
IN PKSFILTER Filter,
|
IN PKSFILTER Filter,
|
||||||
IN ULONG NewConnectionsCount,
|
IN ULONG NewConnectionsCount,
|
||||||
IN const KSTOPOLOGY_CONNECTION* NewTopologyConnections);
|
IN const KSTOPOLOGY_CONNECTION* NewTopologyConnections);
|
||||||
|
|
||||||
|
KSDDKAPI
|
||||||
VOID
|
VOID
|
||||||
|
NTAPI
|
||||||
KsFilterAttemptProcessing(
|
KsFilterAttemptProcessing(
|
||||||
IN PKSFILTER Filter,
|
IN PKSFILTER Filter,
|
||||||
IN BOOLEAN Asynchronous);
|
IN BOOLEAN Asynchronous);
|
||||||
|
|
||||||
KSDDKAPI NTSTATUS NTAPI
|
KSDDKAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsFilterCreateNode(
|
KsFilterCreateNode(
|
||||||
IN PKSFILTER Filter,
|
IN PKSFILTER Filter,
|
||||||
IN const KSNODE_DESCRIPTOR* NodeDescriptor,
|
IN const KSNODE_DESCRIPTOR* NodeDescriptor,
|
||||||
OUT PULONG NodeID);
|
OUT PULONG NodeID);
|
||||||
|
|
||||||
KSDDKAPI NTSTATUS NTAPI
|
KSDDKAPI
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
KsFilterCreatePinFactory(
|
KsFilterCreatePinFactory(
|
||||||
IN PKSFILTER Filter,
|
IN PKSFILTER Filter,
|
||||||
IN const KSPIN_DESCRIPTOR_EX* PinDescriptor,
|
IN const KSPIN_DESCRIPTOR_EX* PinDescriptor,
|
||||||
OUT PULONG PinID);
|
OUT PULONG PinID);
|
||||||
|
|
||||||
PKSDEVICE __inline
|
KSDDKAPI
|
||||||
|
PKSDEVICE
|
||||||
|
__inline
|
||||||
KsFilterFactoryGetDevice(
|
KsFilterFactoryGetDevice(
|
||||||
IN PKSFILTERFACTORY FilterFactory);
|
IN PKSFILTERFACTORY FilterFactory);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue