summaryrefslogtreecommitdiffstats
path: root/sdk/dx8sdk/Include/dmusbuff.h
diff options
context:
space:
mode:
authorSergeanur <s.anureev@yandex.ua>2020-08-02 18:49:12 +0200
committerSergeanur <s.anureev@yandex.ua>2020-08-02 18:49:12 +0200
commit3e24ae8812ca4a0031d82ea7f7393605b8a4283a (patch)
tree5cc79378e86970d3b63cbed173d627410ea90ca6 /sdk/dx8sdk/Include/dmusbuff.h
parentMerge pull request #669 from erorcun/miami (diff)
parentMove sdk and eax (diff)
downloadre3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.tar
re3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.tar.gz
re3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.tar.bz2
re3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.tar.lz
re3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.tar.xz
re3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.tar.zst
re3-3e24ae8812ca4a0031d82ea7f7393605b8a4283a.zip
Diffstat (limited to 'sdk/dx8sdk/Include/dmusbuff.h')
-rw-r--r--sdk/dx8sdk/Include/dmusbuff.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/sdk/dx8sdk/Include/dmusbuff.h b/sdk/dx8sdk/Include/dmusbuff.h
new file mode 100644
index 00000000..54884538
--- /dev/null
+++ b/sdk/dx8sdk/Include/dmusbuff.h
@@ -0,0 +1,41 @@
+/***************************************************************************
+* *
+* DMusBuff.h -- This module defines the buffer format for DirectMusic *
+* Shared file between user mode and kernel mode components *
+* *
+* Copyright (c) 1998, Microsoft Corp. All rights reserved. *
+* *
+***************************************************************************/
+
+#ifndef _DMusBuff_
+#define _DMusBuff_
+
+/* Format of DirectMusic events in a buffer
+ *
+ * A buffer contains 1 or more events, each with the following header.
+ * Immediately following the header is the event data. The header+data
+ * size is rounded to the nearest quadword (8 bytes).
+ */
+
+#include <pshpack4.h> /* Do not pad at end - that's where the data is */
+typedef struct _DMUS_EVENTHEADER *LPDMUS_EVENTHEADER;
+typedef struct _DMUS_EVENTHEADER
+{
+ DWORD cbEvent; /* Unrounded bytes in event */
+ DWORD dwChannelGroup; /* Channel group of event */
+ REFERENCE_TIME rtDelta; /* Delta from start time of entire buffer */
+ DWORD dwFlags; /* Flags DMUS_EVENT_xxx */
+} DMUS_EVENTHEADER;
+#include <poppack.h>
+
+#define DMUS_EVENT_STRUCTURED 0x00000001 /* Unstructured data (SysEx, etc.) */
+
+/* The number of bytes to allocate for an event with 'cb' data bytes.
+ */
+#define QWORD_ALIGN(x) (((x) + 7) & ~7)
+#define DMUS_EVENT_SIZE(cb) QWORD_ALIGN(sizeof(DMUS_EVENTHEADER) + cb)
+
+
+#endif /* _DMusBuff_ */
+
+