From: Mauro Carvalho Chehab Date: Fri, 14 Dec 2012 17:02:27 +0000 (-0200) Subject: keytable: merge two identical structures into one X-Git-Tag: v4l-utils-0.9.4~114 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=23728e57611daf2c07a504ff9b672197eb994a3a;p=platform%2Fupstream%2Fv4l-utils.git keytable: merge two identical structures into one While here, better name the event structures. Signed-off-by: Mauro Carvalho Chehab --- diff --git a/utils/keytable/Makefile.am b/utils/keytable/Makefile.am index 2614ee9..a676b3a 100644 --- a/utils/keytable/Makefile.am +++ b/utils/keytable/Makefile.am @@ -19,9 +19,9 @@ sync-with-kernel: exit 1; \ fi @echo generating $(srcdir)/parse.h - @printf "struct parse_key {\n\tchar *name;\n\tunsigned int value;\n} " > $(srcdir)/parse.h - @printf "keynames[] = {\n" >> $(srcdir)/parse.h + @printf "struct parse_event {\n\tchar *name;\n\tunsigned int value;\n};\n" > $(srcdir)/parse.h + @printf "struct parse_event key_events[] = {\n" >> $(srcdir)/parse.h @more $(KERNEL_DIR)/include/uapi/linux/input.h | perl -n \ -e 'if (m/^\#define\s+(KEY_[^\s]+)\s+(0x[\d\w]+|[\d]+)/) ' \ -e '{ printf "\t{\"%s\", %s},\n",$$1,$$2; }' \ @@ -30,9 +30,8 @@ sync-with-kernel: >> $(srcdir)/parse.h @printf "\t{ NULL, 0}\n};\n" >> $(srcdir)/parse.h - @printf "struct event_abs {\n\tchar *name;\n\tunsigned int value;\n} " >> $(srcdir)/parse.h - @printf "event_abs[] = {\n" >> $(srcdir)/parse.h + @printf "struct parse_event abs_events[] = {\n" >> $(srcdir)/parse.h @more $(KERNEL_DIR)/include/uapi/linux/input.h | perl -n \ -e 'if (m/^\#define\s+(ABS_[^\s]+)\s+(0x[\d\w]+|[\d]+)/) ' \ -e '{ printf "\t{\"%s\", %s},\n",$$1,$$2; }' \ diff --git a/utils/keytable/keytable.c b/utils/keytable/keytable.c index d3f67ea..cdd25bf 100644 --- a/utils/keytable/keytable.c +++ b/utils/keytable/keytable.c @@ -91,9 +91,9 @@ enum ir_protocols { static int parse_code(char *string) { - struct parse_key *p; + struct parse_event *p; - for (p = keynames; p->name != NULL; p++) { + for (p = key_events; p->name != NULL; p++) { if (!strcasecmp(p->name, string)) return p->value; } @@ -488,9 +488,9 @@ static struct argp argp = { static void prtcode(int *codes) { - struct parse_key *p; + struct parse_event *p; - for (p = keynames; p->name != NULL; p++) { + for (p = key_events; p->name != NULL; p++) { if (p->value == (unsigned)codes[1]) { printf("scancode 0x%04x = %s (0x%02x)\n", codes[0], p->name, codes[1]); return; @@ -1239,6 +1239,7 @@ static void display_proto(struct rc_device *rc_dev) static void test_event(int fd) { struct input_event ev[64]; + struct parse_event *p; int rd, i; printf ("Testing events. Please, press CTRL-C to abort.\n"); @@ -1259,7 +1260,6 @@ static void test_event(int fd) ev[i].time.tv_sec, ev[i].time.tv_usec, ev[i].value); break; case EV_KEY: { - struct parse_key *p; char *name = ""; printf("%ld.%06ld: event key %s: ", @@ -1267,7 +1267,7 @@ static void test_event(int fd) (ev[i].value == 0) ? "up" : "down" ); - for (p = keynames; p->name != NULL; p++) { + for (p = key_events; p->name != NULL; p++) { if (p->value == ev[i].code) { name = p->name; break; @@ -1287,13 +1287,12 @@ static void test_event(int fd) ev[i].time.tv_sec, ev[i].time.tv_usec); break; case EV_ABS: { - struct event_abs *p; char *name = ""; printf("%ld.%06ld: event abs ", ev[i].time.tv_sec, ev[i].time.tv_usec); - for (p = event_abs; p->name != NULL; p++) { + for (p = abs_events; p->name != NULL; p++) { if (p->value == ev[i].code) { name = p->name; break; diff --git a/utils/keytable/parse.h b/utils/keytable/parse.h index adfc876..9a7712d 100644 --- a/utils/keytable/parse.h +++ b/utils/keytable/parse.h @@ -1,7 +1,8 @@ -struct parse_key { +struct parse_event { char *name; unsigned int value; -} keynames[] = { +}; +struct parse_event key_events[] = { {"KEY_RESERVED", 0}, {"KEY_ESC", 1}, {"KEY_1", 2}, @@ -507,10 +508,7 @@ struct parse_key { {"KEY_MAX", 0x2ff}, { NULL, 0} }; -struct event_abs { - char *name; - unsigned int value; -} event_abs[] = { +struct parse_event abs_events[] = { {"ABS_X", 0x00}, {"ABS_Y", 0x01}, {"ABS_Z", 0x02},