/[svn]/linuxsampler/trunk/src/network/lscpparser.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/network/lscpparser.cpp

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

revision 138 by senkov, Sun Jun 20 23:18:24 2004 UTC revision 141 by senkov, Mon Jun 21 01:21:33 2004 UTC
# Line 68  Line 68 
68       DESTROY = 270,       DESTROY = 270,
69       LIST = 271,       LIST = 271,
70       LOAD = 272,       LOAD = 272,
71       LOAD_BACKGROUND = 273,       NON_MODAL = 273,
72       REMOVE = 274,       REMOVE = 274,
73       SET = 275,       SET = 275,
74       SUBSCRIBE = 276,       SUBSCRIBE = 276,
# Line 117  Line 117 
117  #define DESTROY 270  #define DESTROY 270
118  #define LIST 271  #define LIST 271
119  #define LOAD 272  #define LOAD 272
120  #define LOAD_BACKGROUND 273  #define NON_MODAL 273
121  #define REMOVE 274  #define REMOVE 274
122  #define SET 275  #define SET 275
123  #define SUBSCRIBE 276  #define SUBSCRIBE 276
# Line 179  extern void yyrestart(FILE* input_file, Line 179  extern void yyrestart(FILE* input_file,
179  // we provide our own version of yyerror() so we don't have to link against the yacc library  // we provide our own version of yyerror() so we don't have to link against the yacc library
180  void yyerror(const char* s);  void yyerror(const char* s);
181    
 bool background;  
182    
183    
184  /* Enabling traces.  */  /* Enabling traces.  */
# Line 208  typedef int YYSTYPE; Line 207  typedef int YYSTYPE;
207    
208    
209  /* Line 214 of yacc.c.  */  /* Line 214 of yacc.c.  */
210  #line 211 "y.tab.c"  #line 210 "y.tab.c"
211    
212  #if ! defined (yyoverflow) || YYERROR_VERBOSE  #if ! defined (yyoverflow) || YYERROR_VERBOSE
213    
# Line 305  union yyalloc Line 304  union yyalloc
304  #endif  #endif
305    
306  /* YYFINAL -- State number of the termination state. */  /* YYFINAL -- State number of the termination state. */
307  #define YYFINAL  32  #define YYFINAL  30
308  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
309  #define YYLAST   219  #define YYLAST   217
310    
311  /* YYNTOKENS -- Number of terminals. */  /* YYNTOKENS -- Number of terminals. */
312  #define YYNTOKENS  50  #define YYNTOKENS  50
# Line 316  union yyalloc Line 315  union yyalloc
315  /* YYNRULES -- Number of rules. */  /* YYNRULES -- Number of rules. */
316  #define YYNRULES  89  #define YYNRULES  89
317  /* YYNRULES -- Number of states. */  /* YYNRULES -- Number of states. */
318  #define YYNSTATES  228  #define YYNSTATES  232
319    
320  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
321  #define YYUNDEFTOK  2  #define YYUNDEFTOK  2
# Line 368  static const unsigned short yyprhs[] = Line 367  static const unsigned short yyprhs[] =
367  {  {
368         0,     0,     3,     5,     9,    14,    15,    17,    19,    21,         0,     0,     3,     5,     9,    14,    15,    17,    19,    21,
369        23,    26,    29,    32,    35,    39,    43,    47,    51,    55,        23,    26,    29,    32,    35,    39,    43,    47,    51,    55,
370        59,    63,    69,    73,    77,    81,    87,    89,    91,    93,        59,    65,    69,    73,    77,    83,    85,    87,    89,    91,
371        95,    97,    99,   101,   103,   105,   107,   109,   111,   113,        93,    95,    97,    99,   101,   103,   105,   107,   109,   111,
372       115,   117,   123,   131,   141,   143,   149,   157,   167,   169,       113,   119,   127,   137,   139,   145,   153,   163,   165,   171,
373       175,   183,   189,   195,   201,   209,   219,   223,   229,   233,       179,   185,   191,   197,   205,   215,   219,   225,   229,   233,
374       237,   241,   245,   251,   259,   265,   271,   277,   283,   287,       237,   241,   247,   255,   261,   267,   273,   279,   283,   289,
375       293,   295,   297,   299,   305,   309,   311,   313,   315,   317,       291,   293,   295,   301,   309,   313,   315,   317,   319,   321,
376       319,   321,   323,   325,   327,   329,   331,   333,   335,   337       323,   325,   327,   329,   331,   333,   335,   337,   339,   341
377  };  };
378    
379  /* YYRHS -- A `-1'-separated list of the rules' RHS. */  /* YYRHS -- A `-1'-separated list of the rules' RHS. */
# Line 385  static const yysigned_char yyrhs[] = Line 384  static const yysigned_char yyrhs[] =
384        -1,    10,    -1,    53,    10,    -1,    53,     7,    -1,    53,        -1,    10,    -1,    53,    10,    -1,    53,     7,    -1,    53,
385         5,    -1,    53,    78,    -1,    12,     7,    25,    -1,    13,         5,    -1,    53,    78,    -1,    12,     7,    25,    -1,    13,
386         7,    57,    -1,    14,     7,    59,    -1,    15,     7,    60,         7,    57,    -1,    14,     7,    59,    -1,    15,     7,    60,
387        -1,    16,     7,    65,    -1,    17,     7,    61,    -1,    18,        -1,    16,     7,    65,    -1,    17,     7,    61,    -1,    19,
388         7,    61,    -1,    19,     7,    25,     7,    70,    -1,    20,         7,    25,     7,    70,    -1,    20,     7,    58,    -1,    21,
389         7,    58,    -1,    21,     7,    55,    -1,    22,     7,    56,         7,    55,    -1,    22,     7,    56,    -1,    23,     7,    25,
390        -1,    23,     7,    25,     7,    70,    -1,    24,    -1,    29,         7,    70,    -1,    24,    -1,    29,    -1,    33,    -1,    32,
391        -1,    33,    -1,    32,    -1,    31,    -1,    30,    -1,    49,        -1,    31,    -1,    30,    -1,    49,    -1,    29,    -1,    33,
392        -1,    29,    -1,    33,    -1,    32,    -1,    31,    -1,    30,        -1,    32,    -1,    31,    -1,    30,    -1,    49,    -1,    27,
393        -1,    49,    -1,    27,    -1,    28,    -1,    41,     7,    30,        -1,    28,    -1,    41,     7,    30,     7,    78,    -1,    42,
394         7,    78,    -1,    42,     7,    30,     7,    78,     7,    78,         7,    30,     7,    78,     7,    78,    -1,    42,     7,    30,
395        -1,    42,     7,    30,     7,    78,     7,    78,     7,    63,         7,    78,     7,    78,     7,    63,    -1,    39,    -1,    38,
396        -1,    39,    -1,    38,     7,    30,     7,     5,    -1,    36,         7,    30,     7,     5,    -1,    36,     7,    30,     7,     5,
397         7,    30,     7,     5,     7,     5,    -1,    37,     7,    30,         7,     5,    -1,    37,     7,    30,     7,     5,     7,     5,
398         7,     5,     7,     5,     7,    78,    -1,    29,    -1,    25,         7,    78,    -1,    29,    -1,    25,     7,    30,     7,    70,
399         7,    30,     7,    70,    -1,    25,     7,    31,     7,    64,        -1,    25,     7,    31,     7,    64,     7,    70,    -1,    25,
400         7,    70,    -1,    25,     7,    32,     7,    70,    -1,    25,         7,    32,     7,    70,    -1,    25,     7,    33,     7,    70,
401         7,    33,     7,    70,    -1,    35,     7,    30,     7,    74,        -1,    35,     7,    30,     7,    74,    -1,    40,     7,     5,
402        -1,    40,     7,     5,     7,    78,    11,    77,    -1,    37,         7,    78,    11,    77,    -1,    37,     7,     5,     7,     5,
403         7,     5,     7,     5,     7,    78,    11,    77,    -1,    25,         7,    78,    11,    77,    -1,    25,     7,    62,    -1,    38,
404         7,    62,    -1,    38,     7,    78,     7,    63,    -1,    38,         7,    78,     7,    63,    -1,    38,     7,    78,    -1,    38,
405         7,    78,    -1,    38,     7,     5,    -1,    34,     7,    66,         7,     5,    -1,    34,     7,    66,    -1,    35,     7,    67,
406        -1,    35,     7,    67,    -1,    38,     7,    70,     7,     5,        -1,    38,     7,    70,     7,     5,    -1,    36,     7,    70,
407        -1,    36,     7,    70,     7,    72,     7,    72,    -1,    43,         7,    72,     7,    72,    -1,    43,     7,    70,     7,    75,
408         7,    70,     7,    75,    -1,    44,     7,    70,     7,    73,        -1,    44,     7,    70,     7,    73,    -1,    45,     7,    70,
409        -1,    45,     7,    70,     7,    68,    -1,    46,     7,    70,         7,    68,    -1,    46,     7,    70,     7,    69,    -1,    78,
410         7,    69,    -1,    78,    11,    77,    -1,    63,     7,    78,        11,    77,    -1,    63,     7,    78,    11,    77,    -1,    47,
411        11,    77,    -1,    47,    -1,    48,    -1,    39,    -1,    76,        -1,    48,    -1,    39,    -1,    76,     7,    71,     7,    70,
412         7,    71,     7,    70,    -1,    74,     7,    70,    -1,    78,        -1,    18,     7,    76,     7,    71,     7,    70,    -1,    74,
413        -1,     4,    -1,     5,    -1,     5,    -1,     5,    -1,     5,         7,    70,    -1,    78,    -1,     4,    -1,     5,    -1,     5,
414        -1,     5,    -1,    78,    -1,     6,    -1,     6,    -1,     6,        -1,     5,    -1,     5,    -1,     5,    -1,    78,    -1,     6,
415        -1,     5,    -1,     4,    -1,     3,    -1,    78,     3,    -1        -1,     6,    -1,     6,    -1,     5,    -1,     4,    -1,     3,
416          -1,    78,     3,    -1
417  };  };
418    
419  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
420  static const unsigned char yyrline[] =  static const unsigned char yyrline[] =
421  {  {
422         0,    78,    78,    79,    80,    83,    84,    85,    86,    89,         0,    77,    77,    78,    79,    82,    83,    84,    85,    88,
423        90,    91,    92,    93,    96,    97,    98,    99,   100,   101,        89,    90,    91,    92,    95,    96,    97,    98,    99,   100,
424       102,   103,   104,   105,   106,   107,   108,   111,   112,   113,       101,   102,   103,   104,   105,   106,   109,   110,   111,   112,
425       114,   115,   116,   119,   120,   121,   122,   123,   124,   127,       113,   114,   117,   118,   119,   120,   121,   122,   125,   126,
426       128,   129,   130,   131,   132,   133,   134,   135,   136,   137,       127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
427       138,   139,   140,   141,   144,   145,   146,   149,   150,   153,       137,   138,   139,   142,   143,   144,   147,   148,   151,   154,
428       156,   157,   160,   161,   162,   163,   164,   165,   168,   169,       155,   158,   159,   160,   161,   162,   163,   166,   167,   170,
429       172,   173,   176,   179,   182,   185,   188,   189,   192,   195,       171,   174,   177,   178,   181,   184,   187,   188,   191,   194,
430       198,   201,   204,   207,   210,   213,   214,   215,   218,   219       197,   200,   203,   206,   209,   212,   213,   214,   217,   218
431  };  };
432  #endif  #endif
433    
# Line 438  static const char *const yytname[] = Line 438  static const char *const yytname[] =
438  {  {
439    "$end", "error", "$undefined", "CHAR", "DOTNUM", "NUMBER", "STRINGVAL",    "$end", "error", "$undefined", "CHAR", "DOTNUM", "NUMBER", "STRINGVAL",
440    "SP", "LF", "CR", "HASH", "EQ", "ADD", "GET", "CREATE", "DESTROY",    "SP", "LF", "CR", "HASH", "EQ", "ADD", "GET", "CREATE", "DESTROY",
441    "LIST", "LOAD", "LOAD_BACKGROUND", "REMOVE", "SET", "SUBSCRIBE",    "LIST", "LOAD", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE",
442    "UNSUBSCRIBE", "RESET", "QUIT", "CHANNEL", "NOTIFICATION",    "UNSUBSCRIBE", "RESET", "QUIT", "CHANNEL", "NOTIFICATION",
443    "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS",    "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS",
444    "INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT", "INSTRUMENT",    "INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT", "INSTRUMENT",
# Line 476  static const unsigned char yyr1[] = Line 476  static const unsigned char yyr1[] =
476  {  {
477         0,    50,    51,    51,    51,    52,    52,    52,    52,    53,         0,    50,    51,    51,    51,    52,    52,    52,    52,    53,
478        53,    53,    53,    53,    54,    54,    54,    54,    54,    54,        53,    53,    53,    53,    54,    54,    54,    54,    54,    54,
479        54,    54,    54,    54,    54,    54,    54,    55,    55,    55,        54,    54,    54,    54,    54,    54,    55,    55,    55,    55,
480        55,    55,    55,    56,    56,    56,    56,    56,    56,    57,        55,    55,    56,    56,    56,    56,    56,    56,    57,    57,
481        57,    57,    57,    57,    57,    57,    57,    57,    57,    57,        57,    57,    57,    57,    57,    57,    57,    57,    57,    57,
482        57,    57,    57,    57,    58,    58,    58,    59,    59,    60,        57,    57,    57,    58,    58,    58,    59,    59,    60,    61,
483        61,    61,    62,    62,    62,    62,    62,    62,    63,    63,        61,    62,    62,    62,    62,    62,    62,    63,    63,    64,
484        64,    64,    65,    66,    67,    68,    69,    69,    70,    71,        64,    65,    66,    66,    67,    68,    69,    69,    70,    71,
485        72,    73,    74,    75,    76,    77,    77,    77,    78,    78        72,    73,    74,    75,    76,    77,    77,    77,    78,    78
486  };  };
487    
# Line 490  static const unsigned char yyr2[] = Line 490  static const unsigned char yyr2[] =
490  {  {
491         0,     2,     1,     3,     4,     0,     1,     1,     1,     1,         0,     2,     1,     3,     4,     0,     1,     1,     1,     1,
492         2,     2,     2,     2,     3,     3,     3,     3,     3,     3,         2,     2,     2,     2,     3,     3,     3,     3,     3,     3,
493         3,     5,     3,     3,     3,     5,     1,     1,     1,     1,         5,     3,     3,     3,     5,     1,     1,     1,     1,     1,
494         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
495         1,     5,     7,     9,     1,     5,     7,     9,     1,     5,         5,     7,     9,     1,     5,     7,     9,     1,     5,     7,
496         7,     5,     5,     5,     7,     9,     3,     5,     3,     3,         5,     5,     5,     7,     9,     3,     5,     3,     3,     3,
497         3,     3,     5,     7,     5,     5,     5,     5,     3,     5,         3,     5,     7,     5,     5,     5,     5,     3,     5,     1,
498         1,     1,     1,     5,     3,     1,     1,     1,     1,     1,         1,     1,     5,     7,     3,     1,     1,     1,     1,     1,
499         1,     1,     1,     1,     1,     1,     1,     1,     1,     2         1,     1,     1,     1,     1,     1,     1,     1,     1,     2
500  };  };
501    
# Line 505  static const unsigned char yyr2[] = Line 505  static const unsigned char yyr2[] =
505  static const unsigned char yydefact[] =  static const unsigned char yydefact[] =
506  {  {
507         0,     8,     9,     0,     0,     0,     0,     0,     0,     0,         0,     8,     9,     0,     0,     0,     0,     0,     0,     0,
508         0,     0,     0,     0,     0,    26,     0,     2,     6,     7,         0,     0,     0,     0,    25,     0,     2,     6,     7,     0,
509         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
510         0,     0,     1,     0,     0,    88,    12,    11,    10,    13,         1,     0,     0,    88,    12,    11,    10,    13,    14,     0,
511        14,     0,    39,    40,    48,     0,     0,     0,     0,    44,        38,    39,    47,     0,     0,     0,     0,    43,     0,     0,
512         0,     0,    15,     0,    16,     0,    17,    72,    18,     0,        15,     0,    16,     0,    17,    71,    18,     0,     0,    19,
513         0,    19,    20,     0,     0,     0,     0,    22,    27,    31,         0,     0,     0,     0,    21,    26,    30,    29,    28,    27,
514        30,    29,    28,    32,    23,    33,    37,    36,    35,    34,        31,    22,    32,    36,    35,    34,    33,    37,    23,     0,
515        38,    24,     0,     3,     0,    89,     0,     0,     0,     0,         3,     0,    89,     0,     0,     0,     0,     0,     0,     0,
516           0,     0,     0,     0,     0,     0,     0,     0,     0,     4,
517         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
518         0,     0,     4,     0,     0,     0,     0,     0,     0,     0,        57,    58,    84,     0,    59,     0,    60,     0,    82,    78,
519         0,     0,     0,    58,    59,    84,    60,     0,    61,     0,        20,     0,     0,     0,     0,     0,     0,    55,     0,     0,
520        82,    78,    21,     0,     0,     0,     0,     0,     0,    56,        24,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,    25,     0,     0,     0,     0,     0,     0,     0,  
521         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
522         0,     0,     0,     0,    49,    70,    71,     0,    51,    52,         0,     0,     0,    48,    69,    70,     0,    50,    51,    52,
523        53,     0,     0,    45,    41,     0,    57,     0,    79,     0,         0,     0,    44,    40,     0,    56,     0,     0,    79,     0,
524        74,     0,     0,     0,     0,     0,     0,     0,     0,     0,        74,     0,     0,     0,     0,     0,     0,     0,     0,     0,
525         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
526         0,     0,     0,     0,    50,    46,     0,    42,     0,    87,         0,     0,     0,     0,     0,    49,    45,     0,    41,     0,
527        86,    85,    68,    73,    80,     0,    62,    83,    64,    81,        87,    86,    85,    67,     0,    72,    80,     0,    61,    83,
528        65,    66,    75,    76,    77,    67,     0,    54,     0,     0,        63,    81,    64,    65,    75,    76,    77,    66,     0,    53,
529         0,     0,     0,    47,    43,    69,    63,    55         0,     0,     0,     0,     0,     0,    46,    42,    68,    73,
530          62,    54
531  };  };
532    
533  /* YYDEFGOTO[NTERM-NUM]. */  /* YYDEFGOTO[NTERM-NUM]. */
534  static const short yydefgoto[] =  static const short yydefgoto[] =
535  {  {
536        -1,    16,    17,    18,    19,    74,    81,    52,    67,    54,        -1,    15,    16,    17,    18,    71,    78,    50,    64,    52,
537        56,    61,   129,   166,   157,    58,   116,   118,   211,   215,        54,    59,   127,   165,   156,    56,   114,   116,   213,   217,
538       122,   169,   205,   210,   119,   208,   117,   202,   120       120,   169,   207,   212,   117,   210,   115,   203,   118
539  };  };
540    
541  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
542     STATE-NUM.  */     STATE-NUM.  */
543  #define YYPACT_NINF -191  #define YYPACT_NINF -193
544  static const short yypact[] =  static const short yypact[] =
545  {  {
546         4,  -191,  -191,     2,    22,    24,    37,    85,    87,    96,         5,  -193,  -193,    25,    77,    93,    99,   101,   105,   107,
547        99,   107,   109,   110,   111,  -191,    34,  -191,    97,  -191,       108,   109,   110,   111,  -193,     3,  -193,    94,  -193,    -9,
548       -14,    45,   -23,    77,    80,   -27,   -27,    95,    27,     8,        39,    34,    75,    80,    10,    96,     6,     9,    30,   103,
549        29,   101,  -191,     4,   113,  -191,  -191,  -191,  -191,   119,      -193,     5,   112,  -193,  -193,  -193,  -193,   122,  -193,   120,
550      -191,   120,  -191,  -191,  -191,   121,   122,   123,   124,  -191,      -193,  -193,  -193,   123,   124,   125,   126,  -193,   127,   129,
551       125,   126,  -191,   127,  -191,   129,  -191,  -191,  -191,   130,      -193,   130,  -193,   131,  -193,  -193,  -193,   132,   133,  -193,
552       131,  -191,  -191,   132,   133,   134,   135,  -191,  -191,  -191,       134,   135,   136,   137,  -193,  -193,  -193,  -193,  -193,  -193,
553      -191,  -191,  -191,  -191,  -191,  -191,  -191,  -191,  -191,  -191,      -193,  -193,  -193,  -193,  -193,  -193,  -193,  -193,  -193,   138,
554      -191,  -191,   136,  -191,     4,  -191,    78,   114,   115,   116,      -193,     5,  -193,   -23,   116,   117,   118,   119,   121,   128,
555       117,   118,   128,   146,   145,   147,   146,   149,    52,   150,       147,   148,    17,   147,   149,    47,   150,   151,   149,  -193,
556       151,   149,  -191,   144,   152,   153,   154,   155,   156,   159,       145,   152,   153,   154,   155,   156,   157,   160,   161,   162,
557       160,   161,   162,     3,  -191,  -191,  -191,   163,  -191,   164,        95,  -193,  -193,   163,  -193,   164,  -193,   165,   122,  -193,
558       119,  -191,  -191,   166,   168,   169,   170,   171,   172,  -191,      -193,   166,   168,   170,   171,   172,   173,  -193,   174,   175,
559       173,   174,  -191,   149,    18,   149,   149,   146,   177,   178,      -193,   149,     8,   149,   149,   147,   178,   179,   180,   147,
560       179,   146,   146,   146,   180,   149,   149,   149,   149,   149,       147,   147,   181,   183,   149,   149,   149,   149,   149,   149,
561       149,   149,   181,   146,  -191,  -191,  -191,   182,  -191,  -191,       149,   184,   147,  -193,  -193,  -193,   185,  -193,  -193,  -193,
562      -191,   183,   184,  -191,   119,    86,   185,    60,  -191,   186,       186,   187,  -193,   122,   100,   188,    54,   189,  -193,   190,
563      -191,   187,   188,   189,   190,   191,   192,   195,    65,   149,      -193,   191,   192,   193,   194,   195,   198,   199,    83,   149,
564       198,   199,   146,   146,    50,   149,   200,   201,   202,   204,       202,   203,   147,   147,    65,   183,   149,   204,   205,   206,
565       146,   108,   146,    50,  -191,  -191,   203,    98,    66,  -191,       208,   147,   106,   147,    65,  -193,  -193,   207,   102,    84,
566      -191,  -191,  -191,  -191,  -191,   205,  -191,  -191,  -191,  -191,      -193,  -193,  -193,  -193,   209,  -193,  -193,   210,  -193,  -193,
567      -191,  -191,   119,  -191,  -191,  -191,    88,  -191,   146,   146,      -193,  -193,  -193,  -193,   122,  -193,  -193,  -193,    85,  -193,
568        50,   200,    50,   119,   185,  -191,  -191,  -191       147,   147,    65,   149,   204,    65,   122,   188,  -193,  -193,
569        -193,  -193
570  };  };
571    
572  /* YYPGOTO[NTERM-NUM].  */  /* YYPGOTO[NTERM-NUM].  */
573  static const short yypgoto[] =  static const short yypgoto[] =
574  {  {
575      -191,  -191,   -31,  -191,  -191,  -191,  -191,  -191,  -191,  -191,      -193,  -193,   -27,  -193,  -193,  -193,  -193,  -193,  -193,  -193,
576      -191,   193,  -191,   -67,  -191,  -191,  -191,  -191,  -191,  -191,      -193,  -193,  -193,   -92,  -193,  -193,  -193,  -193,  -193,  -193,
577      -100,  -191,   -64,  -191,    51,  -191,  -191,  -190,   -18       -97,   -28,   -38,  -193,    55,  -193,    49,  -192,   -17
578  };  };
579    
580  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
# Line 582  static const short yypgoto[] = Line 584  static const short yypgoto[] =
584  #define YYTABLE_NINF -6  #define YYTABLE_NINF -6
585  static const short yytable[] =  static const short yytable[] =
586  {  {
587        39,   132,    83,   217,    -5,     1,    85,    59,    60,    20,        37,   130,   219,    30,    80,    -5,     1,   100,   101,   102,
588       143,    40,    -5,    -5,     2,    53,     3,     4,     5,     6,       103,    31,    32,    -5,    -5,     2,    38,     3,     4,     5,
589         7,     8,     9,    10,    11,    12,    13,    14,    15,    21,         6,     7,     8,   112,     9,    10,    11,    12,    13,    14,
590       225,    22,   227,   154,    32,   158,   159,    68,    69,    70,       228,    61,    19,   231,   153,   113,   157,   158,    65,    66,
591        71,    72,    33,    34,    23,   170,   171,   172,   173,   174,        67,    68,    69,    62,    57,    58,    63,   170,   171,   172,
592       175,   176,    64,   102,   199,   200,   201,    73,    75,    76,       173,   174,   175,   176,    99,   154,   155,    82,    70,    72,
593        77,    78,    79,    85,    65,   155,   156,    66,    85,    85,        73,    74,    75,    76,    39,   184,    40,    41,    42,   200,
594        41,   184,    42,    43,    44,   113,   193,   220,    80,   194,       201,   202,    51,   110,    43,    44,    45,    46,    47,    77,
595        45,    46,    47,    48,    49,   203,    50,    51,   123,    85,        48,    49,   195,   121,    20,   122,    82,    82,    82,   205,
596       124,    85,    24,   182,    25,   125,   126,   127,   128,   222,       123,   124,   125,   126,   194,   222,   225,    33,    82,    34,
597        35,    85,    36,    26,    37,   219,    27,    38,   103,   104,        21,    35,   141,    82,    36,    82,    22,   182,    23,   221,
598       105,   106,   213,   214,    28,    55,    29,    30,    31,    57,       215,   216,    24,    53,    25,    26,    27,    28,    29,    55,
599        63,    84,    85,   164,   165,   167,    82,    86,    87,    88,        81,    60,   163,   164,   166,    82,   229,    83,    79,   227,
600        89,    90,    91,    92,    93,   178,    94,    95,    96,    97,        84,    85,    86,    87,    88,   178,    89,    90,    91,    92,
601        98,    99,   100,   101,   107,   108,   109,   110,   111,    35,        93,    94,    95,    96,    97,    98,   104,   105,   106,   107,
602       114,   133,   224,   115,   121,   130,   131,   226,   112,   134,        33,   108,   131,   111,   119,   128,   129,   204,   109,   132,
603       135,   136,   137,   138,   197,   198,   139,   140,   141,   142,       133,   134,   135,   136,   137,   198,   199,   138,   139,   140,
604       144,   145,   212,   146,   216,   147,   148,   149,   150,   151,       142,   143,   144,   145,   214,   146,   218,   147,   148,   149,
605       152,   153,   161,   162,   163,   168,   177,     0,   160,   179,       150,   151,   152,   160,   161,   162,   230,   112,   168,   177,
606       180,   181,   183,   185,   186,   187,   188,   189,   190,   191,       159,   167,   179,   180,   181,   183,   185,   186,   187,   188,
607       223,   167,   192,   195,   196,   204,   206,     0,   207,   209,       189,   190,   191,   226,   166,   192,   193,   196,   197,   206,
608       218,     0,   221,     0,     0,     0,     0,     0,     0,    62       208,     0,   209,   211,   220,     0,   223,   224
609  };  };
610    
611  static const short yycheck[] =  static const short yycheck[] =
612  {  {
613        18,   101,    33,   193,     0,     1,     3,    34,    35,     7,        17,    98,   194,     0,    31,     0,     1,    30,    31,    32,
614         7,    25,     8,     9,    10,    38,    12,    13,    14,    15,        33,     8,     9,     8,     9,    10,    25,    12,    13,    14,
615        16,    17,    18,    19,    20,    21,    22,    23,    24,     7,        15,    16,    17,     6,    19,    20,    21,    22,    23,    24,
616       220,     7,   222,   133,     0,   135,   136,    29,    30,    31,       222,    25,     7,   225,   131,    18,   133,   134,    29,    30,
617        32,    33,     8,     9,     7,   145,   146,   147,   148,   149,        31,    32,    33,    37,    34,    35,    40,   144,   145,   146,
618       150,   151,    25,    84,     4,     5,     6,    49,    29,    30,       147,   148,   149,   150,    81,    47,    48,     3,    49,    29,
619        31,    32,    33,     3,    37,    47,    48,    40,     3,     3,        30,    31,    32,    33,    25,    11,    27,    28,    29,     4,
620        25,    11,    27,    28,    29,    93,    11,    11,    49,   179,         5,     6,    38,    90,    35,    36,    37,    38,    39,    49,
621        35,    36,    37,    38,    39,   185,    41,    42,    36,     3,        41,    42,   179,    36,     7,    38,     3,     3,     3,   186,
622        38,     3,     7,     7,     7,    43,    44,    45,    46,    11,        43,    44,    45,    46,    11,    11,    11,     3,     3,     5,
623         3,     3,     5,     7,     7,     7,     7,    10,    30,    31,         7,     7,     7,     3,    10,     3,     7,     7,     7,     7,
624        32,    33,     4,     5,     7,    38,     7,     7,     7,    39,         4,     5,     7,    38,     7,     7,     7,     7,     7,    39,
625        25,     8,     3,   141,   142,   143,    25,     7,     7,     7,         8,    25,   139,   140,   141,     3,   223,     7,    25,   221,
626         7,     7,     7,     7,     7,   153,     7,     7,     7,     7,         7,     7,     7,     7,     7,   152,     7,     7,     7,     7,
627         7,     7,     7,     7,    30,    30,    30,    30,    30,     3,         7,     7,     7,     7,     7,     7,    30,    30,    30,    30,
628         5,     7,   219,     6,     5,     5,     5,   221,    30,     7,         3,    30,     7,     5,     5,     5,     5,   185,    30,     7,
629         7,     7,     7,     7,   182,   183,     7,     7,     7,     7,         7,     7,     7,     7,     7,   182,   183,     7,     7,     7,
630         7,     7,   190,     7,   192,     7,     7,     7,     7,     7,         7,     7,     7,     7,   191,     7,   193,     7,     7,     7,
631         7,     7,     5,     5,     5,     5,     5,    -1,   137,     7,         7,     7,     7,     5,     5,     5,   224,     6,     5,     5,
632         7,     7,     7,     7,     7,     7,     7,     7,     7,     7,       135,   142,     7,     7,     7,     7,     7,     7,     7,     7,
633       218,   219,     7,     5,     5,     5,     5,    -1,     6,     5,         7,     7,     7,   220,   221,     7,     7,     5,     5,     5,
634         7,    -1,     7,    -1,    -1,    -1,    -1,    -1,    -1,    26         5,    -1,     6,     5,     7,    -1,     7,     7
635  };  };
636    
637  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
638     symbol of state STATE-NUM.  */     symbol of state STATE-NUM.  */
639  static const unsigned char yystos[] =  static const unsigned char yystos[] =
640  {  {
641         0,     1,    10,    12,    13,    14,    15,    16,    17,    18,         0,     1,    10,    12,    13,    14,    15,    16,    17,    19,
642        19,    20,    21,    22,    23,    24,    51,    52,    53,    54,        20,    21,    22,    23,    24,    51,    52,    53,    54,     7,
        7,     7,     7,     7,     7,     7,     7,     7,     7,     7,  
        7,     7,     0,     8,     9,     3,     5,     7,    10,    78,  
       25,    25,    27,    28,    29,    35,    36,    37,    38,    39,  
       41,    42,    57,    38,    59,    38,    60,    39,    65,    34,  
       35,    61,    61,    25,    25,    37,    40,    58,    29,    30,  
       31,    32,    33,    49,    55,    29,    30,    31,    32,    33,  
       49,    56,    25,    52,     8,     3,     7,     7,     7,     7,  
643         7,     7,     7,     7,     7,     7,     7,     7,     7,     7,         7,     7,     7,     7,     7,     7,     7,     7,     7,     7,
644         7,     7,    52,    30,    31,    32,    33,    30,    30,    30,         0,     8,     9,     3,     5,     7,    10,    78,    25,    25,
645        30,    30,    30,    78,     5,     6,    66,    76,    67,    74,        27,    28,    29,    35,    36,    37,    38,    39,    41,    42,
646        78,     5,    70,    36,    38,    43,    44,    45,    46,    62,        57,    38,    59,    38,    60,    39,    65,    34,    35,    61,
647         5,     5,    70,     7,     7,     7,     7,     7,     7,     7,        25,    25,    37,    40,    58,    29,    30,    31,    32,    33,
648          49,    55,    29,    30,    31,    32,    33,    49,    56,    25,
649          52,     8,     3,     7,     7,     7,     7,     7,     7,     7,
650           7,     7,     7,     7,     7,     7,     7,     7,     7,    52,
651          30,    31,    32,    33,    30,    30,    30,    30,    30,    30,
652          78,     5,     6,    18,    66,    76,    67,    74,    78,     5,
653          70,    36,    38,    43,    44,    45,    46,    62,     5,     5,
654          70,     7,     7,     7,     7,     7,     7,     7,     7,     7,
655         7,     7,     7,     7,     7,     7,     7,     7,     7,     7,         7,     7,     7,     7,     7,     7,     7,     7,     7,     7,
656         7,     7,     7,     7,    70,    47,    48,    64,    70,    70,         7,     7,     7,    70,    47,    48,    64,    70,    70,    74,
657        74,     5,     5,     5,    78,    78,    63,    78,     5,    71,         5,     5,     5,    78,    78,    63,    78,    76,     5,    71,
658        70,    70,    70,    70,    70,    70,    70,     5,    78,     7,        70,    70,    70,    70,    70,    70,    70,     5,    78,     7,
659         7,     7,     7,     7,    11,     7,     7,     7,     7,     7,         7,     7,     7,     7,    11,     7,     7,     7,     7,     7,
660         7,     7,     7,    11,    70,     5,     5,    78,    78,     4,         7,     7,     7,     7,    11,    70,     5,     5,    78,    78,
661         5,     6,    77,    70,     5,    72,     5,     6,    75,     5,         4,     5,     6,    77,    71,    70,     5,    72,     5,     6,
662        73,    68,    78,     4,     5,    69,    78,    77,     7,     7,        75,     5,    73,    68,    78,     4,     5,    69,    78,    77,
663        11,     7,    11,    78,    63,    77,    72,    77         7,     7,    11,     7,     7,    11,    78,    63,    77,    70,
664          72,    77
665  };  };
666    
667  #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)  #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
# Line 1269  yyreduce: Line 1272  yyreduce:
1272    switch (yyn)    switch (yyn)
1273      {      {
1274          case 7:          case 7:
1275  #line 85 "lscp.y"  #line 84 "lscp.y"
1276      { LSCPSERVER->AnswerClient(yyvsp[0].String); }      { LSCPSERVER->AnswerClient(yyvsp[0].String); }
1277      break;      break;
1278    
1279    case 8:    case 8:
1280  #line 86 "lscp.y"  #line 85 "lscp.y"
1281      { LSCPSERVER->AnswerClient("Err:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }      { LSCPSERVER->AnswerClient("Err:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }
1282      break;      break;
1283    
1284    case 14:    case 14:
1285  #line 96 "lscp.y"  #line 95 "lscp.y"
1286      { yyval.String = LSCPSERVER->AddChannel();                  }      { yyval.String = LSCPSERVER->AddChannel();                  }
1287      break;      break;
1288    
1289    case 15:    case 15:
1290  #line 97 "lscp.y"  #line 96 "lscp.y"
1291      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = yyvsp[0].String;                                        }
1292      break;      break;
1293    
1294    case 16:    case 16:
1295  #line 98 "lscp.y"  #line 97 "lscp.y"
1296      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = yyvsp[0].String;                                        }
1297      break;      break;
1298    
1299    case 17:    case 17:
1300  #line 99 "lscp.y"  #line 98 "lscp.y"
1301      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = yyvsp[0].String;                                        }
1302      break;      break;
1303    
1304    case 18:    case 18:
1305  #line 100 "lscp.y"  #line 99 "lscp.y"
1306      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = yyvsp[0].String;                                        }
1307      break;      break;
1308    
1309    case 19:    case 19:
1310  #line 101 "lscp.y"  #line 100 "lscp.y"
1311      { yyval.String = yyvsp[0].String; background = false;                    }      { yyval.String = yyvsp[0].String;                                        }
1312      break;      break;
1313    
1314    case 20:    case 20:
1315  #line 102 "lscp.y"  #line 101 "lscp.y"
1316      { yyval.String = yyvsp[0].String; background = true;                     }      { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number);             }
1317      break;      break;
1318    
1319    case 21:    case 21:
1320  #line 103 "lscp.y"  #line 102 "lscp.y"
1321      { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number);             }      { yyval.String = yyvsp[0].String;                                        }
1322      break;      break;
1323    
1324    case 22:    case 22:
1325  #line 104 "lscp.y"  #line 103 "lscp.y"
1326      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = yyvsp[0].String;                                        }
1327      break;      break;
1328    
1329    case 23:    case 23:
1330  #line 105 "lscp.y"  #line 104 "lscp.y"
1331      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = yyvsp[0].String;                                        }
1332      break;      break;
1333    
1334    case 24:    case 24:
1335  #line 106 "lscp.y"  #line 105 "lscp.y"
1336      { yyval.String = yyvsp[0].String;                                        }      { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number);              }
1337      break;      break;
1338    
1339    case 25:    case 25:
1340  #line 107 "lscp.y"  #line 106 "lscp.y"
1341      { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number);              }      { LSCPSERVER->AnswerClient("Bye!\r\n"); return 0; }
1342      break;      break;
1343    
1344    case 26:    case 26:
1345  #line 108 "lscp.y"  #line 109 "lscp.y"
1346      { LSCPSERVER->AnswerClient("Bye!\r\n"); return 0; }      { yyval.String = LSCPSERVER->SubscribeNotification(event_channels); }
1347      break;      break;
1348    
1349    case 27:    case 27:
1350  #line 111 "lscp.y"  #line 110 "lscp.y"
1351      { yyval.String = LSCPSERVER->SubscribeNotification(event_channels); }      { yyval.String = LSCPSERVER->SubscribeNotification(event_voice_count); }
1352      break;      break;
1353    
1354    case 28:    case 28:
1355  #line 112 "lscp.y"  #line 111 "lscp.y"
1356      { yyval.String = LSCPSERVER->SubscribeNotification(event_voice_count); }      { yyval.String = LSCPSERVER->SubscribeNotification(event_stream_count); }
1357      break;      break;
1358    
1359    case 29:    case 29:
1360  #line 113 "lscp.y"  #line 112 "lscp.y"
1361      { yyval.String = LSCPSERVER->SubscribeNotification(event_stream_count); }      { yyval.String = LSCPSERVER->SubscribeNotification(event_channel_buffer_fill); }
1362      break;      break;
1363    
1364    case 30:    case 30:
1365  #line 114 "lscp.y"  #line 113 "lscp.y"
1366      { yyval.String = LSCPSERVER->SubscribeNotification(event_channel_buffer_fill); }      { yyval.String = LSCPSERVER->SubscribeNotification(event_channel_info); }
1367      break;      break;
1368    
1369    case 31:    case 31:
1370  #line 115 "lscp.y"  #line 114 "lscp.y"
1371      { yyval.String = LSCPSERVER->SubscribeNotification(event_channel_info); }      { yyval.String = LSCPSERVER->SubscribeNotification(event_misc); }
1372      break;      break;
1373    
1374    case 32:    case 32:
1375  #line 116 "lscp.y"  #line 117 "lscp.y"
1376      { yyval.String = LSCPSERVER->SubscribeNotification(event_misc); }      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_channels); }
1377      break;      break;
1378    
1379    case 33:    case 33:
1380  #line 119 "lscp.y"  #line 118 "lscp.y"
1381      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_channels); }      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_voice_count); }
1382      break;      break;
1383    
1384    case 34:    case 34:
1385  #line 120 "lscp.y"  #line 119 "lscp.y"
1386      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_voice_count); }      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_stream_count); }
1387      break;      break;
1388    
1389    case 35:    case 35:
1390  #line 121 "lscp.y"  #line 120 "lscp.y"
1391      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_stream_count); }      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_channel_buffer_fill); }
1392      break;      break;
1393    
1394    case 36:    case 36:
1395  #line 122 "lscp.y"  #line 121 "lscp.y"
1396      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_channel_buffer_fill); }      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_channel_info); }
1397      break;      break;
1398    
1399    case 37:    case 37:
1400  #line 123 "lscp.y"  #line 122 "lscp.y"
1401      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_channel_info); }      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_misc); }
1402      break;      break;
1403    
1404    case 38:    case 38:
1405  #line 124 "lscp.y"  #line 125 "lscp.y"
1406      { yyval.String = LSCPSERVER->UnsubscribeNotification(event_misc); }      { yyval.String = LSCPSERVER->GetAvailableEngines();                          }
1407      break;      break;
1408    
1409    case 39:    case 39:
1410  #line 127 "lscp.y"  #line 126 "lscp.y"
1411      { yyval.String = LSCPSERVER->GetAvailableEngines();                          }      { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers();               }
1412      break;      break;
1413    
1414    case 40:    case 40:
1415  #line 128 "lscp.y"  #line 127 "lscp.y"
1416      { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers();               }      { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String);                   }
1417      break;      break;
1418    
1419    case 41:    case 41:
1420  #line 129 "lscp.y"  #line 128 "lscp.y"
1421      { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String);                   }      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);      }
1422      break;      break;
1423    
1424    case 42:    case 42:
1425  #line 130 "lscp.y"  #line 129 "lscp.y"
1426      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);      }      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);  }
1427      break;      break;
1428    
1429    case 43:    case 43:
1430  #line 131 "lscp.y"  #line 130 "lscp.y"
1431      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);  }      { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount();                    }
1432      break;      break;
1433    
1434    case 44:    case 44:
1435  #line 132 "lscp.y"  #line 131 "lscp.y"
1436      { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount();                    }      { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number);                   }
1437      break;      break;
1438    
1439    case 45:    case 45:
1440  #line 133 "lscp.y"  #line 132 "lscp.y"
1441      { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number);                   }      { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number);              }
1442      break;      break;
1443    
1444    case 46:    case 46:
1445  #line 134 "lscp.y"  #line 133 "lscp.y"
1446      { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number);              }      { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }
1447      break;      break;
1448    
1449    case 47:    case 47:
1450  #line 135 "lscp.y"  #line 134 "lscp.y"
1451      { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }      { yyval.String = LSCPSERVER->GetChannels();                                  }
1452      break;      break;
1453    
1454    case 48:    case 48:
1455  #line 136 "lscp.y"  #line 135 "lscp.y"
1456      { yyval.String = LSCPSERVER->GetChannels();                                  }      { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number);                             }
1457      break;      break;
1458    
1459    case 49:    case 49:
1460  #line 137 "lscp.y"  #line 136 "lscp.y"
1461      { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number);                             }      { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number);                          }
1462      break;      break;
1463    
1464    case 50:    case 50:
1465  #line 138 "lscp.y"  #line 137 "lscp.y"
1466      { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number);                          }      { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number);                             }
1467      break;      break;
1468    
1469    case 51:    case 51:
1470  #line 139 "lscp.y"  #line 138 "lscp.y"
1471      { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number);                             }      { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number);                              }
1472      break;      break;
1473    
1474    case 52:    case 52:
1475  #line 140 "lscp.y"  #line 139 "lscp.y"
1476      { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number);                              }      { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String);                              }
1477      break;      break;
1478    
1479    case 53:    case 53:
1480  #line 141 "lscp.y"  #line 142 "lscp.y"
1481      { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String);                              }      { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }
1482      break;      break;
1483    
1484    case 54:    case 54:
1485  #line 144 "lscp.y"  #line 143 "lscp.y"
1486      { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
1487      break;      break;
1488    
1489    case 55:    case 55:
1490  #line 145 "lscp.y"  #line 144 "lscp.y"
1491      { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }      { yyval.String = yyvsp[0].String;                                                         }
1492      break;      break;
1493    
1494    case 56:    case 56:
1495  #line 146 "lscp.y"  #line 147 "lscp.y"
1496      { yyval.String = yyvsp[0].String;                                                         }      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }
1497      break;      break;
1498    
1499    case 57:    case 57:
1500  #line 149 "lscp.y"  #line 148 "lscp.y"
1501      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String); }
1502      break;      break;
1503    
1504    case 58:    case 58:
1505  #line 150 "lscp.y"  #line 151 "lscp.y"
1506      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String); }      { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }
1507      break;      break;
1508    
1509    case 59:    case 59:
1510  #line 153 "lscp.y"  #line 154 "lscp.y"
1511      { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }      { yyval.String = yyvsp[0].String; }
1512      break;      break;
1513    
1514    case 60:    case 60:
1515  #line 156 "lscp.y"  #line 155 "lscp.y"
1516      { yyval.String = yyvsp[0].String; }      { yyval.String = yyvsp[0].String; }
1517      break;      break;
1518    
1519    case 61:    case 61:
1520  #line 157 "lscp.y"  #line 158 "lscp.y"
1521      { yyval.String = yyvsp[0].String; }      { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number);      }
1522      break;      break;
1523    
1524    case 62:    case 62:
1525  #line 160 "lscp.y"  #line 159 "lscp.y"
1526      { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number);      }      { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }
1527      break;      break;
1528    
1529    case 63:    case 63:
1530  #line 161 "lscp.y"  #line 160 "lscp.y"
1531      { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }      { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].String, yyvsp[-2].Number);          }
1532      break;      break;
1533    
1534    case 64:    case 64:
1535  #line 162 "lscp.y"  #line 161 "lscp.y"
1536      { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].String, yyvsp[-2].Number);          }      { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number);       }
1537      break;      break;
1538    
1539    case 65:    case 65:
1540  #line 163 "lscp.y"  #line 162 "lscp.y"
1541      { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number);       }      { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number);          }
1542      break;      break;
1543    
1544    case 66:    case 66:
1545  #line 164 "lscp.y"  #line 163 "lscp.y"
1546      { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number);          }      { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number);                 }
1547      break;      break;
1548    
1549    case 67:    case 67:
1550  #line 165 "lscp.y"  #line 166 "lscp.y"
1551      { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number);                 }      { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String;          }
1552      break;      break;
1553    
1554    case 68:    case 68:
1555  #line 168 "lscp.y"  #line 167 "lscp.y"
1556      { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String;          }      { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }
1557      break;      break;
1558    
1559    case 69:    case 69:
1560  #line 169 "lscp.y"  #line 170 "lscp.y"
1561      { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }      { yyval.FillResponse = fill_response_bytes;      }
1562      break;      break;
1563    
1564    case 70:    case 70:
1565  #line 172 "lscp.y"  #line 171 "lscp.y"
1566      { yyval.FillResponse = fill_response_bytes;      }      { yyval.FillResponse = fill_response_percentage; }
1567      break;      break;
1568    
1569    case 71:    case 71:
1570  #line 173 "lscp.y"  #line 174 "lscp.y"
1571      { yyval.FillResponse = fill_response_percentage; }      { yyval.String = LSCPSERVER->GetAudioOutputDevices(); }
1572      break;      break;
1573    
1574    case 72:    case 72:
1575  #line 176 "lscp.y"  #line 177 "lscp.y"
1576      { yyval.String = LSCPSERVER->GetAudioOutputDevices(); }      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number); }
1577      break;      break;
1578    
1579    case 73:    case 73:
1580  #line 179 "lscp.y"  #line 178 "lscp.y"
1581      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, background); }      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, true); }
1582      break;      break;
1583    
1584    case 74:    case 74:
1585  #line 182 "lscp.y"  #line 181 "lscp.y"
1586      { yyval.String = LSCPSERVER->LoadEngine(yyvsp[-2].String, yyvsp[0].Number); }      { yyval.String = LSCPSERVER->LoadEngine(yyvsp[-2].String, yyvsp[0].Number); }
1587      break;      break;
1588    
1589    case 77:    case 77:
1590  #line 189 "lscp.y"  #line 188 "lscp.y"
1591      { yyval.Dotnum = yyvsp[0].Number; }      { yyval.Dotnum = yyvsp[0].Number; }
1592      break;      break;
1593    
1594    case 85:    case 85:
1595  #line 213 "lscp.y"  #line 212 "lscp.y"
1596      { yyval.String = yyvsp[0].String;                                             }      { yyval.String = yyvsp[0].String;                                             }
1597      break;      break;
1598    
1599    case 86:    case 86:
1600  #line 214 "lscp.y"  #line 213 "lscp.y"
1601      { std::stringstream ss; ss << yyvsp[0].Number; yyval.String = ss.str();       }      { std::stringstream ss; ss << yyvsp[0].Number; yyval.String = ss.str();       }
1602      break;      break;
1603    
1604    case 87:    case 87:
1605  #line 215 "lscp.y"  #line 214 "lscp.y"
1606      { std::stringstream ss; ss << yyvsp[0].Dotnum; yyval.String = ss.str();       }      { std::stringstream ss; ss << yyvsp[0].Dotnum; yyval.String = ss.str();       }
1607      break;      break;
1608    
1609    case 88:    case 88:
1610  #line 218 "lscp.y"  #line 217 "lscp.y"
1611      { std::string s; s = yyvsp[0].Char; yyval.String = s; }      { std::string s; s = yyvsp[0].Char; yyval.String = s; }
1612      break;      break;
1613    
1614    case 89:    case 89:
1615  #line 219 "lscp.y"  #line 218 "lscp.y"
1616      { yyval.String = yyvsp[-1].String + yyvsp[0].Char;                  }      { yyval.String = yyvsp[-1].String + yyvsp[0].Char;                  }
1617      break;      break;
1618    
# Line 1617  yyreduce: Line 1620  yyreduce:
1620      }      }
1621    
1622  /* Line 999 of yacc.c.  */  /* Line 999 of yacc.c.  */
1623  #line 1620 "y.tab.c"  #line 1623 "y.tab.c"
1624    
1625    yyvsp -= yylen;    yyvsp -= yylen;
1626    yyssp -= yylen;    yyssp -= yylen;
# Line 1811  yyreturn: Line 1814  yyreturn:
1814  }  }
1815    
1816    
1817  #line 78 "lscp.y"  #line 77 "lscp.y"
1818    
1819    
1820  /**  /**

Legend:
Removed from v.138  
changed lines
  Added in v.141

  ViewVC Help
Powered by ViewVC