keytable: merge two identical structures into one
authorMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 14 Dec 2012 17:02:27 +0000 (15:02 -0200)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 14 Dec 2012 17:06:59 +0000 (15:06 -0200)
While here, better name the event structures.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
utils/keytable/Makefile.am
utils/keytable/keytable.c
utils/keytable/parse.h

index 2614ee9..a676b3a 100644 (file)
@@ -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; }' \
index d3f67ea..cdd25bf 100644 (file)
@@ -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;
index adfc876..9a7712d 100644 (file)
@@ -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},