- Make ks and portcls compile under msvc
[reactos.git] / reactos / drivers / wdm / audio / backpln / portcls / private.h
index 48c1ff1..0b3df66 100644 (file)
@@ -11,7 +11,7 @@
 
 #include <ntddk.h>
 #include <portcls.h>
-#define YDEBUG
+#define NDEBUG
 #include <debug.h>
 
 #include <dmusicks.h>
 #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
 #define TAG_PORTCLASS TAG('P', 'C', 'L', 'S')
 
-#ifdef _MSC_VER
-  #define STDCALL
-  #define DDKAPI
-#endif
-
 #define ASSERT_IRQL(x) ASSERT(KeGetCurrentIrql() <= (x))
 
 NTSTATUS
@@ -162,7 +157,8 @@ NTAPI
 NewDispatchObject(
     IN PIRP Irp,
     IN IIrpTarget * Target,
-    IN LPWSTR Name);
+    IN ULONG ObjectCreateItemCount,
+    IN PKSOBJECT_CREATE_ITEM ObjectCreateItem);
 
 PMINIPORTWAVECYCLIC
 GetWaveCyclicMiniport(
@@ -279,15 +275,21 @@ PDEVICE_OBJECT
 GetDeviceObject(
     IPortWaveCyclic* iface);
 
-IIrpQueue*
+VOID
+NTAPI
+PcIoTimerRoutine(
+    IN PDEVICE_OBJECT  DeviceObject,
+    IN PVOID  Context);
+
+NTSTATUS
 NTAPI
-IPortWavePciStream_GetIrpQueue(
-    IN IPortWavePciStream *iface);
+NewIUnregisterSubdevice(
+    OUT PUNREGISTERSUBDEVICE *OutDevice);
 
 NTSTATUS
 NTAPI
-NewIPortWavePciStream(
-    OUT PPORTWAVEPCISTREAM *Stream);
+NewIUnregisterPhysicalConnection(
+    OUT PUNREGISTERPHYSICALCONNECTION *OutConnection);
 
 #define DEFINE_KSPROPERTY_PINPROPOSEDATAFORMAT(PinSet,\
     PropGeneral, PropInstances, PropIntersection)\
@@ -309,19 +311,28 @@ DEFINE_KSPROPERTY_TABLE(PinSet) {\
 typedef struct
 {
     LIST_ENTRY Entry;
-    KSOBJECT_HEADER ObjectHeader;
-}SUBDEVICE_ENTRY;
+    UNICODE_STRING SymbolicLink;
+}SYMBOLICLINK_ENTRY, *PSYMBOLICLINK_ENTRY;
+
+
+typedef struct
+{
+    LIST_ENTRY Entry;
+    ISubdevice *SubDevice;
+    UNICODE_STRING Name;
+    LIST_ENTRY SymbolicLinkList;
+}SUBDEVICE_ENTRY, *PSUBDEVICE_ENTRY;
 
 typedef struct
 {
     LIST_ENTRY Entry;
     ISubdevice * FromSubDevice;
-    LPWSTR FromUnicodeString;
+    UNICODE_STRING FromUnicodeString;
     ULONG FromPin;
     ISubdevice * ToSubDevice;
-    LPWSTR ToUnicodeString;
+    UNICODE_STRING ToUnicodeString;
     ULONG ToPin;
-}PHYSICAL_CONNECTION;
+}PHYSICAL_CONNECTION, *PPHYSICAL_CONNECTION;
 
 typedef struct
 {
@@ -338,6 +349,9 @@ typedef struct
     LIST_ENTRY SubDeviceList;
     LIST_ENTRY PhysicalConnectionList;
 
+    LIST_ENTRY TimerList;
+    KSPIN_LOCK TimerListLock;
+
 } PCLASS_DEVICE_EXTENSION, *PPCLASS_DEVICE_EXTENSION;
 
 
@@ -354,4 +368,11 @@ typedef struct
     PIRP Irp;
 }CLOSESTREAM_CONTEXT, *PCLOSESTREAM_CONTEXT;
 
+typedef struct
+{
+    LIST_ENTRY Entry;
+    PIO_TIMER_ROUTINE pTimerRoutine;
+    PVOID Context;
+}TIMER_CONTEXT, *PTIMER_CONTEXT;
+
 #endif