A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita
audio
rust
zig
deno
mpris
rockbox
mpd
1/* MikMod sound library
2 (c) 1998, 1999 Miodrag Vallat and others - see file AUTHORS for
3 complete list.
4
5 This library is free software; you can redistribute it and/or modify
6 it under the terms of the GNU Library General Public License as
7 published by the Free Software Foundation; either version 2 of
8 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
13 GNU Library General Public License for more details.
14
15 You should have received a copy of the GNU Library General Public
16 License along with this library; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
18 02111-1307, USA.
19*/
20
21/*==============================================================================
22
23 Routine for registering all drivers in libmikmod for the current platform.
24
25==============================================================================*/
26
27#ifdef HAVE_CONFIG_H
28#include "config.h"
29#endif
30
31#include "mikmod_internals.h"
32
33static void _mm_registeralldrivers(void)
34{
35 /* Register network drivers */
36#ifdef DRV_AF
37 _mm_registerdriver(&drv_AF);
38#endif
39#ifdef DRV_PULSEAUDIO
40 _mm_registerdriver(&drv_pulseaudio);
41#endif
42#ifdef DRV_ESD
43 _mm_registerdriver(&drv_esd);
44#endif
45#ifdef DRV_NAS
46 _mm_registerdriver(&drv_nas);
47#endif
48
49 /* Register hardware drivers - hardware mixing */
50#ifdef DRV_ULTRA
51 _mm_registerdriver(&drv_ultra);
52#endif
53#ifdef DRV_SAM9407
54 _mm_registerdriver(&drv_sam9407);
55#endif
56
57 /* Register multi-platform drivers -- software mixing */
58#ifdef DRV_SDL
59 _mm_registerdriver(&drv_sdl);
60#endif
61#ifdef DRV_OPENAL
62 _mm_registerdriver(&drv_openal);
63#endif
64
65 /* Register OS-specific hardware drivers - software mixing */
66#ifdef DRV_AHI
67 _mm_registerdriver(&drv_ahi);
68#endif
69#ifdef DRV_AIX
70 _mm_registerdriver(&drv_aix);
71#endif
72#ifdef DRV_ALSA
73 _mm_registerdriver(&drv_alsa);
74#endif
75#ifdef DRV_HP
76 _mm_registerdriver(&drv_hp);
77#endif
78#ifdef DRV_SNDIO
79 _mm_registerdriver(&drv_sndio);
80#endif
81#ifdef DRV_OSS
82 _mm_registerdriver(&drv_oss);
83#endif
84#ifdef DRV_SGI
85 _mm_registerdriver(&drv_sgi);
86#endif
87#ifdef DRV_SUN
88 _mm_registerdriver(&drv_sun);
89#endif
90#ifdef DRV_DART
91 _mm_registerdriver(&drv_dart);
92#endif
93#ifdef DRV_OS2
94 _mm_registerdriver(&drv_os2);
95#endif
96#ifdef DRV_XAUDIO2
97 _mm_registerdriver(&drv_xaudio2);
98#endif
99#ifdef DRV_DS
100 _mm_registerdriver(&drv_ds);
101#endif
102#ifdef DRV_WIN
103 _mm_registerdriver(&drv_win);
104#endif
105#ifdef DRV_MAC
106 _mm_registerdriver(&drv_mac);
107#endif
108#ifdef DRV_OSX
109 _mm_registerdriver(&drv_osx);
110#endif
111#ifdef DRV_DC
112 _mm_registerdriver(&drv_dc);
113#endif
114#ifdef DRV_GP32
115 _mm_registerdriver(&drv_gp32);
116#endif
117#ifdef DRV_PSP
118 _mm_registerdriver(&drv_psp);
119#endif
120#ifdef DRV_OSLES
121 _mm_registerdriver(&drv_osles);
122#endif
123#ifdef DRV_N64
124 _mm_registerdriver(&drv_n64);
125#endif
126
127 /* dos drivers - wss first, since some cards emulate sb */
128#ifdef DRV_WSS
129 _mm_registerdriver(&drv_wss);
130#endif
131#ifdef DRV_SB
132 _mm_registerdriver(&drv_sb);
133#endif
134
135 /* Register disk writers */
136#ifdef DRV_WAV
137 _mm_registerdriver(&drv_wav);
138#endif
139#ifdef DRV_AIFF
140 _mm_registerdriver(&drv_aiff);
141#endif
142#ifdef DRV_RAW
143 _mm_registerdriver(&drv_raw);
144#endif
145
146 /* Register other drivers */
147#ifdef DRV_PIPE
148 _mm_registerdriver(&drv_pipe);
149#endif
150#if defined(DRV_STDOUT) && !defined(macintosh)
151 _mm_registerdriver(&drv_stdout);
152#endif
153
154 /* Register 'nosound' driver */
155 _mm_registerdriver(&drv_nos);
156}
157
158MIKMODAPI void MikMod_RegisterAllDrivers(void)
159{
160 MUTEX_LOCK(lists);
161 _mm_registeralldrivers();
162 MUTEX_UNLOCK(lists);
163}
164
165/* ex:set ts=4: */