From 6a7840d9a4e9272761a90e7f82545b86dfb4c479 Mon Sep 17 00:00:00 2001 From: erdgeist Date: Wed, 4 Apr 2018 02:42:04 +0200 Subject: Whitespaces. --- config.c | 435 ++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 219 insertions(+), 216 deletions(-) diff --git a/config.c b/config.c index e8014c5..e29900f 100644 --- a/config.c +++ b/config.c @@ -137,292 +137,290 @@ static keyword keywords[] = { static int config_findkeyword(char **line) { - char *_l = *line; - int i; + char *_l = *line; + int i; - while (isspace(*_l)) - ++_l; + while (isspace(*_l)) + ++_l; - for (i = 0; keywords[i].name; ++i) { - size_t kl = strlen(keywords[i].name); + for (i = 0; keywords[i].name; ++i) { + size_t kl = strlen(keywords[i].name); - if (!strncasecmp(_l, keywords[i].name, kl)) { - if (!isspace(_l[kl]) && _l[kl]) - continue; - _l += strlen(keywords[i].name); + if (!strncasecmp(_l, keywords[i].name, kl)) { + if (!isspace(_l[kl]) && _l[kl]) + continue; + _l += strlen(keywords[i].name); - /* Skip rest of white spaces */ - while (isspace(*_l)) - ++_l; - *line = _l; - return keywords[i].id; - } + /* Skip rest of white spaces */ + while (isspace(*_l)) + ++_l; + *line = _l; + return keywords[i].id; } - return -1; + } + return -1; } static uint8_t config_midi_note_from_string(char *string) { - int i; + int i; - for (i = 0; i < sizeof(midi_note) / sizeof(*midi_note); ++i) - if (!strncasecmp(string, midi_note[i], strlen(midi_note[i]))) - return i; - return 0xff; + for (i = 0; i < sizeof(midi_note) / sizeof(*midi_note); ++i) + if (!strncasecmp(string, midi_note[i], strlen(midi_note[i]))) + return i; + return 0xff; } char * config_midi_note_to_string(int string) { - return midi_note[string]; + return midi_note[string]; } int config_handle_line(char *line) { - StringConfig *sc = g_string_conf + g_current_string; - int split_done = 0; - char *_line = line; - - /* Skip leading spaces */ - while (isspace(*line)) - ++line; - if (*line == 0 || *line == '#' || *line == '\n') - return 0; + StringConfig *sc = g_string_conf + g_current_string; + int split_done = 0; + char *_line = line; + + /* Skip leading spaces */ + while (isspace(*line)) + ++line; + if (*line == 0 || *line == '#' || *line == '\n') + return 0; - switch (config_findkeyword(&line)) { + switch (config_findkeyword(&line)) { case KEYWORD_STRINGS: - g_string_count = atol(line); - if (!g_string_count || g_string_count > MAX_LINECOUNT) { - harfe_error(stderr, "Incorrect number of strings: %s\n", _line); - return -1; - } - harfe_debug("GLOBAL: Configuring expected lines %d\n", g_string_count); - break; + g_string_count = atol(line); + if (!g_string_count || g_string_count > MAX_LINECOUNT) { + harfe_error(stderr, "Incorrect number of strings: %s\n", _line); + return -1; + } + harfe_debug("GLOBAL: Configuring expected lines %d\n", g_string_count); + break; case KEYWORD_STRING: - g_current_string = atol(line) - 1; - harfe_debug("Switching to string: %d\n", g_current_string + 1); - if (g_current_string < 0 || g_current_string > g_string_count) { - harfe_error(stderr, "Incorrect string selected: %s\n", _line); - return -1; - } - break; + g_current_string = atol(line) - 1; + harfe_debug("Switching to string: %d\n", g_current_string + 1); + if (g_current_string < 0 || g_current_string > g_string_count) { + harfe_error(stderr, "Incorrect string selected: %s\n", _line); + return -1; + } + break; case KEYWORD_LINE: - { - LLine *l = &sc->line; - - if (sscanf(line, "%d %d %d %d", &l->p0.x, &l->p0.y, &l->p1.x, &l->p1.y) != 4) { - harfe_error(stderr, "Incorrect Line statement for string\n"); - return -1; - } - if (l->p0.y > l->p1.y) { - LPoint tmp = l->p0; - l->p0 = l->p1; - l->p1 = tmp; - } - if (l->p0.y > g_min_y) - g_min_y = l->p0.y; - if (l->p0.y < g_max_y) - g_max_y = l->p1.y; - break; + { + LLine *l = &sc->line; + + if (sscanf(line, "%d %d %d %d", &l->p0.x, &l->p0.y, &l->p1.x, &l->p1.y) != 4) { + harfe_error(stderr, "Incorrect Line statement for string\n"); + return -1; + } + if (l->p0.y > l->p1.y) { + LPoint tmp = l->p0; + l->p0 = l->p1; + l->p1 = tmp; } + if (l->p0.y > g_min_y) + g_min_y = l->p0.y; + if (l->p0.y < g_max_y) + g_max_y = l->p1.y; + break; + } case KEYWORD_MODE: - switch (config_findkeyword(&line)) { + switch (config_findkeyword(&line)) { case KEYWORD_MODE_ONE_OCTAVE: - sc->mode = midi_one_octave; - harfe_debug("String %d is midi_one_octave\n", 1 + g_current_string); - break; + sc->mode = midi_one_octave; + harfe_debug("String %d is midi_one_octave\n", 1 + g_current_string); + break; case KEYWORD_MODE_TWO_OCTAVES: - sc->mode = midi_two_octaves; - harfe_debug("String %d is midi_two_octaves\n", 1 + g_current_string); - break; + sc->mode = midi_two_octaves; + harfe_debug("String %d is midi_two_octaves\n", 1 + g_current_string); + break; case KEYWORD_MODE_THREE_OCTAVES: - sc->mode = midi_three_octaves; - harfe_debug("String %d is midi_three_octaves\n", 1 + g_current_string); - break; + sc->mode = midi_three_octaves; + harfe_debug("String %d is midi_three_octaves\n", 1 + g_current_string); + break; case KEYWORD_MODE_CONTROL: - sc->mode = midi_control; - harfe_debug("String %d is midi_control\n", 1 + g_current_string); - break; + sc->mode = midi_control; + harfe_debug("String %d is midi_control\n", 1 + g_current_string); + break; case KEYWORD_MODE_CONTROL_INVERSE: - sc->mode = midi_control_inv; - harfe_debug("String %d is midi_control_inverse\n", 1 + g_current_string); - break; + sc->mode = midi_control_inv; + harfe_debug("String %d is midi_control_inverse\n", 1 + g_current_string); + break; default: - harfe_error(stderr, "Illegal Mode for string: %s\n", _line); - return -1; + harfe_error(stderr, "Illegal Mode for string: %s\n", _line); + return -1; - } - break; + } + break; case KEYWORD_CHANNEL: - sc->channel = atol(line); - if (sc->channel > 16) { - harfe_error(stderr, "Incorrect channel specified: %s.\n", _line); - return -1; - } - harfe_debug("String %d is on channel %d\n", 1 + g_current_string, sc->channel); - break; + sc->channel = atol(line); + if (sc->channel > 16) { + harfe_error(stderr, "Incorrect channel specified: %s.\n", _line); + return -1; + } + harfe_debug("String %d is on channel %d\n", 1 + g_current_string, sc->channel); + break; case KEYWORD_NOTE: - sc->note = config_midi_note_from_string(line); - if (sc->note == 0xff) { - harfe_error(stderr, "Unknown midi note specified: %s.\n", _line); - return -1; - } - harfe_debug("String %d is midi note %d\n", 1 + g_current_string, sc->note); - break; + sc->note = config_midi_note_from_string(line); + if (sc->note == 0xff) { + harfe_error(stderr, "Unknown midi note specified: %s.\n", _line); + return -1; + } + harfe_debug("String %d is midi note %d\n", 1 + g_current_string, sc->note); + break; case KEYWORD_AFTERTOUCH: - switch (config_findkeyword(&line)) { + switch (config_findkeyword(&line)) { case KEYWORD_NONE: - sc->modifier = none; - harfe_debug("String %d does not act aftertouch\n", 1 + g_current_string); - break; + sc->modifier = none; + harfe_debug("String %d does not act aftertouch\n", 1 + g_current_string); + break; case KEYWORD_PITCH_BEND_UP: - sc->modifier = pitch_bend_up; - harfe_debug("String %d acts aftertouch as pitch_bend_up\n", 1 + g_current_string); - break; + sc->modifier = pitch_bend_up; + harfe_debug("String %d acts aftertouch as pitch_bend_up\n", 1 + g_current_string); + break; case KEYWORD_PITCH_BEND_DOWN: - sc->modifier = pitch_bend_down; - harfe_debug("String %d acts aftertouch as pitch_bend_down\n", 1 + g_current_string); - break; + sc->modifier = pitch_bend_down; + harfe_debug("String %d acts aftertouch as pitch_bend_down\n", 1 + g_current_string); + break; case KEYWORD_MIDI_CONTROL: - sc->modifier = midi_controller; - harfe_debug("String %d acts aftertouch as midi_controller\n", 1 + g_current_string); - break; + sc->modifier = midi_controller; + harfe_debug("String %d acts aftertouch as midi_controller\n", 1 + g_current_string); + break; case KEYWORD_MIDI_CONTROL_INVERSE: - sc->modifier = midi_controller_inv; - harfe_debug("String %d acts aftertouch as midi_controller_inverse\n", 1 + g_current_string); - break; + sc->modifier = midi_controller_inv; + harfe_debug("String %d acts aftertouch as midi_controller_inverse\n", 1 + g_current_string); + break; default: - harfe_error(stderr, "Illegal Modifier for string: %s\n", _line); - return -1; - } - break; + harfe_error(stderr, "Illegal Modifier for string: %s\n", _line); + return -1; + } + break; case KEYWORD_PITCHFACTOR: - sc->pitch_factor = atol(line); - harfe_debug("String %d is given a custom pitch factor of %d\n", 1 + g_current_string, sc->pitch_factor); - break; + sc->pitch_factor = atol(line); + harfe_debug("String %d is given a custom pitch factor of %d\n", 1 + g_current_string, sc->pitch_factor); + break; case KEYWORD_CONTROLLER: - sc->controller = atol(line); - harfe_debug("String %d is on midi_controller line %d\n", 1 + g_current_string, sc->controller); - break; + sc->controller = atol(line); + harfe_debug("String %d is on midi_controller line %d\n", 1 + g_current_string, sc->controller); + break; case KEYWORD_TIMETOSILENCE: - sc->timetosilence = atol(line); - harfe_debug("String %d has a timetosilence of %d\n", 1 + g_current_string, sc->timetosilence); - break; + sc->timetosilence = atol(line); + harfe_debug("String %d has a timetosilence of %d\n", 1 + g_current_string, sc->timetosilence); + break; case KEYWORD_TWOOCTAVESPLIT: - g_midi_two_octave_split = atol(line); - harfe_debug("Splitting TWO octaves at %d%%\n", g_midi_two_octave_split); - if (g_midi_two_octave_split < 0 || g_midi_two_octave_split > 100) { - harfe_error(stderr, "Invalid percentage in line: %s\n", _line); - exit(1); - } - break; + g_midi_two_octave_split = atol(line); + harfe_debug("Splitting TWO octaves at %d%%\n", g_midi_two_octave_split); + if (g_midi_two_octave_split < 0 || g_midi_two_octave_split > 100) { + harfe_error(stderr, "Invalid percentage in line: %s\n", _line); + exit(1); + } + break; case KEYWORD_THREEOCTAVESPLIT_1: - g_midi_three_octave_split_1 = atol(line); - harfe_debug("Splitting THREE octaves top above %d%%\n", g_midi_three_octave_split_1); - if (g_midi_three_octave_split_1 < 0 || g_midi_three_octave_split_1 > 100) { - harfe_error(stderr, "Invalid percentage in line: %s\n", _line); - exit(1); - } - split_done = 1; - break; + g_midi_three_octave_split_1 = atol(line); + harfe_debug("Splitting THREE octaves top above %d%%\n", g_midi_three_octave_split_1); + if (g_midi_three_octave_split_1 < 0 || g_midi_three_octave_split_1 > 100) { + harfe_error(stderr, "Invalid percentage in line: %s\n", _line); + exit(1); + } + split_done = 1; + break; case KEYWORD_THREEOCTAVESPLIT_2: - g_midi_three_octave_split_2 = atol(line); - harfe_debug("Splitting THREE octaves bottom below %d%%\n", g_midi_three_octave_split_2); - if (g_midi_three_octave_split_2 < 0 || g_midi_three_octave_split_2 > 100) { - harfe_error(stderr, "Invalid percentage in line: %s\n", _line); - return -1; - } - split_done = 1; - break; + g_midi_three_octave_split_2 = atol(line); + harfe_debug("Splitting THREE octaves bottom below %d%%\n", g_midi_three_octave_split_2); + if (g_midi_three_octave_split_2 < 0 || g_midi_three_octave_split_2 > 100) { + harfe_error(stderr, "Invalid percentage in line: %s\n", _line); + return -1; + } + split_done = 1; + break; case KEYWORD_MIDI_MAIN_CONTROL: - g_midi_main_control = atol(line); - harfe_debug("All Strings modify controller %d\n", g_midi_main_control); - if (g_midi_main_control > 127) { - harfe_error(stderr, "Invalid controller number %d in line: %s\n", g_midi_main_control, _line); - return -1; - } - break; + g_midi_main_control = atol(line); + harfe_debug("All Strings modify controller %d\n", g_midi_main_control); + if (g_midi_main_control > 127) { + harfe_error(stderr, "Invalid controller number %d in line: %s\n", g_midi_main_control, _line); + return -1; + } + break; case KEYWORD_MIDI_MAIN_CHANNEL: - g_midi_main_channel = atol(line); - harfe_debug("All Strings modify controller %d on channel %d\n", g_midi_main_control, g_midi_main_channel); - if (g_midi_main_channel < 1 || g_midi_main_channel > 16) { - harfe_error(stderr, "Invalid channel number %d in line: %s\n", g_midi_main_channel, _line); - return -1; - } - break; + g_midi_main_channel = atol(line); + harfe_debug("All Strings modify controller %d on channel %d\n", g_midi_main_control, g_midi_main_channel); + if (g_midi_main_channel < 1 || g_midi_main_channel > 16) { + harfe_error(stderr, "Invalid channel number %d in line: %s\n", g_midi_main_channel, _line); + return -1; + } + break; case KEYWORD_SETTLED_DIST: - g_settled_dist = atol(line); - harfe_debug("All AfterTouch events take place only after movement has slown down to %d points\n", g_settled_dist); - break; + g_settled_dist = atol(line); + harfe_debug("All AfterTouch events take place only after movement has slown down to %d points\n", g_settled_dist); + break; default: - harfe_error(stderr, "Unhandled config line: %s\n", _line); - return -1; - - } - if (!split_done) - return 0; - - /* split also true for two octaves */ - if (g_midi_three_octave_split_2 < g_midi_three_octave_split_1) { - g_midi_three_octave_split_inverse = g_midi_three_octave_split_1; - g_midi_three_octave_split_1 = g_midi_three_octave_split_2; - g_midi_three_octave_split_2 = g_midi_three_octave_split_inverse; - g_midi_three_octave_split_inverse = 1; - } else - g_midi_three_octave_split_inverse = 0; + harfe_error(stderr, "Unhandled config line: %s\n", _line); + return -1; + } + if (!split_done) return 0; + + /* split also true for two octaves */ + if (g_midi_three_octave_split_2 < g_midi_three_octave_split_1) { + g_midi_three_octave_split_inverse = g_midi_three_octave_split_1; + g_midi_three_octave_split_1 = g_midi_three_octave_split_2; + g_midi_three_octave_split_2 = g_midi_three_octave_split_inverse; + g_midi_three_octave_split_inverse = 1; + } else + g_midi_three_octave_split_inverse = 0; + + return 0; } size_t config_dumpglobals(char *out, size_t outsize) { - int tos1 = g_midi_three_octave_split_inverse ? g_midi_three_octave_split_2 : g_midi_three_octave_split_1; - int tos2 = g_midi_three_octave_split_inverse ? g_midi_three_octave_split_1 : g_midi_three_octave_split_2; + int tos1 = g_midi_three_octave_split_inverse ? g_midi_three_octave_split_2 : g_midi_three_octave_split_1; + int tos2 = g_midi_three_octave_split_inverse ? g_midi_three_octave_split_1 : g_midi_three_octave_split_2; - size_t off = snprintf(out, outsize, + size_t off = snprintf(out, outsize, "Strings %d\n\nmidi_two_octave_split %d\nmidi_three_octave_split_1 %d\nmidi_three_octave_split_2 %d\n", - g_string_count, g_midi_two_octave_split, tos1, tos2 ); + g_string_count, g_midi_two_octave_split, tos1, tos2 ); - if (g_midi_main_control >= 0) - off += snprintf(out + off, outsize - off, - "midi_main_control %d\n\n", g_midi_main_control); + if (g_midi_main_control >= 0) + off += snprintf(out + off, outsize - off, + "midi_main_control %d\n\n", g_midi_main_control); - if (g_midi_main_channel > 0) - off += snprintf(out + off, outsize - off, - "midi_main_channel %d\n\n", g_midi_main_channel); + if (g_midi_main_channel > 0) + off += snprintf(out + off, outsize - off, + "midi_main_channel %d\n\n", g_midi_main_channel); - if (g_settled_dist != 5) - off += snprintf(out + off, outsize - off, - "SettledDist %d\n\n", g_settled_dist); - off += snprintf(out + off, outsize - off, "\n" ); - return off; + if (g_settled_dist != 5) + off += snprintf(out + off, outsize - off, + "SettledDist %d\n\n", g_settled_dist); + off += snprintf(out + off, outsize - off, "\n" ); + return off; } size_t config_dumpstring(int string, char *out, size_t outsize) { - StringConfig *s = g_string_conf + string; + StringConfig *s = g_string_conf + string; - if (string < 0 || string > g_string_count || !out) { - if (out && outsize) *out = 0; - return 0; - } - size_t off = snprintf(out, outsize, - "String %d\n Line %d %d %d %d\n Mode %s\n Channel %d\n Note %s\n AfterTouch %s\n Controller %d\n", - string + 1, s->line.p0.x, s->line.p0.y, s->line.p1.x, s->line.p1.y, - mode_names[s->mode], s->channel, midi_note[s->note], modifier_names[s->modifier], s->controller ); - - if (s->timetosilence) - off += snprintf(out + off, outsize - off, - " TimeToSilence %d\n", s->timetosilence); - if (s->pitch_factor) - off += snprintf(out + off, outsize - off, - " PitchFactor %d\n", s->pitch_factor); - off += snprintf(out + off, outsize - off, "\n" ); - return off; + if (string < 0 || string > g_string_count || !out) { + if (out && outsize) *out = 0; + return 0; + } + size_t off = snprintf(out, outsize, + "String %d\n Line %d %d %d %d\n Mode %s\n Channel %d\n Note %s\n AfterTouch %s\n Controller %d\n", + string + 1, s->line.p0.x, s->line.p0.y, s->line.p1.x, s->line.p1.y, + mode_names[s->mode], s->channel, midi_note[s->note], modifier_names[s->modifier], s->controller ); + + if (s->timetosilence) + off += snprintf(out + off, outsize - off, " TimeToSilence %d\n", s->timetosilence); + if (s->pitch_factor) + off += snprintf(out + off, outsize - off, " PitchFactor %d\n", s->pitch_factor); + off += snprintf(out + off, outsize - off, "\n" ); + return off; } void @@ -440,7 +438,12 @@ config_reverse_strings() void config_flip_y() { + int i; g_midi_three_octave_split_inverse ^= 1; g_config_source = source_edit; - /* TODO: flip pit bend */ + for (i=0; i