#include <stdlib.h>
#include <signal.h>
#include "LapBoxInTask.h"

void signalHandler(int sigNo);

LapBoxMicro        *micro;
LapBoxTaskControl  *params;
LapBoxInTask       *inTask;

main(int argc, char **argv)
{
    if (argc != 2) {
      fprintf(stderr, "usage: %s name\n", argv[0]);
      exit(1);
  }
    char *name = argv[1];
    
    signal(SIGCHLD, &signalHandler);
    signal(SIGTERM, &signalHandler);
    signal(SIGINT,  &signalHandler);
    signal(SIGQUIT, &signalHandler);

    dm_init(NULL);

    micro = new LapBoxMicro(name, 13);
    params = new LapBoxTaskControl(name, 3, micro, 0);
    inTask = new LapBoxInTask(params, micro);
    
    inTask->run();
}

void signalHandler(int sigNo)
{
  MBool debug = TRUE;
  
  fprintf(stderr, "In signalHandler()...\n");
  delete micro;
  delete params;
  delete inTask;
  exit(1);
}
