snd_midi_channel
struct snd_midi_channel *chan; /* Midi channel for this note */
struct snd_midi_channel *chan; /* Midi channel for this note */
struct snd_midi_channel channels[] __counted_by(max_channels);
void (*note_on)(void *private_data, int note, int vel, struct snd_midi_channel *chan);
void (*note_off)(void *private_data,int note, int vel, struct snd_midi_channel *chan); /* release note */
void (*key_press)(void *private_data, int note, int vel, struct snd_midi_channel *chan);
void (*note_terminate)(void *private_data, int note, struct snd_midi_channel *chan); /* terminate note immediately */
void (*control)(void *private_data, int type, struct snd_midi_channel *chan);
void (*nrpn)(void *private_data, struct snd_midi_channel *chan,
struct snd_midi_channel *chan,
struct snd_midi_channel *chan, int control, int value)
struct snd_midi_channel *chan,
struct snd_midi_channel *chan,
struct snd_midi_channel *chan = chset->channels + i;
rpn(const struct snd_midi_op *ops, void *drv, struct snd_midi_channel *chan,
struct snd_midi_channel *chan,
struct snd_midi_channel *chan,
nrpn(const struct snd_midi_op *ops, void *drv, struct snd_midi_channel *chan,
struct snd_midi_channel *chan);
struct snd_midi_channel *chan);
static void snd_midi_reset_controllers(struct snd_midi_channel *chan);
struct snd_midi_channel *chan)
struct snd_midi_channel *chan)
static void snd_midi_channel_init(struct snd_midi_channel *p, int n)
memset(p, 0, sizeof(struct snd_midi_channel));
struct snd_midi_channel *chan = chset->channels + ch;
static void snd_midi_reset_controllers(struct snd_midi_channel *chan)
struct snd_midi_channel *chan;
int vel, struct snd_midi_channel *chan)
struct snd_midi_channel *chan)
struct snd_midi_channel *chan) {
struct snd_midi_channel *chan);
void snd_opl3_note_on(void *p, int note, int vel, struct snd_midi_channel *chan)
struct snd_midi_channel *chan)
struct snd_midi_channel *chan)
struct snd_midi_channel *chan)
void snd_opl3_key_press(void *p, int note, int vel, struct snd_midi_channel *chan)
void snd_opl3_terminate_note(void *p, int note, struct snd_midi_channel *chan)
static void snd_opl3_pitch_ctrl(struct snd_opl3 *opl3, struct snd_midi_channel *chan)
void snd_opl3_control(void *p, int type, struct snd_midi_channel *chan)
void snd_opl3_nrpn(void *p, struct snd_midi_channel *chan,
int note, struct snd_midi_channel *chan)
void snd_opl3_note_on(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_opl3_note_off(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_opl3_key_press(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_opl3_terminate_note(void *p, int note, struct snd_midi_channel *chan);
void snd_opl3_control(void *p, int type, struct snd_midi_channel *chan);
void snd_opl3_nrpn(void *p, struct snd_midi_channel *chan, struct snd_midi_channel_set *chset);
void snd_opl3_calc_volume(unsigned char *reg, int vel, struct snd_midi_channel *chan);
void snd_opl3_drum_switch(struct snd_opl3 *opl3, int note, int vel, int on_off, struct snd_midi_channel *chan);
struct snd_midi_channel *chan;
void snd_opl4_note_on(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_opl4_note_off(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_opl4_terminate_note(void *p, int note, struct snd_midi_channel *chan);
void snd_opl4_control(void *p, int type, struct snd_midi_channel *chan);
static void snd_opl4_do_for_note(struct snd_opl4 *opl4, int note, struct snd_midi_channel *chan,
struct snd_midi_channel *chan,
struct snd_midi_channel *chan = voice->chan;
void snd_opl4_note_on(void *private_data, int note, int vel, struct snd_midi_channel *chan)
void snd_opl4_note_off(void *private_data, int note, int vel, struct snd_midi_channel *chan)
void snd_opl4_terminate_note(void *private_data, int note, struct snd_midi_channel *chan)
void snd_opl4_control(void *private_data, int type, struct snd_midi_channel *chan)
struct snd_midi_channel *chan;
struct snd_midi_channel *chan;
effect_set_word(unsigned short *valp, struct snd_midi_channel *chan, int type)
effect_get_offset(struct snd_midi_channel *chan, int lo, int hi, int mode)
struct snd_midi_channel *chan, int type, int val)
snd_emux_send_effect(struct snd_emux_port *port, struct snd_midi_channel *chan,
struct snd_midi_channel *chan = vp->chan;
effect_set_byte(unsigned char *valp, struct snd_midi_channel *chan, int type)
snd_emux_nrpn(void *p, struct snd_midi_channel *chan,
snd_emux_xg_control(struct snd_emux_port *port, struct snd_midi_channel *chan,
struct snd_midi_channel *chan,
struct snd_midi_channel *chan;
struct snd_midi_channel *chan;
struct snd_midi_channel *chan = port->chset.channels + i;
snd_emux_note_off(void *p, int note, int vel, struct snd_midi_channel *chan)
snd_emux_key_press(void *p, int note, int vel, struct snd_midi_channel *chan)
snd_emux_update_channel(struct snd_emux_port *port, struct snd_midi_channel *chan, int update)
int *notep, int vel, struct snd_midi_channel *chan,
static int get_bank(struct snd_emux_port *port, struct snd_midi_channel *chan);
snd_emux_control(void *p, int type, struct snd_midi_channel *chan)
struct snd_midi_channel *chan, int free);
terminate_note1(struct snd_emux *emu, int note, struct snd_midi_channel *chan, int free)
snd_emux_terminate_note(void *p, int note, struct snd_midi_channel *chan)
snd_emux_note_on(void *p, int note, int vel, struct snd_midi_channel *chan)
struct snd_midi_channel *chan = vp->chan;
struct snd_midi_channel *chan = vp->chan;
struct snd_midi_channel *chan = vp->chan;
get_bank(struct snd_emux_port *port, struct snd_midi_channel *chan)
int *notep, int vel, struct snd_midi_channel *chan,
void snd_emux_note_on(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_emux_note_off(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_emux_key_press(void *p, int note, int vel, struct snd_midi_channel *chan);
void snd_emux_terminate_note(void *p, int note, struct snd_midi_channel *chan);
void snd_emux_control(void *p, int type, struct snd_midi_channel *chan);
struct snd_midi_channel *chan, int update);
struct snd_midi_channel *chan, int type, int val);
struct snd_midi_channel *chan, int type, int val, int mode);
struct snd_midi_channel *chan, int param);
void snd_emux_nrpn(void *private_data, struct snd_midi_channel *chan,