#ifndef __MOTOR_INTEROGATOR_H_INCLUDED__
#define __MOTOR_INTEROGATOR_H_INCLUDED__

#include <stdint.h>
#include <sstream>
#include "elmo.h"

class MotorInterogator
{
	friend stringstream& operator<< (stringstream& out, const MotorInterogator& motor);

public:
	MotorInterogator(string motorId, Elmo& thisMotor)
		: m_MotorId(motorId), m_Elmo(thisMotor) {}

	void		Query(void);

private:
	string		m_MotorId;
	Elmo&		m_Elmo;
	double		m_ReactiveCurrent;
	double		m_ActiveCurrent;
	int32_t		m_Position;
	int32_t		m_Velocity;
	int32_t		m_PositionError;
	int32_t		m_VelocityError;
	uint32_t	m_Temperature;
};
#endif // __MOTOR_INTEROGATOR_H_INCLUDED__
