diff options
Diffstat (limited to 'src/testpattern/testpatterny.c')
-rw-r--r-- | src/testpattern/testpatterny.c | 800 |
1 files changed, 413 insertions, 387 deletions
diff --git a/src/testpattern/testpatterny.c b/src/testpattern/testpatterny.c index 524355e..a7ea3dc 100644 --- a/src/testpattern/testpatterny.c +++ b/src/testpattern/testpatterny.c @@ -92,25 +92,26 @@ HSIZE = 281, VSIZE = 282, BLACKLINE = 283, - PATTERN = 284, - XPATTERN = 285, - EXTENDED = 286, - IMAGE = 287, - GRID = 288, - SEMI = 289, - CHANNEL = 290, - CMYK = 291, - KCMY = 292, - RGB = 293, - CMY = 294, - GRAY = 295, - WHITE = 296, - RAW = 297, - MODE = 298, - PAGESIZE = 299, - MESSAGE = 300, - OUTPUT = 301, - END = 302 + NOSCALE = 284, + PATTERN = 285, + XPATTERN = 286, + EXTENDED = 287, + IMAGE = 288, + GRID = 289, + SEMI = 290, + CHANNEL = 291, + CMYK = 292, + KCMY = 293, + RGB = 294, + CMY = 295, + GRAY = 296, + WHITE = 297, + RAW = 298, + MODE = 299, + PAGESIZE = 300, + MESSAGE = 301, + OUTPUT = 302, + END = 303 }; #endif /* Tokens. */ @@ -140,25 +141,26 @@ #define HSIZE 281 #define VSIZE 282 #define BLACKLINE 283 -#define PATTERN 284 -#define XPATTERN 285 -#define EXTENDED 286 -#define IMAGE 287 -#define GRID 288 -#define SEMI 289 -#define CHANNEL 290 -#define CMYK 291 -#define KCMY 292 -#define RGB 293 -#define CMY 294 -#define GRAY 295 -#define WHITE 296 -#define RAW 297 -#define MODE 298 -#define PAGESIZE 299 -#define MESSAGE 300 -#define OUTPUT 301 -#define END 302 +#define NOSCALE 284 +#define PATTERN 285 +#define XPATTERN 286 +#define EXTENDED 287 +#define IMAGE 288 +#define GRID 289 +#define SEMI 290 +#define CHANNEL 291 +#define CMYK 292 +#define KCMY 293 +#define RGB 294 +#define CMY 295 +#define GRAY 296 +#define WHITE 297 +#define RAW 298 +#define MODE 299 +#define PAGESIZE 300 +#define MESSAGE 301 +#define OUTPUT 302 +#define END 303 @@ -222,7 +224,7 @@ find_color(const char *name) int i = 0; while (color_map[i].name) { - if (strcmp(color_map[i].name, name) == 0) + if (strcasecmp(color_map[i].name, name) == 0) return color_map[i].channel; i++; } @@ -262,7 +264,7 @@ typedef int YYSTYPE; /* Line 216 of yacc.c. */ -#line 266 "testpatterny.c" +#line 268 "testpatterny.c" #ifdef short # undef short @@ -475,22 +477,22 @@ union yyalloc #endif /* YYFINAL -- State number of the termination state. */ -#define YYFINAL 59 +#define YYFINAL 61 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 136 +#define YYLAST 178 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 48 +#define YYNTOKENS 49 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 70 +#define YYNNTS 72 /* YYNRULES -- Number of rules. */ -#define YYNRULES 123 +#define YYNRULES 127 /* YYNRULES -- Number of states. */ -#define YYNSTATES 180 +#define YYNSTATES 185 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 302 +#define YYMAXUTOK 303 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -528,7 +530,7 @@ static const yytype_uint8 yytranslate[] = 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47 + 45, 46, 47, 48 }; #if YYDEBUG @@ -537,74 +539,75 @@ static const yytype_uint8 yytranslate[] = static const yytype_uint16 yyprhs[] = { 0, 0, 3, 5, 7, 9, 11, 13, 15, 17, - 19, 22, 25, 28, 31, 34, 37, 41, 43, 45, - 47, 49, 51, 53, 55, 58, 62, 66, 70, 74, - 77, 80, 83, 86, 89, 93, 95, 97, 101, 105, - 109, 113, 115, 117, 119, 121, 124, 127, 130, 133, - 136, 139, 143, 145, 148, 149, 151, 154, 159, 165, - 167, 169, 171, 174, 175, 177, 179, 181, 187, 191, - 194, 197, 201, 204, 208, 213, 219, 226, 228, 230, - 232, 234, 236, 238, 240, 243, 245, 247, 249, 251, - 253, 255, 257, 259, 261, 263, 265, 267, 269, 271, - 273, 275, 277, 279, 281, 283, 285, 287, 290, 292, - 294, 296, 298, 301, 302, 305, 307, 308, 311, 313, - 315, 316, 319, 320 + 19, 21, 23, 26, 29, 32, 35, 38, 41, 45, + 47, 49, 51, 53, 55, 57, 59, 62, 66, 70, + 74, 78, 81, 84, 87, 90, 93, 97, 99, 101, + 105, 109, 113, 117, 119, 121, 123, 125, 128, 131, + 134, 137, 140, 143, 146, 150, 152, 155, 156, 158, + 161, 166, 172, 174, 176, 178, 181, 182, 184, 186, + 188, 194, 198, 201, 204, 208, 211, 215, 220, 226, + 233, 235, 237, 239, 241, 243, 245, 247, 250, 252, + 254, 256, 258, 260, 262, 264, 266, 268, 270, 272, + 274, 276, 278, 280, 282, 284, 286, 288, 290, 292, + 294, 296, 299, 301, 303, 305, 307, 310, 311, 314, + 316, 317, 320, 322, 324, 325, 328, 329 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int8 yyrhs[] = { - 116, 0, -1, 6, -1, 7, -1, 8, -1, 9, - -1, 10, -1, 11, -1, 12, -1, 13, -1, 36, - 3, -1, 37, 3, -1, 38, 3, -1, 39, 3, - -1, 40, 3, -1, 41, 3, -1, 31, 3, 3, - -1, 50, -1, 51, -1, 52, -1, 53, -1, 54, - -1, 55, -1, 56, -1, 43, 57, -1, 15, 49, - 4, -1, 15, 3, 4, -1, 14, 49, 4, -1, - 14, 3, 4, -1, 14, 4, -1, 16, 3, -1, - 17, 4, -1, 18, 5, -1, 44, 5, -1, 44, - 3, 3, -1, 67, -1, 68, -1, 19, 5, 5, - -1, 20, 5, 3, -1, 21, 5, 4, -1, 22, - 5, 5, -1, 70, -1, 71, -1, 72, -1, 73, - -1, 23, 4, -1, 24, 4, -1, 25, 4, -1, - 26, 4, -1, 27, 4, -1, 28, 3, -1, 4, - 4, 4, -1, 81, -1, 82, 81, -1, -1, 82, - -1, 81, 83, -1, 49, 4, 4, 4, -1, 35, - 3, 4, 4, 4, -1, 85, -1, 86, -1, 87, - -1, 88, 87, -1, -1, 88, -1, 84, -1, 89, - -1, 4, 4, 4, 4, 4, -1, 29, 91, 90, - -1, 30, 90, -1, 33, 3, -1, 32, 3, 3, - -1, 45, 5, -1, 45, 5, 5, -1, 45, 5, - 5, 5, -1, 45, 5, 5, 5, 5, -1, 45, - 5, 5, 5, 5, 5, -1, 96, -1, 97, -1, - 98, -1, 99, -1, 100, -1, 101, -1, 46, -1, - 46, 5, -1, 103, -1, 104, -1, 105, -1, 61, - -1, 62, -1, 59, -1, 60, -1, 63, -1, 64, - -1, 65, -1, 66, -1, 74, -1, 75, -1, 76, - -1, 77, -1, 78, -1, 79, -1, 80, -1, 58, - -1, 69, -1, 102, -1, 106, -1, 107, 34, -1, - 92, -1, 93, -1, 94, -1, 102, -1, 109, 34, - -1, -1, 111, 110, -1, 95, -1, -1, 113, 108, - -1, 111, -1, 112, -1, -1, 47, 34, -1, -1, - 113, 117, 114, 115, -1 + 119, 0, -1, 6, -1, 7, -1, 8, -1, 9, + -1, 10, -1, 11, -1, 12, -1, 13, -1, 4, + -1, 3, -1, 37, 3, -1, 38, 3, -1, 39, + 3, -1, 40, 3, -1, 41, 3, -1, 42, 3, + -1, 32, 3, 3, -1, 52, -1, 53, -1, 54, + -1, 55, -1, 56, -1, 57, -1, 58, -1, 44, + 59, -1, 15, 50, 51, -1, 15, 3, 51, -1, + 14, 50, 51, -1, 14, 3, 51, -1, 14, 51, + -1, 16, 3, -1, 17, 51, -1, 18, 5, -1, + 45, 5, -1, 45, 3, 3, -1, 69, -1, 70, + -1, 19, 5, 5, -1, 20, 5, 3, -1, 21, + 5, 51, -1, 22, 5, 5, -1, 72, -1, 73, + -1, 74, -1, 75, -1, 23, 51, -1, 24, 51, + -1, 25, 51, -1, 26, 51, -1, 27, 51, -1, + 28, 3, -1, 29, 3, -1, 51, 51, 51, -1, + 84, -1, 85, 84, -1, -1, 85, -1, 84, 86, + -1, 50, 51, 51, 51, -1, 36, 3, 51, 51, + 51, -1, 88, -1, 89, -1, 90, -1, 91, 90, + -1, -1, 91, -1, 87, -1, 92, -1, 51, 51, + 51, 51, 51, -1, 30, 94, 93, -1, 31, 93, + -1, 34, 3, -1, 33, 3, 3, -1, 46, 5, + -1, 46, 5, 5, -1, 46, 5, 5, 5, -1, + 46, 5, 5, 5, 5, -1, 46, 5, 5, 5, + 5, 5, -1, 99, -1, 100, -1, 101, -1, 102, + -1, 103, -1, 104, -1, 47, -1, 47, 5, -1, + 106, -1, 107, -1, 108, -1, 63, -1, 64, -1, + 61, -1, 62, -1, 65, -1, 66, -1, 67, -1, + 68, -1, 76, -1, 77, -1, 78, -1, 79, -1, + 80, -1, 81, -1, 82, -1, 83, -1, 60, -1, + 71, -1, 105, -1, 109, -1, 110, 35, -1, 95, + -1, 96, -1, 97, -1, 105, -1, 112, 35, -1, + -1, 114, 113, -1, 98, -1, -1, 116, 111, -1, + 114, -1, 115, -1, -1, 48, 35, -1, -1, 116, + 120, 117, 118, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 140, 140, 140, 140, 140, 141, 141, 141, 141, - 144, 156, 168, 180, 192, 204, 216, 228, 228, 228, - 228, 228, 228, 228, 231, 234, 244, 253, 263, 272, - 279, 286, 293, 302, 311, 320, 320, 323, 333, 342, - 351, 365, 365, 365, 365, 367, 374, 381, 388, 395, - 402, 410, 425, 425, 428, 428, 431, 434, 448, 461, - 461, 464, 464, 467, 467, 470, 470, 473, 488, 491, - 506, 517, 534, 540, 547, 555, 564, 575, 575, 575, - 575, 575, 578, 581, 588, 593, 593, 596, 599, 599, - 599, 599, 599, 599, 600, 600, 600, 600, 600, 600, - 600, 601, 601, 601, 601, 601, 601, 604, 608, 608, - 608, 608, 611, 615, 615, 618, 622, 622, 625, 625, - 628, 628, 633, 632 + 0, 141, 141, 141, 141, 141, 142, 142, 142, 142, + 144, 144, 147, 159, 171, 183, 195, 207, 219, 231, + 231, 231, 231, 231, 231, 231, 234, 237, 247, 256, + 266, 275, 282, 289, 296, 305, 314, 323, 323, 326, + 336, 345, 354, 368, 368, 368, 368, 370, 377, 384, + 391, 398, 405, 413, 421, 436, 436, 439, 439, 442, + 445, 459, 472, 472, 475, 475, 478, 478, 481, 481, + 484, 499, 502, 517, 528, 545, 551, 558, 566, 575, + 586, 586, 586, 586, 586, 589, 592, 599, 604, 604, + 607, 610, 610, 610, 610, 610, 610, 611, 611, 611, + 611, 611, 611, 611, 612, 612, 612, 612, 612, 612, + 612, 615, 619, 619, 619, 619, 622, 626, 626, 629, + 633, 633, 636, 636, 639, 639, 644, 643 }; #endif @@ -617,21 +620,22 @@ static const char *const yytname[] = "L_CYAN", "MAGENTA", "L_MAGENTA", "YELLOW", "D_YELLOW", "BLACK", "L_BLACK", "GAMMA", "LEVEL", "STEPS", "INK_LIMIT", "PRINTER", "PARAMETER", "PARAMETER_INT", "PARAMETER_FLOAT", "PARAMETER_CURVE", - "DENSITY", "TOP", "LEFT", "HSIZE", "VSIZE", "BLACKLINE", "PATTERN", - "XPATTERN", "EXTENDED", "IMAGE", "GRID", "SEMI", "CHANNEL", "CMYK", - "KCMY", "RGB", "CMY", "GRAY", "WHITE", "RAW", "MODE", "PAGESIZE", - "MESSAGE", "OUTPUT", "END", "$accept", "COLOR", "cmykspec", "kcmyspec", - "rgbspec", "cmyspec", "grayspec", "whitespec", "extendedspec", - "modespec", "inputspec", "level", "channel_level", "gamma", - "channel_gamma", "global_gamma", "steps", "ink_limit", "printer", - "page_size_name", "page_size_custom", "page_size", "parameter_string", - "parameter_int", "parameter_float", "parameter_curve", "parameter", - "density", "top", "left", "hsize", "vsize", "blackline", "color_block1", - "color_blocks1a", "color_blocks1b", "color_blocks1", "color_block2a", - "color_block2b", "color_block2", "color_blocks2a", "color_blocks2", - "color_blocks", "patvars", "pattern", "xpattern", "grid", "image", - "Message0", "Message1", "Message2", "Message3", "Message4", "A_Message", - "message", "Output0", "Output1", "A_Output", "output", "A_Rule", "Rule", + "DENSITY", "TOP", "LEFT", "HSIZE", "VSIZE", "BLACKLINE", "NOSCALE", + "PATTERN", "XPATTERN", "EXTENDED", "IMAGE", "GRID", "SEMI", "CHANNEL", + "CMYK", "KCMY", "RGB", "CMY", "GRAY", "WHITE", "RAW", "MODE", "PAGESIZE", + "MESSAGE", "OUTPUT", "END", "$accept", "COLOR", "NUMBER", "cmykspec", + "kcmyspec", "rgbspec", "cmyspec", "grayspec", "whitespec", + "extendedspec", "modespec", "inputspec", "level", "channel_level", + "gamma", "channel_gamma", "global_gamma", "steps", "ink_limit", + "printer", "page_size_name", "page_size_custom", "page_size", + "parameter_string", "parameter_int", "parameter_float", + "parameter_curve", "parameter", "density", "top", "left", "hsize", + "vsize", "blackline", "noscale", "color_block1", "color_blocks1a", + "color_blocks1b", "color_blocks1", "color_block2a", "color_block2b", + "color_block2", "color_blocks2a", "color_blocks2", "color_blocks", + "patvars", "pattern", "xpattern", "grid", "image", "Message0", + "Message1", "Message2", "Message3", "Message4", "A_Message", "message", + "Output0", "Output1", "A_Output", "output", "A_Rule", "Rule", "A_Pattern", "Pattern", "Patterns", "Image", "Rules", "Output", "EOF", "Thing", "@1", 0 }; @@ -646,44 +650,44 @@ static const yytype_uint16 yytoknum[] = 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 299, 300, 301, 302 + 295, 296, 297, 298, 299, 300, 301, 302, 303 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 48, 49, 49, 49, 49, 49, 49, 49, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 57, 57, - 57, 57, 57, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 69, 70, 71, 72, - 73, 74, 74, 74, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 82, 83, 83, 84, 85, 86, 87, - 87, 88, 88, 89, 89, 90, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 101, 101, - 101, 101, 102, 103, 104, 105, 105, 106, 107, 107, - 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, - 107, 107, 107, 107, 107, 107, 107, 108, 109, 109, - 109, 109, 110, 111, 111, 112, 113, 113, 114, 114, - 115, 115, 117, 116 + 0, 49, 50, 50, 50, 50, 50, 50, 50, 50, + 51, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 59, 59, 59, 59, 59, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 71, 72, + 73, 74, 75, 76, 76, 76, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 85, 86, 86, 87, + 88, 89, 90, 90, 91, 91, 92, 92, 93, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + 104, 104, 104, 104, 104, 105, 106, 107, 108, 108, + 109, 110, 110, 110, 110, 110, 110, 110, 110, 110, + 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, + 110, 111, 112, 112, 112, 112, 113, 114, 114, 115, + 116, 116, 117, 117, 118, 118, 120, 119 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ static const yytype_uint8 yyr2[] = { 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 2, 2, 2, 2, 3, 1, 1, 1, - 1, 1, 1, 1, 2, 3, 3, 3, 3, 2, - 2, 2, 2, 2, 3, 1, 1, 3, 3, 3, - 3, 1, 1, 1, 1, 2, 2, 2, 2, 2, - 2, 3, 1, 2, 0, 1, 2, 4, 5, 1, - 1, 1, 2, 0, 1, 1, 1, 5, 3, 2, - 2, 3, 2, 3, 4, 5, 6, 1, 1, 1, - 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 2, 2, 2, 2, 2, 2, 3, 1, + 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, + 3, 2, 2, 2, 2, 2, 3, 1, 1, 3, + 3, 3, 3, 1, 1, 1, 1, 2, 2, 2, + 2, 2, 2, 2, 3, 1, 2, 0, 1, 2, + 4, 5, 1, 1, 1, 2, 0, 1, 1, 1, + 5, 3, 2, 2, 3, 2, 3, 4, 5, 6, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, - 1, 1, 2, 0, 2, 1, 0, 2, 1, 1, - 0, 2, 0, 4 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 1, 1, 1, 1, 2, 0, 2, 1, + 0, 2, 1, 1, 0, 2, 0, 4 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -691,73 +695,77 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint8 yydefact[] = { - 116, 122, 0, 0, 0, 0, 0, 0, 0, 0, + 120, 126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 83, 103, 90, 91, 88, 89, 92, 93, 94, - 95, 35, 36, 104, 41, 42, 43, 44, 96, 97, - 98, 99, 100, 101, 102, 77, 78, 79, 80, 81, - 82, 105, 85, 86, 87, 106, 0, 117, 113, 1, - 0, 29, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 0, 0, 30, 31, 32, 0, 0, 0, 0, - 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, - 0, 0, 0, 17, 18, 19, 20, 21, 22, 23, - 24, 0, 33, 72, 84, 107, 0, 115, 118, 119, - 120, 28, 27, 26, 25, 37, 38, 39, 40, 0, - 10, 11, 12, 13, 14, 15, 34, 73, 0, 0, - 63, 0, 108, 109, 110, 111, 0, 114, 0, 123, - 16, 74, 71, 0, 63, 0, 0, 0, 54, 65, - 59, 60, 61, 64, 66, 69, 70, 112, 121, 75, - 0, 68, 0, 0, 0, 52, 55, 56, 62, 76, - 0, 51, 0, 0, 53, 0, 0, 57, 67, 58 + 0, 0, 86, 107, 93, 94, 91, 92, 95, 96, + 97, 98, 37, 38, 108, 43, 44, 45, 46, 99, + 100, 101, 102, 103, 104, 105, 106, 80, 81, 82, + 83, 84, 85, 109, 88, 89, 90, 110, 0, 121, + 117, 1, 11, 10, 2, 3, 4, 5, 6, 7, + 8, 9, 0, 31, 0, 0, 32, 11, 33, 34, + 0, 0, 0, 0, 47, 48, 49, 50, 51, 52, + 53, 0, 0, 0, 0, 0, 0, 0, 19, 20, + 21, 22, 23, 24, 25, 26, 0, 35, 75, 87, + 111, 0, 119, 122, 123, 124, 30, 29, 28, 27, + 39, 40, 41, 42, 0, 12, 13, 14, 15, 16, + 17, 36, 76, 0, 0, 66, 0, 112, 113, 114, + 115, 0, 118, 0, 127, 18, 77, 74, 0, 66, + 0, 0, 0, 57, 68, 62, 63, 64, 67, 69, + 72, 73, 116, 125, 78, 0, 71, 0, 0, 0, + 55, 58, 59, 65, 79, 0, 0, 0, 54, 56, + 0, 0, 60, 70, 61 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 147, 93, 94, 95, 96, 97, 98, 99, 100, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + -1, 151, 152, 98, 99, 100, 101, 102, 103, 104, + 105, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 148, 166, 167, 149, 150, 151, 152, - 153, 154, 155, 144, 132, 133, 134, 107, 45, 46, + 42, 43, 44, 45, 46, 153, 171, 172, 154, 155, + 156, 157, 158, 159, 160, 149, 137, 138, 139, 112, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 136, 137, 108, 109, 1, 110, 139, 2, 58 + 57, 58, 59, 141, 142, 113, 114, 1, 115, 144, + 2, 60 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -124 -static const yytype_int16 yypact[] = +#define YYPACT_NINF -112 +static const yytype_int8 yypact[] = { - -124, -14, 16, 57, 41, 24, 54, 67, 68, 69, - 70, 77, 55, 79, 80, 81, 82, 84, 40, 23, - 83, 85, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, 58, -124, 59, -124, - 89, -124, -124, -124, -124, -124, -124, -124, -124, -124, - 90, 91, 92, -124, -124, -124, 93, 86, 95, 96, - -124, -124, -124, -124, -124, -124, 94, 97, 99, 100, - 101, 102, 103, -124, -124, -124, -124, -124, -124, -124, - -124, 104, -124, 105, -124, -124, 106, -124, 12, -124, - 61, -124, -124, -124, -124, -124, -124, -124, -124, 108, - -124, -124, -124, -124, -124, -124, -124, 107, 110, 111, - 11, 113, -124, -124, -124, -124, 87, -124, 88, -124, - -124, 109, -124, 114, 11, 115, 117, 119, 120, -124, - -124, -124, -124, 27, -124, -124, -124, -124, -124, 112, - 121, -124, 122, 123, 124, -124, 120, -124, -124, -124, - 125, -124, 126, 127, -124, 128, 129, -124, -124, -124 + -112, 0, 1, 77, 88, 29, 2, 36, 38, 51, + 52, 53, 2, 2, 2, 2, 2, 61, 63, 70, + -1, 62, 65, -112, -112, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -112, -112, -112, 33, -112, + 40, -112, 2, -112, -112, -112, -112, -112, -112, -112, + -112, -112, 2, -112, 2, 2, -112, -112, -112, -112, + 69, 72, 2, 71, -112, -112, -112, -112, -112, -112, + -112, 79, 89, 90, 100, 101, 102, 103, -112, -112, + -112, -112, -112, -112, -112, -112, 110, -112, 109, -112, + -112, 112, -112, 31, -112, 68, -112, -112, -112, -112, + -112, -112, -112, -112, 114, -112, -112, -112, -112, -112, + -112, -112, 113, 116, 2, 27, 117, -112, -112, -112, + -112, 86, -112, 87, -112, -112, 118, -112, 2, 27, + 121, 2, 2, 2, -112, -112, -112, -112, 42, -112, + -112, -112, -112, -112, 120, 2, -112, 2, 2, 2, + -112, 2, -112, -112, -112, 2, 2, 2, -112, -112, + 2, 2, -112, -112, -112 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int8 yypgoto[] = { - -124, 52, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -123, -124, -124, -124, -124, -124, -19, - -124, -124, -9, -124, -124, -124, -124, -124, -124, -124, - -124, -124, -124, -124, 28, -124, -124, -124, -124, -124, - -124, -124, -124, -124, -124, -124, -124, -124, -124, -124 + -112, 4, -3, -112, -112, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -111, -112, -112, -112, -112, + -112, -32, -112, -112, -22, -112, -112, -112, -112, -112, + -112, -112, -112, -112, -112, -112, 15, -112, -112, -112, + -112, -112, -112, -112, -112, -112, -112, -112, -112, -112, + -112, -112 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -767,62 +775,71 @@ static const yytype_int8 yypgoto[] = #define YYTABLE_NINF -1 static const yytype_uint8 yytable[] = { - 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 14, 15, 16, 17, 145, 59, 62, 63, 64, - 65, 66, 67, 68, 69, 165, 101, 73, 102, 18, - 19, 20, 21, 62, 63, 64, 65, 66, 67, 68, - 69, 129, 130, 174, 71, 131, 146, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 72, 20, 74, 80, - 60, 61, 146, 62, 63, 64, 65, 66, 67, 68, - 69, 86, 75, 76, 77, 78, 87, 88, 89, 90, - 91, 92, 79, 81, 82, 83, 84, 85, 103, 116, - 104, 106, 105, 111, 112, 113, 114, 119, 115, 117, - 120, 118, 121, 122, 123, 124, 125, 126, 138, 128, - 127, 140, 141, 142, 159, 143, 156, 169, 160, 162, - 163, 157, 158, 164, 145, 170, 171, 172, 173, 175, - 176, 177, 178, 179, 168, 161, 135 + 73, 61, 106, 78, 107, 77, 63, 72, 75, 84, + 85, 86, 87, 88, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 77, 63, 76, 64, 65, 66, 67, 68, 69, 70, + 71, 79, 170, 80, 19, 20, 21, 22, 64, 65, + 66, 67, 68, 69, 70, 71, 81, 82, 83, 116, + 179, 134, 135, 150, 89, 136, 90, 108, 110, 117, + 109, 118, 119, 111, 120, 121, 123, 21, 150, 122, + 62, 63, 124, 64, 65, 66, 67, 68, 69, 70, + 71, 74, 125, 126, 64, 65, 66, 67, 68, 69, + 70, 71, 91, 127, 128, 129, 130, 92, 93, 94, + 95, 96, 97, 131, 132, 133, 143, 145, 146, 147, + 161, 162, 163, 164, 167, 174, 173, 166, 140, 0, + 0, 148, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 165, 0, 0, 168, 169, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 175, 0, 176, 177, 178, 0, 0, 0, + 0, 0, 180, 181, 182, 0, 0, 183, 184 }; -static const yytype_uint8 yycheck[] = +static const yytype_int16 yycheck[] = { - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 4, 0, 6, 7, 8, - 9, 10, 11, 12, 13, 148, 3, 3, 5, 43, - 44, 45, 46, 6, 7, 8, 9, 10, 11, 12, - 13, 29, 30, 166, 3, 33, 35, 6, 7, 8, - 9, 10, 11, 12, 13, 3, 4, 45, 4, 4, - 3, 4, 35, 6, 7, 8, 9, 10, 11, 12, - 13, 31, 5, 5, 5, 5, 36, 37, 38, 39, - 40, 41, 5, 4, 4, 4, 4, 3, 5, 3, - 5, 32, 34, 4, 4, 4, 4, 3, 5, 4, - 3, 5, 3, 3, 3, 3, 3, 3, 47, 3, - 5, 3, 5, 3, 5, 4, 3, 5, 4, 4, - 3, 34, 34, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 153, 144, 108 + 3, 0, 3, 6, 5, 3, 4, 3, 4, 12, + 13, 14, 15, 16, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 3, 4, 3, 6, 7, 8, 9, 10, 11, 12, + 13, 5, 153, 5, 44, 45, 46, 47, 6, 7, + 8, 9, 10, 11, 12, 13, 5, 5, 5, 62, + 171, 30, 31, 36, 3, 34, 3, 5, 35, 72, + 5, 74, 75, 33, 5, 3, 5, 46, 36, 82, + 3, 4, 3, 6, 7, 8, 9, 10, 11, 12, + 13, 3, 3, 3, 6, 7, 8, 9, 10, 11, + 12, 13, 32, 3, 3, 3, 3, 37, 38, 39, + 40, 41, 42, 3, 5, 3, 48, 3, 5, 3, + 3, 35, 35, 5, 3, 5, 158, 149, 113, -1, + -1, 134, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 148, -1, -1, 151, 152, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 165, -1, 167, 168, 169, -1, -1, -1, + -1, -1, 175, 176, 177, -1, -1, 180, 181 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 113, 116, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 43, 44, - 45, 46, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 117, 0, - 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, - 49, 3, 49, 3, 4, 5, 5, 5, 5, 5, - 4, 4, 4, 4, 4, 3, 31, 36, 37, 38, - 39, 40, 41, 50, 51, 52, 53, 54, 55, 56, - 57, 3, 5, 5, 5, 34, 32, 95, 111, 112, - 114, 4, 4, 4, 4, 5, 3, 4, 5, 3, - 3, 3, 3, 3, 3, 3, 3, 5, 3, 29, - 30, 33, 92, 93, 94, 102, 109, 110, 47, 115, - 3, 5, 3, 4, 91, 4, 35, 49, 81, 84, - 85, 86, 87, 88, 89, 90, 3, 34, 34, 5, - 4, 90, 4, 3, 4, 81, 82, 83, 87, 5, - 4, 4, 4, 4, 81, 4, 4, 4, 4, 4 + 0, 116, 119, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 44, + 45, 46, 47, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 120, 0, 3, 4, 6, 7, 8, 9, 10, 11, + 12, 13, 50, 51, 3, 50, 3, 3, 51, 5, + 5, 5, 5, 5, 51, 51, 51, 51, 51, 3, + 3, 32, 37, 38, 39, 40, 41, 42, 52, 53, + 54, 55, 56, 57, 58, 59, 3, 5, 5, 5, + 35, 33, 98, 114, 115, 117, 51, 51, 51, 51, + 5, 3, 51, 5, 3, 3, 3, 3, 3, 3, + 3, 3, 5, 3, 30, 31, 34, 95, 96, 97, + 105, 112, 113, 48, 118, 3, 5, 3, 51, 94, + 36, 50, 51, 84, 87, 88, 89, 90, 91, 92, + 93, 3, 35, 35, 5, 51, 93, 3, 51, 51, + 84, 85, 86, 90, 5, 51, 51, 51, 51, 84, + 51, 51, 51, 51, 51 }; #define yyerrok (yyerrstatus = 0) @@ -1636,8 +1653,8 @@ yyreduce: YY_REDUCE_PRINT (yyn); switch (yyn) { - case 10: -#line 145 "testpatterny.y" + case 12: +#line 148 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>cmykspec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1649,8 +1666,8 @@ yyreduce: } break; - case 11: -#line 157 "testpatterny.y" + case 13: +#line 160 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>kcmyspec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1662,8 +1679,8 @@ yyreduce: } break; - case 12: -#line 169 "testpatterny.y" + case 14: +#line 172 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>rgbspec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1675,8 +1692,8 @@ yyreduce: } break; - case 13: -#line 181 "testpatterny.y" + case 15: +#line 184 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>cmyspec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1688,8 +1705,8 @@ yyreduce: } break; - case 14: -#line 193 "testpatterny.y" + case 16: +#line 196 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>grayspec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1701,8 +1718,8 @@ yyreduce: } break; - case 15: -#line 205 "testpatterny.y" + case 17: +#line 208 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>whitespec %d\n", (yyvsp[(2) - (2)].ival)); @@ -1714,8 +1731,8 @@ yyreduce: } break; - case 16: -#line 217 "testpatterny.y" + case 18: +#line 220 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>extendedspec %d\n", (yyvsp[(2) - (3)].ival)); @@ -1727,59 +1744,59 @@ yyreduce: } break; - case 25: -#line 235 "testpatterny.y" + case 27: +#line 238 "testpatterny.y" { int channel = find_color((yyvsp[(2) - (3)]).sval); if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>level %s %f\n", (yyvsp[(2) - (3)]).sval, (yyvsp[(3) - (3)].dval)); + fprintf(stderr, ">>>level %s %f\n", (yyvsp[(2) - (3)]).sval, (yyvsp[(3) - (3)]).dval); if (channel >= 0) - global_levels[channel] = (yyvsp[(3) - (3)].dval); + global_levels[channel] = (yyvsp[(3) - (3)]).dval; } break; - case 26: -#line 245 "testpatterny.y" + case 28: +#line 248 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>channel_level %d %f\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].dval)); + fprintf(stderr, ">>>channel_level %d %f\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)]).dval); if ((yyvsp[(2) - (3)].ival) >= 0 && (yyvsp[(2) - (3)].ival) <= STP_CHANNEL_LIMIT) - global_levels[(yyvsp[(2) - (3)].ival)] = (yyvsp[(3) - (3)].dval); + global_levels[(yyvsp[(2) - (3)].ival)] = (yyvsp[(3) - (3)]).dval; } break; - case 27: -#line 254 "testpatterny.y" + case 29: +#line 257 "testpatterny.y" { int channel = find_color((yyvsp[(2) - (3)]).sval); if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>gamma %s %f\n", (yyvsp[(2) - (3)]).sval, (yyvsp[(3) - (3)].dval)); + fprintf(stderr, ">>>gamma %s %f\n", (yyvsp[(2) - (3)]).sval, (yyvsp[(3) - (3)]).dval); if (channel >= 0) - global_gammas[channel] = (yyvsp[(3) - (3)].dval); + global_gammas[channel] = (yyvsp[(3) - (3)]).dval; } break; - case 28: -#line 264 "testpatterny.y" + case 30: +#line 267 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>channel_gamma %d %f\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].dval)); + fprintf(stderr, ">>>channel_gamma %d %f\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)]).dval); if ((yyvsp[(2) - (3)].ival) >= 0 && (yyvsp[(2) - (3)].ival) <= STP_CHANNEL_LIMIT) - global_gammas[(yyvsp[(2) - (3)].ival)] = (yyvsp[(3) - (3)].dval); + global_gammas[(yyvsp[(2) - (3)].ival)] = (yyvsp[(3) - (3)]).dval; } break; - case 29: -#line 273 "testpatterny.y" + case 31: +#line 276 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>global_gamma %f\n", (yyvsp[(2) - (2)].dval)); - global_gamma = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>global_gamma %f\n", (yyvsp[(2) - (2)]).dval); + global_gamma = (yyvsp[(2) - (2)]).dval; } break; - case 30: -#line 280 "testpatterny.y" + case 32: +#line 283 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>steps %d\n", (yyvsp[(2) - (2)].ival)); @@ -1787,17 +1804,17 @@ yyreduce: } break; - case 31: -#line 287 "testpatterny.y" + case 33: +#line 290 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>ink_limit %f\n", (yyvsp[(2) - (2)].dval)); - global_ink_limit = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>ink_limit %f\n", (yyvsp[(2) - (2)]).dval); + global_ink_limit = (yyvsp[(2) - (2)]).dval; } break; - case 32: -#line 294 "testpatterny.y" + case 34: +#line 297 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>printer %s\n", (yyvsp[(2) - (2)].sval)); @@ -1806,8 +1823,8 @@ yyreduce: } break; - case 33: -#line 303 "testpatterny.y" + case 35: +#line 306 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>page_size_name %s\n", (yyvsp[(2) - (2)].sval)); @@ -1816,8 +1833,8 @@ yyreduce: } break; - case 34: -#line 312 "testpatterny.y" + case 36: +#line 315 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>page_size_custom %d %d\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].ival)); @@ -1826,8 +1843,8 @@ yyreduce: } break; - case 37: -#line 324 "testpatterny.y" + case 39: +#line 327 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>parameter_string %s %s\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].sval)); @@ -1837,8 +1854,8 @@ yyreduce: } break; - case 38: -#line 334 "testpatterny.y" + case 40: +#line 337 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>parameter_int %s %d\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].ival)); @@ -1847,18 +1864,18 @@ yyreduce: } break; - case 39: -#line 343 "testpatterny.y" + case 41: +#line 346 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>parameter_float %s %f\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].dval)); - stp_set_float_parameter(global_vars, (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].dval)); + fprintf(stderr, ">>>parameter_float %s %f\n", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)]).dval); + stp_set_float_parameter(global_vars, (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)]).dval); free((yyvsp[(2) - (3)].sval)); } break; - case 40: -#line 352 "testpatterny.y" + case 42: +#line 355 "testpatterny.y" { stp_curve_t *curve = stp_curve_create_from_string((yyvsp[(3) - (3)].sval)); if (getenv("STP_TESTPATTERN_DEBUG")) @@ -1872,53 +1889,53 @@ yyreduce: } break; - case 45: -#line 368 "testpatterny.y" + case 47: +#line 371 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>density %f\n", (yyvsp[(2) - (2)].dval)); - global_density = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>density %f\n", (yyvsp[(2) - (2)]).dval); + global_density = (yyvsp[(2) - (2)]).dval; } break; - case 46: -#line 375 "testpatterny.y" + case 48: +#line 378 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>top %f\n", (yyvsp[(2) - (2)].dval)); - global_xtop = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>top %f\n", (yyvsp[(2) - (2)]).dval); + global_xtop = (yyvsp[(2) - (2)]).dval; } break; - case 47: -#line 382 "testpatterny.y" + case 49: +#line 385 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>left %f\n", (yyvsp[(2) - (2)].dval)); - global_xleft = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>left %f\n", (yyvsp[(2) - (2)]).dval); + global_xleft = (yyvsp[(2) - (2)]).dval; } break; - case 48: -#line 389 "testpatterny.y" + case 50: +#line 392 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>hsize %f\n", (yyvsp[(2) - (2)].dval)); - global_hsize = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>hsize %f\n", (yyvsp[(2) - (2)]).dval); + global_hsize = (yyvsp[(2) - (2)]).dval; } break; - case 49: -#line 396 "testpatterny.y" + case 51: +#line 399 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>vsize %f\n", (yyvsp[(2) - (2)].dval)); - global_vsize = (yyvsp[(2) - (2)].dval); + fprintf(stderr, ">>>vsize %f\n", (yyvsp[(2) - (2)]).dval); + global_vsize = (yyvsp[(2) - (2)]).dval; } break; - case 50: -#line 403 "testpatterny.y" + case 52: +#line 406 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>blackline %d\n", (yyvsp[(2) - (2)].ival)); @@ -1926,69 +1943,78 @@ yyreduce: } break; - case 51: -#line 411 "testpatterny.y" + case 53: +#line 414 "testpatterny.y" + { + if (getenv("STP_TESTPATTERN_DEBUG")) + fprintf(stderr, ">>>noscale %d\n", (yyvsp[(2) - (2)].ival)); + global_noscale = (yyvsp[(2) - (2)].ival); + } + break; + + case 54: +#line 422 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>color_block1 %f %f %f (%d)\n", (yyvsp[(1) - (3)].dval), (yyvsp[(2) - (3)].dval), (yyvsp[(3) - (3)].dval), + fprintf(stderr, ">>>color_block1 %f %f %f (%d)\n", (yyvsp[(1) - (3)]).dval, (yyvsp[(2) - (3)]).dval, (yyvsp[(3) - (3)]).dval, current_index); if (current_index < STP_CHANNEL_LIMIT) { - current_testpattern->d.p.mins[current_index] = (yyvsp[(1) - (3)].dval); - current_testpattern->d.p.vals[current_index] = (yyvsp[(2) - (3)].dval); - current_testpattern->d.p.gammas[current_index] = (yyvsp[(3) - (3)].dval); + current_testpattern->d.pattern.mins[current_index] = (yyvsp[(1) - (3)]).dval; + current_testpattern->d.pattern.vals[current_index] = (yyvsp[(2) - (3)]).dval; + current_testpattern->d.pattern.gammas[current_index] = (yyvsp[(3) - (3)]).dval; current_index++; } } break; - case 57: -#line 435 "testpatterny.y" + case 60: +#line 446 "testpatterny.y" { int channel = find_color((yyvsp[(1) - (4)]).sval); if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>color_block2a %s %f %f %f\n", (yyvsp[(1) - (4)]).sval, (yyvsp[(2) - (4)].dval), (yyvsp[(3) - (4)].dval), (yyvsp[(4) - (4)].dval)); + fprintf(stderr, ">>>color_block2a %s %f %f %f\n", (yyvsp[(1) - (4)]).sval, (yyvsp[(2) - (4)]).dval, (yyvsp[(3) - (4)]).dval, (yyvsp[(4) - (4)]).dval); if (channel >= 0 && channel < STP_CHANNEL_LIMIT) { - current_testpattern->d.p.mins[channel] = (yyvsp[(2) - (4)].dval); - current_testpattern->d.p.vals[channel] = (yyvsp[(3) - (4)].dval); - current_testpattern->d.p.gammas[channel] = (yyvsp[(4) - (4)].dval); + current_testpattern->d.pattern.mins[channel] = (yyvsp[(2) - (4)]).dval; + current_testpattern->d.pattern.vals[channel] = (yyvsp[(3) - (4)]).dval; + current_testpattern->d.pattern.gammas[channel] = (yyvsp[(4) - (4)]).dval; } } break; - case 58: -#line 449 "testpatterny.y" + case 61: +#line 460 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>color_block2b %d %f %f %f\n", (yyvsp[(2) - (5)].ival), (yyvsp[(3) - (5)].dval), (yyvsp[(4) - (5)].dval), (yyvsp[(5) - (5)].dval)); + fprintf(stderr, ">>>color_block2b %d %f %f %f\n", (yyvsp[(2) - (5)].ival), (yyvsp[(3) - (5)]).dval, (yyvsp[(4) - (5)]).dval, (yyvsp[(5) - (5)]).dval); if ((yyvsp[(2) - (5)].ival) >= 0 && (yyvsp[(2) - (5)].ival) < STP_CHANNEL_LIMIT) { - current_testpattern->d.p.mins[(yyvsp[(2) - (5)].ival)] = (yyvsp[(3) - (5)].dval); - current_testpattern->d.p.vals[(yyvsp[(2) - (5)].ival)] = (yyvsp[(4) - (5)].dval); - current_testpattern->d.p.gammas[(yyvsp[(2) - (5)].ival)] = (yyvsp[(5) - (5)].dval); + current_testpattern->d.pattern.mins[(yyvsp[(2) - (5)].ival)] = (yyvsp[(3) - (5)]).dval; + current_testpattern->d.pattern.vals[(yyvsp[(2) - (5)].ival)] = (yyvsp[(4) - (5)]).dval; + current_testpattern->d.pattern.gammas[(yyvsp[(2) - (5)].ival)] = (yyvsp[(5) - (5)]).dval; } } break; - case 67: -#line 474 "testpatterny.y" + case 70: +#line 485 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) - fprintf(stderr, ">>>patvars %f %f %f %f %f\n", (yyvsp[(1) - (5)].dval), (yyvsp[(2) - (5)].dval), (yyvsp[(3) - (5)].dval), (yyvsp[(4) - (5)].dval), (yyvsp[(5) - (5)].dval)); - current_testpattern->t = E_PATTERN; - current_testpattern->d.p.lower = (yyvsp[(1) - (5)].dval); - current_testpattern->d.p.upper = (yyvsp[(2) - (5)].dval); - current_testpattern->d.p.levels[1] = (yyvsp[(3) - (5)].dval); - current_testpattern->d.p.levels[2] = (yyvsp[(4) - (5)].dval); - current_testpattern->d.p.levels[3] = (yyvsp[(5) - (5)].dval); + fprintf(stderr, ">>>patvars %f %f %f %f %f\n", (yyvsp[(1) - (5)]).dval, (yyvsp[(2) - (5)]).dval, (yyvsp[(3) - (5)]).dval, (yyvsp[(4) - (5)]).dval, (yyvsp[(5) - (5)]).dval); + current_testpattern->type = E_PATTERN; + current_testpattern->d.pattern.lower = (yyvsp[(1) - (5)]).dval; + current_testpattern->d.pattern.upper = (yyvsp[(2) - (5)]).dval; + current_testpattern->d.pattern.levels[1] = (yyvsp[(3) - (5)]).dval; + current_testpattern->d.pattern.levels[2] = (yyvsp[(4) - (5)]).dval; + current_testpattern->d.pattern.levels[3] = (yyvsp[(5) - (5)]).dval; current_testpattern = get_next_testpattern(); current_index = 0; } break; - case 69: -#line 492 "testpatterny.y" + case 72: +#line 503 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>xpattern\n"); @@ -1997,34 +2023,34 @@ yyreduce: fprintf(stderr, "xpattern may only be used with extended color depth\n"); exit(1); } - current_testpattern->t = E_XPATTERN; + current_testpattern->type = E_XPATTERN; current_testpattern = get_next_testpattern(); current_index = 0; } break; - case 70: -#line 507 "testpatterny.y" + case 73: +#line 518 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>grid %d\n", (yyvsp[(2) - (2)].ival)); - current_testpattern->t = E_GRID; - current_testpattern->d.g.ticks = (yyvsp[(2) - (2)].ival); + current_testpattern->type = E_GRID; + current_testpattern->d.grid.ticks = (yyvsp[(2) - (2)].ival); current_testpattern = get_next_testpattern(); current_index = 0; } break; - case 71: -#line 518 "testpatterny.y" + case 74: +#line 529 "testpatterny.y" { if (getenv("STP_TESTPATTERN_DEBUG")) fprintf(stderr, ">>>image %d %d\n", (yyvsp[(2) - (3)].ival), (yyvsp[(3) - (3)].ival)); - current_testpattern->t = E_IMAGE; - current_testpattern->d.i.x = (yyvsp[(2) - (3)].ival); - current_testpattern->d.i.y = (yyvsp[(3) - (3)].ival); - if (current_testpattern->d.i.x <= 0 || - current_testpattern->d.i.y <= 0) + current_testpattern->type = E_IMAGE; + current_testpattern->d.image.x = (yyvsp[(2) - (3)].ival); + current_testpattern->d.image.y = (yyvsp[(3) - (3)].ival); + if (current_testpattern->d.image.x <= 0 || + current_testpattern->d.image.y <= 0) { fprintf(stderr, "image width and height must be greater than zero\n"); exit(1); @@ -2033,16 +2059,16 @@ yyreduce: } break; - case 72: -#line 535 "testpatterny.y" + case 75: +#line 546 "testpatterny.y" { fprintf(stderr,"%s",(yyvsp[(2) - (2)].sval)); free((yyvsp[(2) - (2)].sval)); } break; - case 73: -#line 541 "testpatterny.y" + case 76: +#line 552 "testpatterny.y" { fprintf(stderr,"%s%s", (yyvsp[(2) - (3)].sval), (yyvsp[(3) - (3)].sval)); free((yyvsp[(2) - (3)].sval)); @@ -2050,8 +2076,8 @@ yyreduce: } break; - case 74: -#line 548 "testpatterny.y" + case 77: +#line 559 "testpatterny.y" { fprintf(stderr,"%s%s%s", (yyvsp[(2) - (4)].sval), (yyvsp[(3) - (4)].sval), (yyvsp[(4) - (4)].sval)); free((yyvsp[(2) - (4)].sval)); @@ -2060,8 +2086,8 @@ yyreduce: } break; - case 75: -#line 556 "testpatterny.y" + case 78: +#line 567 "testpatterny.y" { fprintf(stderr, "%s%s%s%s", (yyvsp[(2) - (5)].sval), (yyvsp[(3) - (5)].sval), (yyvsp[(4) - (5)].sval), (yyvsp[(5) - (5)].sval)); free((yyvsp[(2) - (5)].sval)); @@ -2071,8 +2097,8 @@ yyreduce: } break; - case 76: -#line 565 "testpatterny.y" + case 79: +#line 576 "testpatterny.y" { fprintf(stderr, "%s%s%s%s%s", (yyvsp[(2) - (6)].sval), (yyvsp[(3) - (6)].sval), (yyvsp[(4) - (6)].sval), (yyvsp[(5) - (6)].sval), (yyvsp[(6) - (6)].sval)); free((yyvsp[(2) - (6)].sval)); @@ -2083,8 +2109,8 @@ yyreduce: } break; - case 83: -#line 582 "testpatterny.y" + case 86: +#line 593 "testpatterny.y" { if (global_output) free(global_output); @@ -2092,35 +2118,35 @@ yyreduce: } break; - case 84: -#line 589 "testpatterny.y" + case 87: +#line 600 "testpatterny.y" { global_output = (yyvsp[(2) - (2)].sval); } break; - case 107: -#line 605 "testpatterny.y" + case 111: +#line 616 "testpatterny.y" { global_did_something = 1; } break; - case 112: -#line 612 "testpatterny.y" + case 116: +#line 623 "testpatterny.y" { global_did_something = 1; } break; - case 115: -#line 619 "testpatterny.y" + case 119: +#line 630 "testpatterny.y" { global_did_something = 1; } break; - case 121: -#line 629 "testpatterny.y" + case 125: +#line 640 "testpatterny.y" { return 0; } break; - case 122: -#line 633 "testpatterny.y" + case 126: +#line 644 "testpatterny.y" { current_testpattern = get_next_testpattern(); } @@ -2128,7 +2154,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 2132 "testpatterny.c" +#line 2158 "testpatterny.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2342,6 +2368,6 @@ yyreturn: } -#line 639 "testpatterny.y" +#line 650 "testpatterny.y" |