/[svn]/liblscp/trunk/examples/example_server.c
ViewVC logotype

Diff of /liblscp/trunk/examples/example_server.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 171 by capela, Mon Jul 5 16:26:44 2004 UTC revision 188 by capela, Thu Jul 8 09:13:36 2004 UTC
# Line 160  lscp_status_t server_callback ( lscp_con Line 160  lscp_status_t server_callback ( lscp_con
160                              "DEPENDS: channels,samplerate,card\r\n"                              "DEPENDS: channels,samplerate,card\r\n"
161                              "DEFAULT: TRUE\r\n"                              "DEFAULT: TRUE\r\n"
162                              "RANGE_MIN: FALSE\r\n"                              "RANGE_MIN: FALSE\r\n"
163                              "RANGE_MIN: TRUE\r\n"                              "RANGE_MAX: TRUE\r\n"
164                              "POSSIBILITIES: FALSE,TRUE\r\n";                              "POSSIBILITIES: FALSE,TRUE\r\n";
165              }              }
166              else if (lscp_parser_test2(&tok, "Jack", "active")) {              else if (lscp_parser_test2(&tok, "Jack", "active")) {
# Line 172  lscp_status_t server_callback ( lscp_con Line 172  lscp_status_t server_callback ( lscp_con
172                              "DEPENDS: channels,samplerate\r\n"                              "DEPENDS: channels,samplerate\r\n"
173                              "DEFAULT: TRUE\r\n"                              "DEFAULT: TRUE\r\n"
174                              "RANGE_MIN: FALSE\r\n"                              "RANGE_MIN: FALSE\r\n"
175                              "RANGE_MIN: TRUE\r\n"                              "RANGE_MAX: TRUE\r\n"
176                              "POSSIBILITIES: FALSE,TRUE\r\n";                              "POSSIBILITIES: FALSE,TRUE\r\n";
177              }              }
178              else ret = LSCP_FAILED;              else ret = LSCP_FAILED;
# Line 189  lscp_status_t server_callback ( lscp_con Line 189  lscp_status_t server_callback ( lscp_con
189                              "DEPENDS: channels,ports\r\n"                              "DEPENDS: channels,ports\r\n"
190                              "DEFAULT: TRUE\r\n"                              "DEFAULT: TRUE\r\n"
191                              "RANGE_MIN: FALSE\r\n"                              "RANGE_MIN: FALSE\r\n"
192                              "RANGE_MIN: TRUE\r\n"                              "RANGE_MAX: TRUE\r\n"
193                              "POSSIBILITIES: FALSE,TRUE\r\n";                              "POSSIBILITIES: FALSE,TRUE\r\n";
194              }              }
195              else ret = LSCP_FAILED;              else ret = LSCP_FAILED;
# Line 216  lscp_status_t server_callback ( lscp_con Line 216  lscp_status_t server_callback ( lscp_con
216              }              }
217              else ret = LSCP_FAILED;              else ret = LSCP_FAILED;
218          }          }
219            else if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICES")) {
220                // Getting all created audio output device count.
221                // GET AUDIO_OUTPUT_DEVICES
222                sprintf(szTemp, "%d\r\n", iAudioDevice);
223                pszResult = szTemp;
224            }
225            else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICES")) {
226                // Getting all created MID input device count.
227                // GET MIDI_INPUT_DEVICES
228                sprintf(szTemp, "%d\r\n", iMidiDevice);
229                pszResult = szTemp;
230            }
231          else if (lscp_parser_test(&tok, "AVAILABLE_ENGINES")) {          else if (lscp_parser_test(&tok, "AVAILABLE_ENGINES")) {
232              // Getting all available engines:              // Getting all available engines:
233              // GET AVAILABLE_ENGINES              // GET AVAILABLE_ENGINES
# Line 243  lscp_status_t server_callback ( lscp_con Line 255  lscp_status_t server_callback ( lscp_con
255      else if (lscp_parser_test(&tok, "LIST")) {      else if (lscp_parser_test(&tok, "LIST")) {
256          if (lscp_parser_test(&tok, "CHANNELS")) {          if (lscp_parser_test(&tok, "CHANNELS")) {
257              // Getting all created sampler channel list.              // Getting all created sampler channel list.
258              // GET CHANNELS              // LIST CHANNELS
259              if (iSamplerChannel > 0) {              if (iSamplerChannel > 0) {
260                  strcpy(szTemp, "0");                  strcpy(szTemp, "0");
261                  for (i = 1; i < iSamplerChannel; i++)                  for (i = 1; i < iSamplerChannel && strlen(szTemp) < sizeof(szTemp) - 8; i++)
262                      sprintf(szTemp + strlen(szTemp), ",%d", i);                      sprintf(szTemp + strlen(szTemp), ",%d", i);
263                  strcat(szTemp, "\r\n");                  strcat(szTemp, "\r\n");
264                  pszResult = szTemp;                  pszResult = szTemp;
# Line 255  lscp_status_t server_callback ( lscp_con Line 267  lscp_status_t server_callback ( lscp_con
267          }          }
268          else if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICES")) {          else if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICES")) {
269              // Getting all created audio output device list.              // Getting all created audio output device list.
270              // GET AUDIO_OUTPUT_DEVICES              // LIST AUDIO_OUTPUT_DEVICES
271              if (iAudioDevice > 0) {              if (iAudioDevice > 0) {
272                  strcpy(szTemp, "0");                  strcpy(szTemp, "0");
273                  for (i = 1; i < iAudioDevice; i++)                  for (i = 1; i < iAudioDevice && strlen(szTemp) < sizeof(szTemp) - 8; i++)
274                      sprintf(szTemp + strlen(szTemp), ",%d", i);                      sprintf(szTemp + strlen(szTemp), ",%d", i);
275                  strcat(szTemp, "\r\n");                  strcat(szTemp, "\r\n");
276                  pszResult = szTemp;                  pszResult = szTemp;
# Line 267  lscp_status_t server_callback ( lscp_con Line 279  lscp_status_t server_callback ( lscp_con
279          }          }
280          else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICES")) {          else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICES")) {
281              // Getting all created MID input device list.              // Getting all created MID input device list.
282              // GET MIDI_INPUT_DEVICES              // LIST MIDI_INPUT_DEVICES
283              if (iMidiDevice > 0) {              if (iMidiDevice > 0) {
284                  strcpy(szTemp, "0");                  strcpy(szTemp, "0");
285                  for (i = 1; i < iMidiDevice; i++)                  for (i = 1; i < iMidiDevice && strlen(szTemp) < sizeof(szTemp) - 8; i++)
286                      sprintf(szTemp + strlen(szTemp), ",%d", i);                      sprintf(szTemp + strlen(szTemp), ",%d", i);
287                  strcat(szTemp, "\r\n");                  strcat(szTemp, "\r\n");
288                  pszResult = szTemp;                  pszResult = szTemp;
# Line 331  lscp_status_t server_callback ( lscp_con Line 343  lscp_status_t server_callback ( lscp_con
343      else if (lscp_parser_test2(&tok, "ADD", "CHANNEL")) {      else if (lscp_parser_test2(&tok, "ADD", "CHANNEL")) {
344          // Adding a new sampler channel:          // Adding a new sampler channel:
345          // ADD CHANNEL          // ADD CHANNEL
346          sprintf(szTemp, "OK[%d]", iSamplerChannel++);          if (iSamplerChannel < 16) {
347          pszResult = szTemp;              sprintf(szTemp, "OK[%d]", iSamplerChannel++);        
348                pszResult = szTemp;
349            } else {
350                iSamplerChannel = 0;
351                ret = LSCP_FAILED;
352            }
353      }      }
354      else if (lscp_parser_test2(&tok, "REMOVE", "CHANNEL")) {      else if (lscp_parser_test2(&tok, "REMOVE", "CHANNEL")) {
355          // Removing a sampler channel:          // Removing a sampler channel:
356          // REMOVE CHANNEL <sampler-channel>          // REMOVE CHANNEL <sampler-channel>
357          if (lscp_parser_nextint(&tok) > iSamplerChannel)          if (lscp_parser_nextint(&tok) < iSamplerChannel)
358                iSamplerChannel--;
359            else
360              ret = LSCP_FAILED;              ret = LSCP_FAILED;
361      }      }
362      else if (lscp_parser_test2(&tok, "RESET", "CHANNEL")) {      else if (lscp_parser_test2(&tok, "RESET", "CHANNEL")) {
# Line 350  lscp_status_t server_callback ( lscp_con Line 369  lscp_status_t server_callback ( lscp_con
369          if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICE")) {          if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICE")) {
370              // Creating an audio output device.              // Creating an audio output device.
371              // CREATE AUDIO_OUTPUT_DEVICE <audio-output-driver> [<params>]              // CREATE AUDIO_OUTPUT_DEVICE <audio-output-driver> [<params>]
372              sprintf(szTemp, "OK[%d]", iAudioDevice++);              if (iAudioDevice < 8) {
373              pszResult = szTemp;                  sprintf(szTemp, "OK[%d]", iAudioDevice++);
374                    pszResult = szTemp;
375                } else {
376                    iAudioDevice = 0;
377                    ret = LSCP_FAILED;
378                }
379          }          }
380          else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICE")) {          else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICE")) {
381              // Creating an MIDI input device.              // Creating an MIDI input device.
382              // CREATE MIDI_INPUT_DEVICE <midi-input-driver> [<params>]              // CREATE MIDI_INPUT_DEVICE <midi-input-driver> [<params>]
383              sprintf(szTemp, "OK[%d]", iMidiDevice++);              if (iMidiDevice < 8) {
384              pszResult = szTemp;                  sprintf(szTemp, "OK[%d]", iMidiDevice++);
385                    pszResult = szTemp;
386                } else {
387                    iMidiDevice = 0;
388                    ret = LSCP_FAILED;
389                }
390          }          }
391          else ret = LSCP_FAILED;          else ret = LSCP_FAILED;
392      }      }
# Line 365  lscp_status_t server_callback ( lscp_con Line 394  lscp_status_t server_callback ( lscp_con
394          if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICE")) {          if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICE")) {
395              // Destroying an audio output device.              // Destroying an audio output device.
396              // DESTROY AUDIO_OUTPUT_DEVICE <audio-device-id>              // DESTROY AUDIO_OUTPUT_DEVICE <audio-device-id>
397              if (lscp_parser_nextint(&tok) > iAudioDevice)              if (lscp_parser_nextint(&tok) < iAudioDevice)
398                    iAudioDevice--;
399                else
400                  ret = LSCP_FAILED;                  ret = LSCP_FAILED;
401          }          }
402          else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICE")) {          else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICE")) {
403              // Destroying an MIDI intput device.              // Destroying an MIDI intput device.
404              // DESTROY MIDI_INPUT_DEVICE <midi-device-id>              // DESTROY MIDI_INPUT_DEVICE <midi-device-id>
405              if (lscp_parser_nextint(&tok) > iMidiDevice)              if (lscp_parser_nextint(&tok) < iMidiDevice)
406                    iMidiDevice--;
407                else
408                  ret = LSCP_FAILED;                  ret = LSCP_FAILED;
409          }          }
410          else ret = LSCP_FAILED;          else ret = LSCP_FAILED;

Legend:
Removed from v.171  
changed lines
  Added in v.188

  ViewVC Help
Powered by ViewVC