Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
sound
synth
emux
emux_voice.h
Go to the documentation of this file.
1
#ifndef __EMUX_VOICE_H
2
#define __EMUX_VOICE_H
3
4
/*
5
* A structure to keep track of each hardware voice
6
*
7
* Copyright (C) 1999 Steve Ratcliffe
8
* Copyright (c) 1999-2000 Takashi Iwai <
[email protected]
>
9
*
10
* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation; either version 2 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the GNU General Public License
21
* along with this program; if not, write to the Free Software
22
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23
*/
24
25
#include <linux/wait.h>
26
#include <linux/sched.h>
27
#include <
sound/core.h
>
28
#include <
sound/emux_synth.h
>
29
30
/* Prototypes for emux_seq.c */
31
int
snd_emux_init_seq
(
struct
snd_emux
*
emu
,
struct
snd_card
*
card
,
int
index
);
32
void
snd_emux_detach_seq
(
struct
snd_emux
*
emu
);
33
struct
snd_emux_port
*
snd_emux_create_port
(
struct
snd_emux
*
emu
,
char
*
name
,
34
int
max_channels,
int
type
,
35
struct
snd_seq_port_callback
*
callback
);
36
void
snd_emux_reset_port
(
struct
snd_emux_port
*
port
);
37
int
snd_emux_event_input
(
struct
snd_seq_event
*ev,
int
direct
,
void
*
private
,
38
int
atomic,
int
hop);
39
int
snd_emux_inc_count
(
struct
snd_emux
*
emu
);
40
void
snd_emux_dec_count
(
struct
snd_emux
*
emu
);
41
int
snd_emux_init_virmidi
(
struct
snd_emux
*
emu
,
struct
snd_card
*
card
);
42
int
snd_emux_delete_virmidi
(
struct
snd_emux
*
emu
);
43
44
/* Prototypes for emux_synth.c */
45
void
snd_emux_init_voices
(
struct
snd_emux
*
emu
);
46
47
void
snd_emux_note_on
(
void
*
p
,
int
note,
int
vel,
struct
snd_midi_channel
*
chan
);
48
void
snd_emux_note_off
(
void
*
p
,
int
note,
int
vel,
struct
snd_midi_channel
*
chan
);
49
void
snd_emux_key_press
(
void
*
p
,
int
note,
int
vel,
struct
snd_midi_channel
*
chan
);
50
void
snd_emux_terminate_note
(
void
*
p
,
int
note,
struct
snd_midi_channel
*
chan
);
51
void
snd_emux_control
(
void
*
p
,
int
type
,
struct
snd_midi_channel
*
chan
);
52
53
void
snd_emux_sounds_off_all
(
struct
snd_emux_port
*
port
);
54
void
snd_emux_update_channel
(
struct
snd_emux_port
*
port
,
55
struct
snd_midi_channel
*
chan
,
int
update
);
56
void
snd_emux_update_port
(
struct
snd_emux_port
*
port
,
int
update
);
57
58
void
snd_emux_timer_callback
(
unsigned
long
data
);
59
60
/* emux_effect.c */
61
#ifdef SNDRV_EMUX_USE_RAW_EFFECT
62
void
snd_emux_create_effect(
struct
snd_emux_port
*
p
);
63
void
snd_emux_delete_effect(
struct
snd_emux_port
*
p
);
64
void
snd_emux_clear_effect(
struct
snd_emux_port
*
p
);
65
void
snd_emux_setup_effect(
struct
snd_emux_voice
*vp);
66
void
snd_emux_send_effect_oss(
struct
snd_emux_port
*
port
,
67
struct
snd_midi_channel
*
chan
,
int
type
,
int
val
);
68
void
snd_emux_send_effect(
struct
snd_emux_port
*
port
,
69
struct
snd_midi_channel
*
chan
,
int
type
,
int
val
,
int
mode
);
70
#endif
71
72
/* emux_nrpn.c */
73
void
snd_emux_sysex
(
void
*
private_data
,
unsigned
char
*
buf
,
int
len,
74
int
parsed,
struct
snd_midi_channel_set
*
chset
);
75
int
snd_emux_xg_control
(
struct
snd_emux_port
*
port
,
76
struct
snd_midi_channel
*
chan
,
int
param
);
77
void
snd_emux_nrpn
(
void
*
private_data
,
struct
snd_midi_channel
*
chan
,
78
struct
snd_midi_channel_set
*
chset
);
79
80
/* emux_oss.c */
81
void
snd_emux_init_seq_oss
(
struct
snd_emux
*
emu
);
82
void
snd_emux_detach_seq_oss
(
struct
snd_emux
*
emu
);
83
84
/* emux_proc.c */
85
#ifdef CONFIG_PROC_FS
86
void
snd_emux_proc_init(
struct
snd_emux
*
emu
,
struct
snd_card
*
card
,
int
device
);
87
void
snd_emux_proc_free(
struct
snd_emux
*
emu
);
88
#endif
89
90
#define STATE_IS_PLAYING(s) ((s) & SNDRV_EMUX_ST_ON)
91
92
/* emux_hwdep.c */
93
int
snd_emux_init_hwdep
(
struct
snd_emux
*
emu
);
94
void
snd_emux_delete_hwdep
(
struct
snd_emux
*
emu
);
95
96
#endif
Generated on Thu Jan 10 2013 15:08:51 for Linux Kernel by
1.8.2