#pragma once #include "CReadStep.h" namespace SERVO { #define UNIT_MAX 6 #define STATUS_MAX (UNIT_MAX + 1) class CEqStatusStep : public CReadStep { public: CEqStatusStep(); virtual ~CEqStatusStep(); public: virtual void getAttributeVector(CAttributeVector& attrubutes); virtual int onReadData(); virtual int onComplete(); virtual int onTimeout(); void setStatusDev(int nDev); unsigned int getUnitId() const; int getStatus(unsigned int uint); int getReasonCode(unsigned int uint) const; std::string& getStatusDescription(unsigned int unid, std::string& strDescription); private: int m_nStatusDev; unsigned int m_nUnitId; int m_nStatus[STATUS_MAX]; int m_nReasonCode[STATUS_MAX]; }; }