#include "stdafx.h" #include "CEqAlarmStep.h" #include "Log.h" #include "ToolUnits.h" namespace SERVO { CEqAlarmStep::CEqAlarmStep() : CStep() { m_nAlarmDev = 0; m_nAlarmState = 0; m_nUnitId = 0; m_nAlarmLevel = 0; m_nAlarmCode = 0; m_nAlarmId = 0; } CEqAlarmStep::~CEqAlarmStep() { } void CEqAlarmStep::getAttributeVector(CAttributeVector& attrubutes) { CStep::getAttributeVector(attrubutes); attrubutes.addAttribute(new CAttribute("Alarm State", std::to_string(m_nAlarmState).c_str(), "")); attrubutes.addAttribute(new CAttribute("Unit ID", std::to_string(m_nUnitId).c_str(), "")); attrubutes.addAttribute(new CAttribute("Alarm Level", std::to_string(m_nAlarmLevel).c_str(), "")); attrubutes.addAttribute(new CAttribute("Alarm Code", std::to_string(m_nAlarmCode).c_str(), "")); attrubutes.addAttribute(new CAttribute("Alarm ID", std::to_string(m_nAlarmId).c_str(), "")); attrubutes.addAttribute(new CAttribute("Text", m_strText.c_str(), "")); attrubutes.addAttribute(new CAttribute("Description", m_strDescription.c_str(), "")); } int CEqAlarmStep::onReadData() { CStep::onReadData(); char szBuffer[64]; int nRet = m_pCclink->ReadData2(m_station, DeviceType::W, m_nAlarmDev, 64, szBuffer); if (0 != nRet) { return -1; } m_nAlarmState = (unsigned int)CToolUnits::toInt16(&szBuffer[0]); m_nUnitId = (unsigned int)CToolUnits::toInt16(&szBuffer[2]); m_nAlarmId = (unsigned int)CToolUnits::toInt16(&szBuffer[4]); m_nAlarmCode = (unsigned int)CToolUnits::toInt16(&szBuffer[6]); m_nAlarmLevel = (unsigned int)CToolUnits::toInt16(&szBuffer[8]); LOGI(" Equipment Alarm state Changed\n", m_nAlarmState, m_nUnitId, m_nAlarmLevel, m_nAlarmCode, m_nAlarmId, m_strText.c_str(), m_strDescription.c_str()); return 0; } int CEqAlarmStep::onComplete() { CStep::onComplete(); LOGI(" onComplete."); return 0; } int CEqAlarmStep::onTimeout() { CStep::onTimeout(); LOGI(" onTimeout."); return 0; } void CEqAlarmStep::setAlarmDev(int nDev) { m_nAlarmDev = nDev; } int CEqAlarmStep::getAlarmState() { return m_nAlarmState; } int CEqAlarmStep::getUnitId() { return m_nUnitId; } int CEqAlarmStep::getAlarmLevel() { return m_nAlarmLevel; } int CEqAlarmStep::getAlarmCode() { return m_nAlarmCode; } int CEqAlarmStep::getAlarmId() { return m_nAlarmId; } }