示例#1
0
文件: pikeyd.c 项目: Lencons/pikeyd
int main(int argc, char *argv[])
{
  int en_daemonize = 0;
  int i;

  for(i=1; i<argc; i++){
    if (!strcmp(argv[i], "-d")) {
      en_daemonize = 1;
      //daemonize("/tmp", "/tmp/pikeyd.pid");
    }
    else if (!strcmp(argv[i], "-k")) {
      daemonKill("/tmp/pikeyd.pid");
      exit(0);
    }
    else if (!strcmp(argv[i], "-r")) {
      force_repeat();
    }
    else if (!strcmp(argv[i], "-v")) {
      showVersion();
      exit(0);
    }
    else if (!strcmp(argv[i], "-h")) {
      showHelp();
      exit(0);
    }
    /* debug options */
    else if (!strncmp(argv[i], "-D", 2)) {
      int d = 1;
      char *p = &argv[i][2];

      if (argv[i][2]) {
        d = strtol(&argv[i][2], &p, 10);
        if (d > 10) {
          d = 10;
        }
      }
      if (*p) {
        printf("Unknown -D option: %s\n", argv[i]);
        exit(-1);
      }
      debug_init(d);
      printf("DEBUG LEVEL %d\n", d);
    }
    else {
      printf("Unknown command line argument: %s\n", argv[i]);
      showHelp();
      exit(-1);
    }
  }

  if(en_daemonize){
    daemonize("/tmp", "/tmp/pikeyd.pid");
  }

<<<<<<< HEAD
示例#2
0
文件: pikeyd.c 项目: BauerBox/pikeyd
int main(int argc, char *argv[])
{
  int en_daemonize = 0;
  int i;

  for(i=1; i<argc; i++){
    if(!strcmp(argv[i], "-d")){
      en_daemonize = 1;
      //daemonize("/tmp", "/tmp/pikeyd.pid");
    }
    if(!strcmp(argv[i], "-k")){
      daemonKill("/tmp/pikeyd.pid");
      exit(0);
    }
    if(!strcmp(argv[i], "-r")){
      joy_enable_repeat();
    }
    if(!strcmp(argv[i], "-v")){
      showVersion();
      exit(0);
    }
    if(!strcmp(argv[i], "-h")){
      showHelp();
      exit(0);
    }
  }

  if(en_daemonize){
    daemonize("/tmp", "/tmp/pikeyd.pid");
  }

  init_iic();
  init_config();

  //test_config(); exit(0);

  //test_iic(0x20);  close_iic();  exit(0);

  //printf("init uinput\n");

  if(init_uinput() == 0){
    sleep(1);
    //test_uinput();
    if(joy_RPi_init()>=0){

      if(!en_daemonize){
	printf("Press ^C to exit.\n");
      }

      for(;;){
	joy_RPi_poll();
	usleep(4000);
      }

      joy_RPi_exit();
    }

    close_uinput();
  }

  return 0;
}