//=========================================================================
// Summary  : Main file for Reson 6046
// Filename : _reson6046.cc
// Author   : Reed Christenson
// Project  : Reson 6046 Driver
// Revision : 0.0
// Created  : 2002.03.21
// Modified : 2002.03.21
//=========================================================================
// Description : Reson 6046
//=========================================================================

//#include "_reson6046Driver.h"
//#include <sys/sched.h>
//#include <errno.h>
#include "Exception.h"
//#include "VehicleConfigurator.h"
//#include "System.h"
#include "Reson6046Driver.h"
//#include "Syslog.h"

int main( int argc, char **argv )
{
    // A recalc interval value less than zero means no option was given
    //
    int rc = -1;   // bottom detect params recalculation interval in seconds
    for (int i = 0; i < argc; i++)
    {
      if (strcmp("-rc", argv[i]) == 0)
      {
        rc = atoi(argv[i+1]);
        break;
      }
    }
    
    Syslog::write("Launching Reson6046Driver...");

    Syslog::write("Setting name to '%s'...", Reson6046DriverName);
    //VehicleConfigurator::setName( Reson6046DriverName );

    try {
	Syslog::write("Creating Reson6046Driver instance...");
	Reson6046Driver *reson6046Driver = new Reson6046Driver();
	if (rc >= 0)
  {
  	Syslog::write("reson6046Driver - setting recalc interval to %d", rc);
    reson6046Driver->setRecalcInterval(rc);
  }
	Syslog::write("Running Reson6046Driver...");
	reson6046Driver->run();
    }
    catch (Exception e){
	Syslog::write("_reson6046Driver Caught Exception: %s\n",e.msg);
    }
    catch ( ... ){
	Syslog::write("_reson6046Driver Caught unknown exception.\n");
    }

    return 0;
}
