winmm test caps patch
Robert Reif
reif at earthlink.net
Thu May 13 18:08:08 CDT 2004
Print human readable capabilities flag.
-------------- next part --------------
Index: dlls/winmm/tests/wave.c
===================================================================
RCS file: /home/wine/wine/dlls/winmm/tests/wave.c,v
retrieving revision 1.21
diff -u -r1.21 wave.c
--- dlls/winmm/tests/wave.c 13 May 2004 19:41:53 -0000 1.21
+++ dlls/winmm/tests/wave.c 13 May 2004 23:02:46 -0000
@@ -192,6 +192,43 @@
return msg;
}
+static const char * wave_out_caps(DWORD dwSupport)
+{
+ static char msg[1024];
+ int first = TRUE;
+ msg[0] = 0;
+ if (dwSupport & WAVECAPS_PITCH) {
+ strcat(msg, "WAVECAPS_PITCH");
+ first = FALSE;
+ }
+ if (dwSupport & WAVECAPS_PLAYBACKRATE) {
+ if (!first) strcat(msg, " ");
+ strcat(msg, "WAVECAPS_PLAYBACKRATE");
+ first = FALSE;
+ }
+ if (dwSupport & WAVECAPS_VOLUME) {
+ if (!first) strcat(msg, " ");
+ strcat(msg, "WAVECAPS_VOLUME");
+ first = FALSE;
+ }
+ if (dwSupport & WAVECAPS_LRVOLUME) {
+ if (!first) strcat(msg, " ");
+ strcat(msg, "WAVECAPS_LRVOLUME");
+ first = FALSE;
+ }
+ if (dwSupport & WAVECAPS_SYNC) {
+ if (!first) strcat(msg, " ");
+ strcat(msg, "WAVECAPS_SYNC");
+ first = FALSE;
+ }
+ if (dwSupport & WAVECAPS_SAMPLEACCURATE) {
+ if (!first) strcat(msg, " ");
+ strcat(msg, "WAVECAPS_SAMPLEACCURATE");
+ first = FALSE;
+ }
+ return msg;
+}
+
static void wave_out_test_deviceOut(int device, int format, DWORD flags, LPWAVEOUTCAPS pcaps)
{
WAVEFORMATEX wfx;
@@ -334,11 +371,11 @@
name=strdup("not supported");
}
- trace(" %d: \"%s\" (%s) %d.%d (%d:%d): channels=%d formats=%05lx support=%04lx\n",
+ trace(" %d: \"%s\" (%s) %d.%d (%d:%d): channels=%d formats=%05lx support=%04lx(%s)\n",
d,caps.szPname,(name?name:"failed"),caps.vDriverVersion >> 8,
caps.vDriverVersion & 0xff,
caps.wMid,caps.wPid,
- caps.wChannels,caps.dwFormats,caps.dwSupport);
+ caps.wChannels,caps.dwFormats,caps.dwSupport,wave_out_caps(caps.dwSupport));
free(name);
for (f=0;f<NB_WIN_FORMATS;f++) {
More information about the wine-patches
mailing list