class EpuckPositionSubscriberTopic{
  
private :

  std::string IP;
  
  int X;
  int Y;
  int A;
  int worksite1Id;
  int worksite1X;
  int worksite1Y;
  int resourceReceived;
  int resourcePortionId;
  int resourceLeft;
  int globalTime;
  
  std::string SubscriberTopicName;
  
public:
  
  ros::Subscriber SubscriberTopicNode;

  EpuckPositionSubscriberTopic(){};
  ~EpuckPositionSubscriberTopic(){};
  
  void UpdatePositionCallback(const cpp_observer::ViconPosition::ConstPtr& msg);

  int GetPositionX();
  int GetPositionY();
  int GetPositionA();
  int GetWorksite1Id();
  int GetWorksite1X();
  int GetWorksite1Y();
  int GetResourcePortionId();
  int GetResourceReceived();
  int GetResourceLeft();
  int GetGlobalTime();

  void SetTopicName(std::string TopicName);
  std::string* GetTopicName();
  void SetIP(std::string IP);
  std::string* GetIP();

};
