Author: janderwald
Date: Thu Dec 11 17:06:58 2008
New Revision: 38026
URL:
http://svn.reactos.org/svn/reactos?rev=38026&view=rev
Log:
- Add IPortWavePciStream, IMiniportWavePciStream, IMiniportWavePci
Modified:
trunk/reactos/include/ddk/portcls.h
Modified: trunk/reactos/include/ddk/portcls.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/portcls.h?rev=…
==============================================================================
--- trunk/reactos/include/ddk/portcls.h [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/portcls.h [iso-8859-1] Thu Dec 11 17:06:58 2008
@@ -1109,13 +1109,8 @@
/* ===============================================================
IPortWavePci Interface
*/
-
-#if 0
-#define STATIC_IID_IPortWavePci \
- 0xb4c90a50L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00, 0xa0, 0xc9, 0x11, 0xb5, 0x44
-DEFINE_GUIDSTRUCT("0xB4C90A50-5791-11d0-86f9-00a0c911b544", IID_IPortWavePci);
-#define IID_IPortWavePci DEFINE_GUIDNAMED(IID_IPortWavePci)
-#endif
+#undef INTERFACE
+#define INTERFACE IPortWavePci
DEFINE_GUID(IID_IPortWavePci,
0xb4c90a50L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00, 0xa0, 0xc9, 0x11, 0xb5, 0x44);
@@ -1144,21 +1139,7 @@
IN PSERVICEGROUP ServiceGroup) PURE;
};
-/* TODO ... */
-
-
-/* ===============================================================
- IPortWavePciStream Interface
-*/
-
-#define STATIC_IPortWavePciStream \
- 0xb4c90a51L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00, 0xa0, 0xc9, 0x11, 0xb5, 0x44
-
-DEFINE_GUID(IID_IPortWavePciStream, 0xb4c90a51L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00, 0xa0,
0xc9, 0x11, 0xb5, 0x44);
-
-/* ... */
-
-
+typedef IPortWavePci *PPORTWAVEPCI;
/* ===============================================================
IMiniPort Interface
@@ -1350,13 +1331,108 @@
typedef IMiniportWaveCyclic *PMINIPORTWAVECYCLIC;
#undef INTERFACE
+
+/* ===============================================================
+ IPortWavePciStream Interface
+*/
+#undef INTERFACE
+#define INTERFACE IPortWavePciStream
+
+DEFINE_GUID(IID_IPortWavePciStream, 0xb4c90a51L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00, 0xa0,
0xc9, 0x11, 0xb5, 0x44);
+
+DECLARE_INTERFACE_(IPortWavePciStream,IUnknown)
+{
+ DEFINE_ABSTRACT_UNKNOWN() // For IUnknown
+
+ STDMETHOD_(NTSTATUS,GetMapping)(THIS_
+ IN PVOID Tag,
+ OUT PPHYSICAL_ADDRESS PhysicalAddress,
+ OUT PVOID * VirtualAddress,
+ OUT PULONG ByteCount,
+ OUT PULONG Flags)PURE;
+
+ STDMETHOD_(NTSTATUS,ReleaseMapping)(THIS_
+ IN PVOID Tag)PURE;
+
+ STDMETHOD_(NTSTATUS,TerminatePacket)(THIS)PURE;
+};
+
+typedef IPortWavePciStream *PPORTWAVEPCISTREAM;
+
/* ===============================================================
IMiniportWavePciStream Interface
*/
+#undef INTERFACE
+#define INTERFACE IMiniportWavePciStream
+
+DEFINE_GUID(IID_IMiniportWavePciStream, 0xb4c90a53L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00,
0xa0, 0xc9, 0x11, 0xb5, 0x44);
+
+DECLARE_INTERFACE_(IMiniportWavePciStream,IUnknown)
+{
+ DEFINE_ABSTRACT_UNKNOWN()
+
+ STDMETHOD_(NTSTATUS,SetFormat)(THIS_
+ IN PKSDATAFORMAT DataFormat)PURE;
+
+ STDMETHOD_(NTSTATUS,SetState)(THIS_
+ IN KSSTATE State)PURE;
+
+ STDMETHOD_(NTSTATUS,GetPosition)(THIS_
+ OUT PULONGLONG Position)PURE;
+
+ STDMETHOD_(NTSTATUS,NormalizePhysicalPosition)(THIS_
+ IN OUT PLONGLONG PhysicalPosition)PURE;
+
+ STDMETHOD_(NTSTATUS,GetAllocatorFraming)(THIS_
+ OUT PKSALLOCATOR_FRAMING AllocatorFraming) PURE;
+
+ STDMETHOD_(NTSTATUS,RevokeMappings)(THIS_
+ IN PVOID FirstTag,
+ IN PVOID LastTag,
+ OUT PULONG MappingsRevoked)PURE;
+
+ STDMETHOD_(void,MappingAvailable)(THIS)PURE;
+
+ STDMETHOD_(void,Service)(THIS)PURE;
+};
+
+typedef IMiniportWavePciStream *PMINIPORTWAVEPCISTREAM;
/* ===============================================================
IMiniportWavePci Interface
*/
+#undef INTERFACE
+#define INTERFACE IMiniportWavePci
+
+DEFINE_GUID(IID_IMiniportWavePci, 0xb4c90a52L, 0x5791, 0x11d0, 0x86, 0xf9, 0x00, 0xa0,
0xc9, 0x11, 0xb5, 0x44);
+
+DECLARE_INTERFACE_(IMiniportWavePci,IMiniport)
+{
+ DEFINE_ABSTRACT_UNKNOWN()
+
+ DEFINE_ABSTRACT_MINIPORT()
+
+ STDMETHOD_(NTSTATUS,Init)(THIS_
+ IN PUNKNOWN UnknownAdapter,
+ IN PRESOURCELIST ResourceList,
+ IN PPORTWAVEPCI Port,
+ OUT PSERVICEGROUP * ServiceGroup)PURE;
+
+ STDMETHOD_(NTSTATUS,NewStream)(THIS_
+ OUT PMINIPORTWAVEPCISTREAM * Stream,
+ IN PUNKNOWN OuterUnknown OPTIONAL,
+ IN POOL_TYPE PoolType,
+ IN PPORTWAVEPCISTREAM PortStream,
+ IN ULONG Pin,
+ IN BOOLEAN Capture,
+ IN PKSDATAFORMAT DataFormat,
+ OUT PDMACHANNEL * DmaChannel,
+ OUT PSERVICEGROUP * ServiceGroup)PURE;
+
+ STDMETHOD_(void,Service)(THIS)PURE;
+};
+
+typedef IMiniportWavePci *PMINIPORTWAVEPCI;
/* ===============================================================
IAdapterPowerManagement Interface