VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/shaderlib/wine/include/dls1.h

最後變更 在這個檔案是 53206,由 vboxsync 提交於 10 年 前

Devices/vmsvga: header fixes

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 5.9 KB
 
1/* Defines and Structures for Instrument Collection Form RIFF DLS1
2 *
3 * Copyright (C) 2003-2004 Rok Mandeljc
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18 */
19
20/*
21 * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
22 * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
23 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
24 * a choice of LGPL license versions is made available with the language indicating
25 * that LGPLv2 or any later version may be used, or where a choice of which version
26 * of the LGPL is applied is otherwise unspecified.
27 */
28
29
30#ifndef __WINE_INCLUDE_DLS1_H
31#define __WINE_INCLUDE_DLS1_H
32
33/*****************************************************************************
34 * FOURCCs
35 */
36#define FOURCC_DLS mmioFOURCC('D','L','S',' ')
37#define FOURCC_DLID mmioFOURCC('d','l','i','d')
38#define FOURCC_COLH mmioFOURCC('c','o','l','h')
39#define FOURCC_WVPL mmioFOURCC('w','v','p','l')
40#define FOURCC_PTBL mmioFOURCC('p','t','b','l')
41#define FOURCC_PATH mmioFOURCC('p','a','t','h')
42#define FOURCC_wave mmioFOURCC('w','a','v','e')
43#define FOURCC_LINS mmioFOURCC('l','i','n','s')
44#define FOURCC_INS mmioFOURCC('i','n','s',' ')
45#define FOURCC_INSH mmioFOURCC('i','n','s','h')
46#define FOURCC_LRGN mmioFOURCC('l','r','g','n')
47#define FOURCC_RGN mmioFOURCC('r','g','n',' ')
48#define FOURCC_RGNH mmioFOURCC('r','g','n','h')
49#define FOURCC_LART mmioFOURCC('l','a','r','t')
50#define FOURCC_ART1 mmioFOURCC('a','r','t','1')
51#define FOURCC_WLNK mmioFOURCC('w','l','n','k')
52#define FOURCC_WSMP mmioFOURCC('w','s','m','p')
53#define FOURCC_VERS mmioFOURCC('v','e','r','s')
54
55/*****************************************************************************
56 * Flags
57 */
58
59#define CONN_DST_NONE 0x000
60#define CONN_DST_ATTENUATION 0x001
61#define CONN_DST_PITCH 0x003
62#define CONN_DST_PAN 0x004
63
64#define CONN_DST_LFO_FREQUENCY 0x104
65#define CONN_DST_LFO_STARTDELAY 0x105
66
67#define CONN_DST_EG1_ATTACKTIME 0x206
68#define CONN_DST_EG1_DECAYTIME 0x207
69#define CONN_DST_EG1_RELEASETIME 0x209
70#define CONN_DST_EG1_SUSTAINLEVEL 0x20A
71
72#define CONN_DST_EG2_ATTACKTIME 0x30A
73#define CONN_DST_EG2_DECAYTIME 0x30B
74#define CONN_DST_EG2_RELEASETIME 0x30D
75#define CONN_DST_EG2_SUSTAINLEVEL 0x30E
76
77#define CONN_SRC_NONE 0x000
78#define CONN_SRC_LFO 0x001
79#define CONN_SRC_KEYONVELOCITY 0x002
80#define CONN_SRC_KEYNUMBER 0x003
81#define CONN_SRC_EG1 0x004
82#define CONN_SRC_EG2 0x005
83#define CONN_SRC_PITCHWHEEL 0x006
84
85#define CONN_SRC_CC1 0x081
86#define CONN_SRC_CC7 0x087
87#define CONN_SRC_CC10 0x08A
88#define CONN_SRC_CC11 0x08B
89
90#define CONN_TRN_NONE 0x000
91#define CONN_TRN_CONCAVE 0x001
92
93#define F_INSTRUMENT_DRUMS 0x80000000
94
95#define F_RGN_OPTION_SELFNONEXCLUSIVE 0x1
96
97#define F_WAVELINK_PHASE_MASTER 0x1
98
99#define F_WSMP_NO_TRUNCATION 0x1
100#define F_WSMP_NO_COMPRESSION 0x2
101
102#define POOL_CUE_NULL 0xFFFFFFFF
103
104#define WAVELINK_CHANNEL_LEFT 0x1
105#define WAVELINK_CHANNEL_RIGHT 0x2
106
107#define WLOOP_TYPE_FORWARD 0x0
108
109/*****************************************************************************
110 * Structures
111 */
112/* typedef definitions */
113typedef struct _DLSID DLSID, *LPDLSID;
114typedef struct _DLSVERSION DLSVERSION, *LPDLSVERSION;
115typedef struct _CONNECTION CONNECTION, *LPCONNECTION;
116typedef struct _CONNECTIONLIST CONNECTIONLIST, *LPCONNECTIONLIST;
117typedef struct _RGNRANGE RGNRANGE, *LPRGNRANGE;
118typedef struct _MIDILOCALE MIDILOCALE, *LPMIDILOCALE;
119typedef struct _RGNHEADER RGNHEADER, *LPRGNHEADER;
120typedef struct _INSTHEADER INSTHEADER, *LPINSTHEADER;
121typedef struct _DLSHEADER DLSHEADER, *LPDLSHEADER;
122typedef struct _WAVELINK WAVELINK, *LPWAVELINK;
123typedef struct _POOLCUE POOLCUE, *LPPOOLCUE;
124typedef struct _POOLTABLE POOLTABLE, *LPPOOLTABLE;
125typedef struct _rwsmp WSMPL, *LPWSMPL;
126typedef struct _rloop WLOOP, *LPWLOOP;
127
128/* actual structures */
129struct _DLSID {
130 ULONG ulData1;
131 USHORT usData2;
132 USHORT usData3;
133 BYTE abData4[8];
134};
135
136struct _DLSVERSION {
137 DWORD dwVersionMS;
138 DWORD dwVersionLS;
139};
140
141struct _CONNECTION {
142 USHORT usSource;
143 USHORT usControl;
144 USHORT usDestination;
145 USHORT usTransform;
146 LONG lScale;
147};
148
149struct _CONNECTIONLIST {
150 ULONG cbSize;
151 ULONG cConnections;
152};
153
154struct _RGNRANGE {
155 USHORT usLow;
156 USHORT usHigh;
157};
158
159struct _MIDILOCALE {
160 ULONG ulBank;
161 ULONG ulInstrument;
162};
163
164struct _RGNHEADER {
165 RGNRANGE RangeKey;
166 RGNRANGE RangeVelocity;
167 USHORT fusOptions;
168 USHORT usKeyGroup;
169};
170
171struct _INSTHEADER {
172 ULONG cRegions;
173 MIDILOCALE Locale;
174};
175
176struct _DLSHEADER {
177 ULONG cInstruments;
178};
179
180struct _WAVELINK {
181 USHORT fusOptions;
182 USHORT usPhaseGroup;
183 ULONG ulChannel;
184 ULONG ulTableIndex;
185};
186
187struct _POOLCUE {
188 ULONG ulOffset;
189};
190
191struct _POOLTABLE {
192 ULONG cbSize;
193 ULONG cCues;
194};
195
196struct _rwsmp {
197 ULONG cbSize;
198 USHORT usUnityNote;
199 SHORT sFineTune;
200 LONG lAttenuation;
201 ULONG fulOptions;
202 ULONG cSampleLoops;
203};
204
205struct _rloop {
206 ULONG cbSize;
207 ULONG ulType;
208 ULONG ulStart;
209 ULONG ulLength;
210};
211
212#endif /* __WINE_INCLUDE_DLS1_H */
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette