#ifndef _WHEEL_NICE_APP_
#define _WHEEL_NICE_APP_
/* TAN header files */
#include "config.h"
#include "MyPropertyBridgeMemberFunction.hpp"
#include "Nice/App/Application.h"
#include "Nice/App/ConfigClient.h"
#include "Basda/Mocca/WheelServiceWorkerInterface.h"
#include "Basda/Mocca/Constant.h"
#include <fstream>
#include <iostream>

class wheelNiceApp : public Nice::Application
{
private:
  std::string m_svcPath;

protected:
  /**
   * @brief The run method will be started through the main method. It
   * keeps the motor control implementation.
   */
  virtual int run ( int argc, char* argv[] );

public:
  wheelNiceApp() = default;
  wheelNiceApp(const std::string &svcPath);
  ~wheelNiceApp();
  virtual int runNamedPos (int namedPos);

  //std::string runGetState ();
  /**x
   * @brief A call back method in order to terminate the application.
   */
  virtual void interruptCallback ( int _sig );
  
  std::string getSvcPath();
  int getPosition();  
};


#endif /*_WHEEL_NICE_APP_*/
