_In_ PKSPIN Pin,
_In_ KSSTREAM_POINTER_STATE State);
+_IRQL_requires_max_(DISPATCH_LEVEL)
+KSDDKAPI
+NTSTATUS
+NTAPI
+KsStreamPointerSetStatusCode(
+ _In_ PKSSTREAM_POINTER StreamPointer,
+ _In_ NTSTATUS Status
+);
+
+_IRQL_requires_max_(DISPATCH_LEVEL)
+KSDDKAPI
+void
+NTAPI
+KsStreamPointerDelete(
+ _In_ PKSSTREAM_POINTER StreamPointer
+);
+
+_IRQL_requires_max_(DISPATCH_LEVEL)
+KSDDKAPI
+NTSTATUS
+NTAPI
+KsStreamPointerClone(
+ _In_ PKSSTREAM_POINTER StreamPointer,
+ _In_opt_ PFNKSSTREAMPOINTER CancelCallback,
+ _In_ ULONG ContextSize,
+ _Out_ PKSSTREAM_POINTER* CloneStreamPointer
+);
+
+
/* Does this belong here? */
_IRQL_requires_max_(PASSIVE_LEVEL)
_In_ PDRIVER_OBJECT DriverObject,
_In_ ULONG MajorFunction);
+_Check_return_
_IRQL_requires_max_(PASSIVE_LEVEL)
KSDDKAPI
NTSTATUS
_In_ ULONG OutUsed,
_In_ BOOLEAN Eject);
+_Check_return_
+_IRQL_requires_max_(DISPATCH_LEVEL)
+KSDDKAPI
+NTSTATUS
+NTAPI
+KsStreamPointerAdvance(
+ _In_ PKSSTREAM_POINTER StreamPointer);
+
_IRQL_requires_max_(DISPATCH_LEVEL)
KSDDKAPI
VOID
_IRQL_requires_max_(PASSIVE_LEVEL)
KSDDKAPI
+PKSDEVICE
+NTAPI
+KsGetDevice(
+ _In_ PVOID Object);
+
+_IRQL_requires_max_(PASSIVE_LEVEL)
+static
__inline
PKSDEVICE
KsFilterFactoryGetDevice(
- _In_ PKSFILTERFACTORY FilterFactory);
+ _In_ PKSFILTERFACTORY FilterFactory)
+{
+ return KsGetDevice((PVOID)FilterFactory);
+}
/* etc. */
#endif /* avstream */