- Create KD branch. All debugging support is removed in this branch (no symbols,...
[reactos.git] / reactos / dll / directx / dsound / dxroslayer / dxros_layer.h
1 /*
2 * License as published by the Free Software Foundation; either
3 * version 2.1 of the License, or (at your option) any later version.
4 *
5 * This library is distributed in the hope that it will be useful,
6 * but WITHOUT ANY WARRANTY; without even the implied warranty of
7 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
8 * Lesser General Public License for more details.
9 *
10 * You should have received a copy of the GNU Lesser General Public
11 * License along with this library; if not, write to the Free Software
12 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
13 *
14 * ReactOS emulation layer betwin wine and windows api for directx
15 * This transform wine specfiy api to native reactos/windows api
16 * wine have done some hack to geting dsound working. But does
17 * hack does not work on windows or reactos. It need to warp thuse
18 * api hack to true native api.
19 *
20 * this include file really need to be clean up.
21 *
22 * copyright 2004 by magnus olsen
23 */
24
25 #ifdef __REACTOS__
26 #include <mmsystem.h>
27
28 // wine spec
29 #define MAXWAVEDRIVERS 10
30 #define MAXMIDIDRIVERS 10
31 #define MAXAUXDRIVERS 10
32 #define MAXMCIDRIVERS 32
33 #define MAXMIXERDRIVERS 10
34
35 /* where */
36 #ifdef RC_INVOKED
37 #define _HRESULT_TYPEDEF_(x) (x)
38 #else
39 #define _HRESULT_TYPEDEF_(x) ((HRESULT)x)
40 #endif
41
42 /* wine own api */
43 #define DRV_QUERYDSOUNDIFACE (DRV_RESERVED + 20)
44 #define DRV_QUERYDSOUNDDESC (DRV_RESERVED + 21)
45
46 #define WineWaveOutMessage RosWineWaveOutMessage
47 #define WineWaveInMessage RosWineWaveInMessage
48
49 #else
50 #define WineWaveOutMessage WaveOutMessage
51 #define WineWaveInMessage WaveInMessage
52 #endif
53
54
55 /* dxroslayers prototypes */
56 void dxGetGuidFromString( char *in_str, GUID *guid );
57
58 DWORD dxrosdrv_drv_querydsounddesc(int type, HWAVEOUT hwo_out,HWAVEIN hwo_in, PDSDRIVERDESC pDESC);
59 DWORD dxrosdrv_drv_querydsoundiface(HWAVEIN wDevID, PIDSDRIVER* drv);
60
61 DWORD RosWineWineWaveOutMessage(HWAVEOUT hwo, UINT , DWORD_PTR , DWORD_PTR );
62 DWORD RosWineWineWaveInMessage(HWAVEIN , UINT , DWORD_PTR , DWORD_PTR );