]> git.itanic.dy.fi Git - glucose/blob - main.c
utils: Add sanitize_ascii()
[glucose] / main.c
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <unistd.h>
4 #include <linux/types.h>
5 #include <string.h>
6
7 #include "hiddev.h"
8 #include "utils.h"
9 #include "options.h"
10 #include "contour-protocol.h"
11
12 int main(int argc, char *argv[])
13 {
14         int fd, usage_code, ret;
15         struct user_options opts;
16         struct msg msg;
17
18         read_args(argc, argv, &opts);
19         trace_level = opts.trace_level;
20
21         if (opts.usbdev == NULL)
22                 fd = wait_for_device(CONTOUR_USB_VENDOR_ID,
23                                 CONTOUR_USB_PRODUCT_ID, &usage_code);
24         else
25                 fd = hiddev_open(opts.usbdev, &usage_code);
26         if (fd < 0)
27                 return 1;
28
29         trace(0, "Initializing\n");
30         contour_initialize(fd, usage_code);
31
32         trace(0, "Done! Reading data\n");
33         while (1) {
34                 ret = contour_read_entry(fd, usage_code, &msg);
35                 print_ascii(msg.data, ret);
36
37                 if (ret < 45)
38                         break;
39         }
40
41         return 0;
42 }