#ifndef _SimulatedIsus_H
#define _SimulatedIsus_H
#include "IsusIF_SK.h"
#include "SimulatorIF.h"
#include "IsusOutput.h"


/*
CLASS 
IsusServer

*/

#define IsusServerName "IsusIFServer"

class SimulatedIsus : public IsusIF_SK {

public:

   SimulatedIsus(const char *name);
  ~SimulatedIsus();
  

protected:

  virtual void name(DeviceIF::Name name);
  virtual void serialNumber(DeviceIF::Name id);
  virtual DeviceIF::Status initialize();
  virtual DeviceIF::Status powerOn();
  virtual DeviceIF::Status status();
  virtual DeviceIF::Status powerOff();
  virtual DeviceIF::Status status();
  virtual DeviceIF::Status dataLoggingOn();
  virtual DeviceIF::Status dataLoggingOff();

  
  virtual DeviceIF::Status getData(IsusIF::Data *data);

  Boolean ready();  

  virtual int spawnAuxTasks();

  int  _numBatt;
  char _argv[200];  

  SimulatorIF *_simulator;
  double _position[3], _velocity[3], _eulerAngles[3], _angularVelocity[3];

};

#endif
