#ifndef __SOUND_EMUX_SYNTH_H
#define __SOUND_EMUX_SYNTH_H
#include <sound/seq_kernel.h>
#include <sound/seq_device.h>
#include <sound/soundfont.h>
#include <sound/seq_midi_emul.h>
#include <sound/seq_oss.h>
#include <sound/emux_legacy.h>
#include <sound/seq_virmidi.h>
#define SNDRV_EMUX_USE_RAW_EFFECT
struct snd_emux;
struct snd_emux_port;
struct snd_emux_voice;
struct snd_emux_effect_table;
struct snd_emux_operators { … };
#define SNDRV_EMUX_MAX_PORTS …
#define SNDRV_EMUX_MAX_VOICES …
#define SNDRV_EMUX_MAX_MULTI_VOICES …
#define SNDRV_EMUX_ACCEPT_ROM …
struct snd_emux { … };
struct snd_emux_port { … };
#define SNDRV_EMUX_PORT_MODE_MIDI …
#define SNDRV_EMUX_PORT_MODE_OSS_SYNTH …
#define SNDRV_EMUX_PORT_MODE_OSS_MIDI …
struct snd_emux_voice { … };
#define SNDRV_EMUX_UPDATE_VOLUME …
#define SNDRV_EMUX_UPDATE_PITCH …
#define SNDRV_EMUX_UPDATE_PAN …
#define SNDRV_EMUX_UPDATE_FMMOD …
#define SNDRV_EMUX_UPDATE_TREMFREQ …
#define SNDRV_EMUX_UPDATE_FM2FRQ2 …
#define SNDRV_EMUX_UPDATE_Q …
#ifdef SNDRV_EMUX_USE_RAW_EFFECT
struct snd_emux_effect_table { … };
#endif
int snd_emux_new(struct snd_emux **remu);
int snd_emux_register(struct snd_emux *emu, struct snd_card *card, int index, char *name);
int snd_emux_free(struct snd_emux *emu);
void snd_emux_terminate_all(struct snd_emux *emu);
void snd_emux_lock_voice(struct snd_emux *emu, int voice);
void snd_emux_unlock_voice(struct snd_emux *emu, int voice);
#endif