/[cvs]/api/include/dmusbuff.h
ViewVC logotype

Annotation of /api/include/dmusbuff.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations)
Sun Jul 1 20:47:59 2001 UTC (22 years, 10 months ago) by bearsoft
Branch point for: lazy, MAIN
File MIME type: text/plain
Initial revision

1 bearsoft 1.1 /***************************************************************************
2     * *
3     * DMusBuff.h -- This module defines the buffer format for DirectMusic *
4     * Shared file between user mode and kernel mode components *
5     * *
6     * Copyright (c) 1998, Microsoft Corp. All rights reserved. *
7     * *
8     ***************************************************************************/
9    
10     #ifndef _DMusBuff_
11     #define _DMusBuff_
12    
13     /* Format of DirectMusic events in a buffer
14     *
15     * A buffer contains 1 or more events, each with the following header.
16     * Immediately following the header is the event data. The header+data
17     * size is rounded to the nearest quadword (8 bytes).
18     */
19    
20     #include <pshpack4.h> /* Do not pad at end - that's where the data is */
21     typedef struct _DMUS_EVENTHEADER *LPDMUS_EVENTHEADER;
22     typedef struct _DMUS_EVENTHEADER
23     {
24     DWORD cbEvent; /* Unrounded bytes in event */
25     DWORD dwChannelGroup; /* Channel group of event */
26     REFERENCE_TIME rtDelta; /* Delta from start time of entire buffer */
27     DWORD dwFlags; /* Flags DMUS_EVENT_xxx */
28     } DMUS_EVENTHEADER;
29     #include <poppack.h>
30    
31     #define DMUS_EVENT_STRUCTURED 0x00000001 /* Unstructured data (SysEx, etc.) */
32    
33     /* The number of bytes to allocate for an event with 'cb' data bytes.
34     */
35     #define QWORD_ALIGN(x) (((x) + 7) & ~7)
36     #define DMUS_EVENT_SIZE(cb) QWORD_ALIGN(sizeof(DMUS_EVENTHEADER) + cb)
37    
38    
39     #endif /* _DMusBuff_ */
40    
41    

root@recompile.se
ViewVC Help
Powered by ViewVC 1.1.26