Esempio n. 1
0
// todo fancy:
// - centralized configuration (wait time, amount of directories to 
//   watch, verbosity, ...)
// - configuration options on command line
int main(int argc, char ** argv)
{
  if( argc < 2 || strcmp(argv[1], "--help") == 0 
               || strcmp(argv[1], "-h")     == 0 )
  {
    print_error("Usage: %s <file>\n"
                "       Delete <file> and (maybe) restore", argv[0]);
    return EXIT_FAILURE;
  }

  if( !sig_register_interrupt_handler() )
    return EXIT_FAILURE;

  struct ino_hide ih;

  if( !ih_init(&ih, argv[1]) )
  {
    ih_cleanup(&ih);
    return EXIT_FAILURE;
  }

  ih_hide_file(&ih);

  if( ih_worker_is_alive(&ih) )
  {
    kill(ih.worker_pid, SIGUSR1);
    wait(/* int * stat_loc */ NULL);
  }

  ih_cleanup(&ih);

  return EXIT_FAILURE;
}
Esempio n. 2
0
struct shell_io_t *get_xtty_io(char *xtty_name)
{
	if (!has_init) {
		xtty_fd = xtty_create(xtty_name);
		if (xtty_fd > 0) {
			io.in = xtty_io_in;
			io.out = xtty_io_out;
			io.in_buf.buf = xmalloc(XTTY_IO_BUF_SIZE);
			io.in_buf.alloced = XTTY_IO_BUF_SIZE;
			io.out_buf.buf = xmalloc(XTTY_IO_BUF_SIZE);
			io.out_buf.alloced = XTTY_IO_BUF_SIZE;
			ih = ih_init(xtty_fd);
			ih_enable_history_input(ih);
			has_init = 1;
		}
	}
	return has_init ? &io : NULL;
}
Esempio n. 3
0
uint32_t Game::run()
{
//This is a main game

    //Quit flag
    bool quit = false;

    //The frame rate regulator
    Timer fps;

    ih_init();
    music_init();
    world_init();

    //SOME SORT OF MENU SHOULD BE HERE


    //Constructor calls etc
    Player *player = new Player();
    center_camera((player->get_x() + PLAYER_WIDTH/2), (player->get_y() + PLAYER_HEIGTH/2));

    show_message();
    //BOX FOR TEST
    world_generate();


    //main loop
    while(quit == false)
    {
        //Start the frame timer
        fps.start();

        //While there's events to handle
        while( SDL_PollEvent( &event ) )
        {
            handle_events(player);
            //If the user has Xed out the window
            if( event.type == SDL_QUIT )
            {
                //Quit the program
                quit = true;
            }
        }

        music_play();


        //MOVES
        player->move();
        player->center();

        //CLS
        ih_clear_screen();

        //DRAWING

        //hide cursor
        SDL_ShowCursor(0);
        apply_cursor();

        player->draw();

        start_over();

        while(get_curr())
        {
            get_curr()->draw();
            traverse();
        }

        ih_update();

        //Cap the frame rate
        if( fps.get_ticks() < 1000 / FRAMES_PER_SECOND )
        {
            SDL_Delay( ( 1000 / FRAMES_PER_SECOND ) - fps.get_ticks() );
        }

    }


    delete player;
    world_finit();
    music_finit();
    ih_cleanup();


    return 0;
}