Author: janderwald
Date: Mon Jan 26 04:18:53 2009
New Revision: 39106
URL:
http://svn.reactos.org/svn/reactos?rev=39106&view=rev
Log:
- Include mmreg.h for portcls.h
- Add KsDefaultForwardIrp prototype
- Fix KSPROPSETID_Connection
- Fix KSOBJECT_CREATE_ITEM struct
- Add KSDATAFORMAT_WAVEFORMATEX
- Add KSDATAFORMAT_SUBTYPE_PCM, KSDATAFORMAT_SPECIFIER_WAVEFORMATEX
- Add WAVE_FORMAT_PCM define
Modified:
trunk/reactos/include/ddk/portcls.h
trunk/reactos/include/psdk/ks.h
trunk/reactos/include/psdk/ksmedia.h
trunk/reactos/include/psdk/mmreg.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] Mon Jan 26 04:18:53 2009
@@ -134,6 +134,10 @@
#include <windef.h>
+#define NOBITMAP
+#include <mmreg.h>
+#undef NOBITMAP
+
#include <ks.h>
#include <ksmedia.h>
#include <punknown.h>
@@ -793,9 +797,9 @@
DECLARE_INTERFACE_(IDmaChannelSlave, IDmaChannel)
{
- DEFINE_ABSTRACT_UNKNOWN();
- DEFINE_ABSTRACT_DMACHANNEL();
- DEFINE_ABSTRACT_DMACHANNELSLAVE();
+ DEFINE_ABSTRACT_UNKNOWN()
+ DEFINE_ABSTRACT_DMACHANNEL()
+ DEFINE_ABSTRACT_DMACHANNELSLAVE()
};
typedef IDmaChannelSlave *PDMACHANNELSLAVE;
@@ -1183,6 +1187,8 @@
};
typedef IPortWavePci *PPORTWAVEPCI;
+#undef INTERFACE
+
/* ===============================================================
IMiniPort Interface
@@ -1227,21 +1233,44 @@
/* ===============================================================
IMiniportMidiStream Interface
*/
+#undef INTERFACE
+#define INTERFACE IMiniportMidiStream
DECLARE_INTERFACE_(IMiniportMidiStream, IUnknown)
{
- /* TODO - Read, SetFormat, SetState, Write */
+ DEFINE_ABSTRACT_UNKNOWN()
+
+ STDMETHOD_(NTSTATUS,SetFormat)(THIS_
+ IN PKSDATAFORMAT DataFormat)PURE;
+
+ STDMETHOD_(NTSTATUS,SetState)(THIS_
+ IN KSSTATE State)PURE;
+
+ STDMETHOD_(NTSTATUS,Read)(THIS_
+ IN PVOID BufferAddress,
+ IN ULONG BufferLength,
+ OUT PULONG BytesRead)PURE;
+
+ STDMETHOD_(NTSTATUS,Write)(THIS_
+ IN PVOID BufferAddress,
+ IN ULONG BytesToWrite,
+ OUT PULONG BytesWritten)PURE;
};
typedef IMiniportMidiStream* PMINIPORTMIDISTREAM;
-
+#undef INTERFACE
/* ===============================================================
IMiniportMidi Interface
*/
+#undef INTERFACE
+#define INTERFACE IMiniportMidi
DECLARE_INTERFACE_(IMiniportMidi, IMiniport)
{
+ DEFINE_ABSTRACT_UNKNOWN()
+ DEFINE_ABSTRACT_MINIPORT()
+
STDMETHOD_(NTSTATUS, Init)(THIS_
IN PUNKNOWN UnknownAdapter,
IN PRESOURCELIST ResourceList,
@@ -1260,8 +1289,8 @@
STDMETHOD_(void, Service)(THIS) PURE;
};
-/* TODO ... */
-
+typedef IMiniportMidi *PMINIPORTMIDI;
+#undef INTERFACE
/* ===============================================================
IMiniportDriverUart Interface
@@ -1330,7 +1359,7 @@
DECLARE_INTERFACE_(IMiniportWaveCyclicStream,IUnknown)
{
- DEFINE_ABSTRACT_UNKNOWN() // For IUnknown
+ DEFINE_ABSTRACT_UNKNOWN()
STDMETHOD_(NTSTATUS,SetFormat)(THIS_
IN PKSDATAFORMAT DataFormat)PURE;
@@ -1367,14 +1396,7 @@
DECLARE_INTERFACE_(IMiniportWaveCyclic, IMiniport)
{
- STDMETHOD_(NTSTATUS, QueryInterface)(THIS_
- REFIID InterfaceId,
- PVOID* Interface
- ) PURE;
- STDMETHOD_(ULONG,AddRef)(THIS) PURE;
- STDMETHOD_(ULONG,Release)(THIS) PURE;
-
-
+ DEFINE_ABSTRACT_UNKNOWN()
DEFINE_ABSTRACT_MINIPORT()
STDMETHOD_(NTSTATUS, Init)(THIS_
Modified: trunk/reactos/include/psdk/ks.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/ks.h?rev=3910…
==============================================================================
--- trunk/reactos/include/psdk/ks.h [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/ks.h [iso-8859-1] Mon Jan 26 04:18:53 2009
@@ -344,8 +344,11 @@
Connection Properties/Methods/Events
*/
-#define KSPROPSETID_Connection \
- 0x1D58C920L, 0xAC9B, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00
+#define STATIC_KSPROPSETID_Connection \
+ 0x1D58C920L, 0xAC9B, 0x11CF, {0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00}
+DEFINE_GUIDSTRUCT("1D58C920-AC9B-11CF-A5D6-28DB04C10000",
KSPROPSETID_Connection);
+#define KSPROPSETID_Connection DEFINE_GUIDNAMED(KSPROPSETID_Connection)
+
typedef enum
{
@@ -1308,6 +1311,11 @@
typedef struct
{
+ PDRIVER_DISPATCH Create;
+ PVOID Context;
+ UNICODE_STRING ObjectClass;
+ PSECURITY_DESCRIPTOR SecurityDescriptor;
+ ULONG Flags;
} KSOBJECT_CREATE_ITEM, *PKSOBJECT_CREATE_ITEM;
typedef VOID (*PFNKSITEMFREECALLBACK)(
@@ -2349,6 +2357,11 @@
IN KPROCESSOR_MODE RequestorMode);
+KSDDKAPI NTSTATUS NTAPI
+ KsDefaultForwardIrp(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PIRP Irp);
+
/* ===============================================================
Worker Management Functions
*/
Modified: trunk/reactos/include/psdk/ksmedia.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/ksmedia.h?rev…
==============================================================================
--- trunk/reactos/include/psdk/ksmedia.h [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/ksmedia.h [iso-8859-1] Mon Jan 26 04:18:53 2009
@@ -126,6 +126,14 @@
/*
Formats
*/
+
+//#if defined(_INC_MMREG)
+typedef struct {
+ KSDATAFORMAT DataFormat;
+ WAVEFORMATEX WaveFormatEx;
+} KSDATAFORMAT_WAVEFORMATEX, *PKSDATAFORMAT_WAVEFORMATEX;
+
+//#endif
// 'vids'
#define STATIC_KSDATAFORMAT_TYPE_VIDEO \
@@ -139,6 +147,9 @@
DEFINE_GUIDSTRUCT("73647561-0000-0010-8000-00aa00389b71",
KSDATAFORMAT_TYPE_AUDIO);
#define KSDATAFORMAT_TYPE_AUDIO DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_AUDIO)
+
+
+
// 'txts'
#define STATIC_KSDATAFORMAT_TYPE_TEXT \
0x73747874L, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
@@ -161,6 +172,16 @@
DEFINE_GUIDSTRUCT("1D262760-E957-11CF-A5D6-28DB04C10000",
KSDATAFORMAT_SUBTYPE_MIDI);
#define KSDATAFORMAT_SUBTYPE_MIDI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_MIDI)
+#define STATIC_KSDATAFORMAT_SUBTYPE_PCM\
+ 0x00000001L, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
+DEFINE_GUIDSTRUCT("00000001-0000-0010-8000-00aa00389b71",
KSDATAFORMAT_SUBTYPE_PCM);
+#define KSDATAFORMAT_SUBTYPE_PCM DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_PCM)
+
+
+#define STATIC_KSDATAFORMAT_SPECIFIER_WAVEFORMATEX\
+ 0x05589f81L, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a
+DEFINE_GUIDSTRUCT("05589f81-c356-11ce-bf01-00aa0055595a",
KSDATAFORMAT_SPECIFIER_WAVEFORMATEX);
+#define KSDATAFORMAT_SPECIFIER_WAVEFORMATEX
DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_WAVEFORMATEX)
/*
SysAudio Properties
Modified: trunk/reactos/include/psdk/mmreg.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/mmreg.h?rev=3…
==============================================================================
--- trunk/reactos/include/psdk/mmreg.h [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/mmreg.h [iso-8859-1] Mon Jan 26 04:18:53 2009
@@ -77,6 +77,10 @@
WORD cbSize;
} WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX;
#endif /* _WAVEFORMATEX_ */
+
+#ifndef WAVE_FORMAT_PCM
+#define WAVE_FORMAT_PCM 0x0001
+#endif
/* WAVE form wFormatTag IDs */
#define WAVE_FORMAT_UNKNOWN 0x0000 /* Microsoft Corporation */