54 |
%token <Number> NUMBER |
%token <Number> NUMBER |
55 |
%token <String> STRINGVAL |
%token <String> STRINGVAL |
56 |
%token SP LF CR HASH EQ |
%token SP LF CR HASH EQ |
57 |
%token ADD GET CREATE DESTROY LIST LOAD LOAD_BACKGROUND REMOVE SET SUBSCRIBE UNSUBSCRIBE RESET QUIT |
%token ADD GET CREATE DESTROY LIST LOAD NON_MODAL REMOVE SET SUBSCRIBE UNSUBSCRIBE RESET QUIT |
58 |
%token CHANNEL NOTIFICATION |
%token CHANNEL NOTIFICATION |
59 |
%token AVAILABLE_ENGINES AVAILABLE_AUDIO_OUTPUT_DRIVERS CHANNELS INFO BUFFER_FILL STREAM_COUNT VOICE_COUNT |
%token AVAILABLE_ENGINES AVAILABLE_AUDIO_OUTPUT_DRIVERS CHANNELS INFO BUFFER_FILL STREAM_COUNT VOICE_COUNT |
60 |
%token INSTRUMENT ENGINE |
%token INSTRUMENT ENGINE |
61 |
%token AUDIO_OUTPUT_CHANNEL AUDIO_OUTPUT_CHANNEL_PARAMETER AUDIO_OUTPUT_DEVICE AUDIO_OUTPUT_DEVICES AUDIO_OUTPUT_DEVICE_PARAMETER AUDIO_OUTPUT_DRIVER AUDIO_OUTPUT_DRIVER_PARAMETER MIDI_INPUT_PORT MIDI_INPUT_CHANNEL MIDI_INPUT_TYPE VOLUME |
%token AUDIO_OUTPUT_CHANNEL AUDIO_OUTPUT_CHANNEL_PARAMETER AUDIO_OUTPUT_DEVICE AUDIO_OUTPUT_DEVICES AUDIO_OUTPUT_DEVICE_PARAMETER AUDIO_OUTPUT_DRIVER AUDIO_OUTPUT_DRIVER_PARAMETER AUDIO_OUTPUT_TYPE MIDI_INPUT_PORT MIDI_INPUT_CHANNEL MIDI_INPUT_TYPE VOLUME |
62 |
%token BYTES PERCENTAGE |
%token BYTES PERCENTAGE |
63 |
%token MISCELLANEOUS |
%token MISCELLANEOUS |
64 |
|
|
65 |
%type <Dotnum> volume |
%type <Dotnum> volume |
66 |
%type <Number> sampler_channel instrument_index audio_output_channel midi_input_channel |
%type <Number> sampler_channel instrument_index audio_output_channel midi_input_channel |
67 |
%type <String> string param_val filename engine_name midi_input_port command create_instruction destroy_instruction get_instruction list_instruction load_instruction set_chan_instruction load_instr_args load_engine_args midi_input_type set_instruction subscribe_event unsubscribe_event |
%type <String> string param_val filename engine_name midi_input_port command create_instruction destroy_instruction get_instruction list_instruction load_instruction set_chan_instruction load_instr_args load_engine_args audio_output_type midi_input_type set_instruction subscribe_event unsubscribe_event |
68 |
%type <FillResponse> buffer_size_type |
%type <FillResponse> buffer_size_type |
69 |
%type <KeyValList> key_val_list |
%type <KeyValList> key_val_list |
70 |
|
|
98 |
| DESTROY SP destroy_instruction { $$ = $3; } |
| DESTROY SP destroy_instruction { $$ = $3; } |
99 |
| LIST SP list_instruction { $$ = $3; } |
| LIST SP list_instruction { $$ = $3; } |
100 |
| LOAD SP load_instruction { $$ = $3; } |
| LOAD SP load_instruction { $$ = $3; } |
|
| LOAD_BACKGROUND SP load_instruction { $$ = $3; } |
|
101 |
| REMOVE SP CHANNEL SP sampler_channel { $$ = LSCPSERVER->RemoveChannel($5); } |
| REMOVE SP CHANNEL SP sampler_channel { $$ = LSCPSERVER->RemoveChannel($5); } |
102 |
| SET SP set_instruction { $$ = $3; } |
| SET SP set_instruction { $$ = $3; } |
103 |
| SUBSCRIBE SP subscribe_event { $$ = $3; } |
| SUBSCRIBE SP subscribe_event { $$ = $3; } |
145 |
; |
; |
146 |
|
|
147 |
create_instruction : AUDIO_OUTPUT_DEVICE SP string SP key_val_list { $$ = LSCPSERVER->CreateAudioOutputDevice($3,$5); } |
create_instruction : AUDIO_OUTPUT_DEVICE SP string SP key_val_list { $$ = LSCPSERVER->CreateAudioOutputDevice($3,$5); } |
148 |
|
| AUDIO_OUTPUT_DEVICE SP string { $$ = LSCPSERVER->CreateAudioOutputDevice($3); } |
149 |
; |
; |
150 |
|
|
151 |
destroy_instruction : AUDIO_OUTPUT_DEVICE SP NUMBER { $$ = LSCPSERVER->DestroyAudioOutputDevice($3); } |
destroy_instruction : AUDIO_OUTPUT_DEVICE SP NUMBER { $$ = LSCPSERVER->DestroyAudioOutputDevice($3); } |
157 |
|
|
158 |
set_chan_instruction : AUDIO_OUTPUT_DEVICE SP sampler_channel SP NUMBER { $$ = LSCPSERVER->SetAudioOutputDevice($5, $3); } |
set_chan_instruction : AUDIO_OUTPUT_DEVICE SP sampler_channel SP NUMBER { $$ = LSCPSERVER->SetAudioOutputDevice($5, $3); } |
159 |
| AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_output_channel SP audio_output_channel { $$ = LSCPSERVER->SetAudioOutputChannel($5, $7, $3); } |
| AUDIO_OUTPUT_CHANNEL SP sampler_channel SP audio_output_channel SP audio_output_channel { $$ = LSCPSERVER->SetAudioOutputChannel($5, $7, $3); } |
160 |
|
| AUDIO_OUTPUT_TYPE SP sampler_channel SP audio_output_type { $$ = LSCPSERVER->SetAudioOutputType($5, $3); } |
161 |
| MIDI_INPUT_PORT SP sampler_channel SP midi_input_port { $$ = LSCPSERVER->SetMIDIInputPort($5, $3); } |
| MIDI_INPUT_PORT SP sampler_channel SP midi_input_port { $$ = LSCPSERVER->SetMIDIInputPort($5, $3); } |
162 |
| MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel { $$ = LSCPSERVER->SetMIDIInputChannel($5, $3); } |
| MIDI_INPUT_CHANNEL SP sampler_channel SP midi_input_channel { $$ = LSCPSERVER->SetMIDIInputChannel($5, $3); } |
163 |
| MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type { $$ = LSCPSERVER->SetMIDIInputType($5, $3); } |
| MIDI_INPUT_TYPE SP sampler_channel SP midi_input_type { $$ = LSCPSERVER->SetMIDIInputType($5, $3); } |
176 |
; |
; |
177 |
|
|
178 |
load_instr_args : filename SP instrument_index SP sampler_channel { $$ = LSCPSERVER->LoadInstrument($1, $3, $5); } |
load_instr_args : filename SP instrument_index SP sampler_channel { $$ = LSCPSERVER->LoadInstrument($1, $3, $5); } |
179 |
|
| NON_MODAL SP filename SP instrument_index SP sampler_channel { $$ = LSCPSERVER->LoadInstrument($3, $5, $7, true); } |
180 |
; |
; |
181 |
|
|
182 |
load_engine_args : engine_name SP sampler_channel { $$ = LSCPSERVER->LoadEngine($1, $3); } |
load_engine_args : engine_name SP sampler_channel { $$ = LSCPSERVER->LoadEngine($1, $3); } |
183 |
; |
; |
184 |
|
|
185 |
|
audio_output_type : string |
186 |
|
; |
187 |
|
|
188 |
midi_input_type : string |
midi_input_type : string |
189 |
; |
; |
190 |
|
|
211 |
; |
; |
212 |
|
|
213 |
filename : STRINGVAL |
filename : STRINGVAL |
214 |
|
| string |
215 |
; |
; |
216 |
|
|
217 |
param_val : STRINGVAL { $$ = $1; } |
param_val : STRINGVAL { $$ = $1; } |