[PSDK]
[reactos.git] / reactos / sdk / include / psdk / ks.h
index f9b540b..38aee9e 100644 (file)
@@ -1499,6 +1499,14 @@ typedef struct {
   ULONG Revision;
 } KSCOMPONENTID, *PKSCOMPONENTID;
 
+#define DEFINE_KSPROPERTY_ITEM_GENERAL_COMPONENTID(Handler)\
+    DEFINE_KSPROPERTY_ITEM(\
+        KSPROPERTY_GENERAL_COMPONENTID,\
+        (Handler),\
+        sizeof(KSPROPERTY),\
+        sizeof(KSCOMPONENTID),\
+        NULL, NULL, 0, NULL, NULL, 0)
+
 /* ===============================================================
     Properties
 */
@@ -2795,6 +2803,13 @@ struct _KSGATE {
 
 #ifndef _NTOS_
 
+_IRQL_requires_max_(DISPATCH_LEVEL)
+KSDDKAPI
+PKSGATE
+NTAPI
+KsPinGetAndGate(
+    _In_ PKSPIN Pin);
+
 _IRQL_requires_max_(HIGH_LEVEL)
 static
 __inline
@@ -3836,6 +3851,35 @@ KsPinGetLeadingEdgeStreamPointer(
   _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)
@@ -4176,6 +4220,7 @@ KsSetMajorFunctionHandler(
   _In_ PDRIVER_OBJECT DriverObject,
   _In_ ULONG MajorFunction);
 
+_Check_return_
 _IRQL_requires_max_(PASSIVE_LEVEL)
 KSDDKAPI
 NTSTATUS
@@ -4211,6 +4256,14 @@ KsStreamPointerAdvanceOffsets(
   _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
@@ -4746,6 +4799,28 @@ KsDispatchSetSecurity(
   _In_ PDEVICE_OBJECT DeviceObject,
   _In_ PIRP Irp);
 
+_IRQL_requires_max_(DISPATCH_LEVEL)
+KSDDKAPI
+VOID
+NTAPI
+KsPinAttemptProcessing(
+    _In_ PKSPIN Pin,
+    _In_ BOOLEAN Asynchronous);
+
+_IRQL_requires_max_(PASSIVE_LEVEL)
+KSDDKAPI
+VOID
+NTAPI
+KsPinAcquireProcessingMutex(
+    _In_ PKSPIN Pin);
+
+_IRQL_requires_max_(PASSIVE_LEVEL)
+KSDDKAPI
+VOID
+NTAPI
+KsPinReleaseProcessingMutex(
+    _In_ PKSPIN Pin);
+
 _IRQL_requires_max_(PASSIVE_LEVEL)
 KSDDKAPI
 PVOID
@@ -4989,10 +5064,20 @@ KsFilterCreatePinFactory(
 
 _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 */