VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/shaderlib/wine/include/msacmdrv.h@ 53206

Last change on this file since 53206 was 53206, checked in by vboxsync, 10 years ago

Devices/vmsvga: header fixes

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 5.0 KB
Line 
1/*
2 * Declarations for MSACM driver
3 *
4 * Copyright 1998 Patrik Stridvall
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21/*
22 * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
23 * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
24 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
25 * a choice of LGPL license versions is made available with the language indicating
26 * that LGPLv2 or any later version may be used, or where a choice of which version
27 * of the LGPL is applied is otherwise unspecified.
28 */
29
30#ifndef __WINE_MSACMDRV_H
31#define __WINE_MSACMDRV_H
32
33#include <stdarg.h>
34
35#include <windef.h>
36#include <winbase.h>
37#include <mmsystem.h>
38#include <mmreg.h>
39#include <msacm.h>
40
41/***********************************************************************
42 * Types
43 */
44
45/***********************************************************************
46 * Defines/Enums
47 */
48
49#define MAKE_ACM_VERSION(mjr, mnr, bld) \
50 (((LONG)(mjr)<<24) | ((LONG)(mnr)<<16) | ((LONG)bld))
51
52#define ACMDRVOPENDESC_SECTIONNAME_CHARS
53
54#define ACMDM_DRIVER_NOTIFY (ACMDM_BASE + 1)
55#define ACMDM_DRIVER_DETAILS (ACMDM_BASE + 10)
56
57#define ACMDM_HARDWARE_WAVE_CAPS_INPUT (ACMDM_BASE + 20)
58#define ACMDM_HARDWARE_WAVE_CAPS_OUTPUT (ACMDM_BASE + 21)
59
60#define ACMDM_FORMATTAG_DETAILS (ACMDM_BASE + 25)
61#define ACMDM_FORMAT_DETAILS (ACMDM_BASE + 26)
62#define ACMDM_FORMAT_SUGGEST (ACMDM_BASE + 27)
63
64#define ACMDM_FILTERTAG_DETAILS (ACMDM_BASE + 50)
65#define ACMDM_FILTER_DETAILS (ACMDM_BASE + 51)
66
67#define ACMDM_STREAM_OPEN (ACMDM_BASE + 76)
68#define ACMDM_STREAM_CLOSE (ACMDM_BASE + 77)
69#define ACMDM_STREAM_SIZE (ACMDM_BASE + 78)
70#define ACMDM_STREAM_CONVERT (ACMDM_BASE + 79)
71#define ACMDM_STREAM_RESET (ACMDM_BASE + 80)
72#define ACMDM_STREAM_PREPARE (ACMDM_BASE + 81)
73#define ACMDM_STREAM_UNPREPARE (ACMDM_BASE + 82)
74#define ACMDM_STREAM_UPDATE (ACMDM_BASE + 83)
75
76/***********************************************************************
77 * Structures
78 */
79
80typedef struct _ACMDRVOPENDESCA
81{
82 DWORD cbStruct;
83 FOURCC fccType;
84 FOURCC fccComp;
85 DWORD dwVersion;
86 DWORD dwFlags;
87 DWORD dwError;
88 LPCSTR pszSectionName;
89 LPCSTR pszAliasName;
90 DWORD dnDevNode;
91} ACMDRVOPENDESCA, *PACMDRVOPENDESCA;
92
93typedef struct _ACMDRVOPENDESCW
94{
95 DWORD cbStruct;
96 FOURCC fccType;
97 FOURCC fccComp;
98 DWORD dwVersion;
99 DWORD dwFlags;
100 DWORD dwError;
101 LPCWSTR pszSectionName;
102 LPCWSTR pszAliasName;
103 DWORD dnDevNode;
104} ACMDRVOPENDESCW, *PACMDRVOPENDESCW;
105
106typedef struct _ACMDRVSTREAMINSTANCE
107{
108 DWORD cbStruct;
109 PWAVEFORMATEX pwfxSrc;
110 PWAVEFORMATEX pwfxDst;
111 PWAVEFILTER pwfltr;
112 DWORD_PTR dwCallback;
113 DWORD_PTR dwInstance;
114 DWORD fdwOpen;
115 DWORD fdwDriver;
116 DWORD_PTR dwDriver;
117 HACMSTREAM has;
118} ACMDRVSTREAMINSTANCE, *PACMDRVSTREAMINSTANCE;
119
120typedef struct _ACMDRVSTREAMHEADER *PACMDRVSTREAMHEADER;
121#include <pshpack1.h>
122typedef struct _ACMDRVSTREAMHEADER {
123 DWORD cbStruct;
124 DWORD fdwStatus;
125 DWORD_PTR dwUser;
126 LPBYTE pbSrc;
127 DWORD cbSrcLength;
128 DWORD cbSrcLengthUsed;
129 DWORD_PTR dwSrcUser;
130 LPBYTE pbDst;
131 DWORD cbDstLength;
132 DWORD cbDstLengthUsed;
133 DWORD_PTR dwDstUser;
134
135 DWORD fdwConvert;
136 PACMDRVSTREAMHEADER *padshNext;
137 DWORD fdwDriver;
138 DWORD_PTR dwDriver;
139
140 /* Internal fields for ACM */
141 DWORD fdwPrepared;
142 DWORD_PTR dwPrepared;
143 LPBYTE pbPreparedSrc;
144 DWORD cbPreparedSrcLength;
145 LPBYTE pbPreparedDst;
146 DWORD cbPreparedDstLength;
147} ACMDRVSTREAMHEADER;
148#include <poppack.h>
149
150typedef struct _ACMDRVSTREAMSIZE
151{
152 DWORD cbStruct;
153 DWORD fdwSize;
154 DWORD cbSrcLength;
155 DWORD cbDstLength;
156} ACMDRVSTREAMSIZE, *PACMDRVSTREAMSIZE;
157
158typedef struct _ACMDRVFORMATSUGGEST
159{
160 DWORD cbStruct;
161 DWORD fdwSuggest;
162 PWAVEFORMATEX pwfxSrc;
163 DWORD cbwfxSrc;
164 PWAVEFORMATEX pwfxDst;
165 DWORD cbwfxDst;
166} ACMDRVFORMATSUGGEST, *PACMDRVFORMATSUGGEST;
167
168#endif /* __WINE_MSACMDRV_H */
Note: See TracBrowser for help on using the repository browser.

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