#include "stdafx.h" #include "CEqWriteStep.h" namespace SERVO { CEqWriteStep::CEqWriteStep() : CWriteStep() { m_nDataDev = 0; m_onWritedBlock = nullptr; } CEqWriteStep::~CEqWriteStep() { } void CEqWriteStep::setDataDev(int nDev) { m_nDataDev = nDev; } int CEqWriteStep::writeShort(short value, ONWRITED onWritedBlock/* = nullptr*/) { m_onWritedBlock = onWritedBlock; return writeData(m_nDataDev, (const char*)&value, sizeof(short)); } int CEqWriteStep::writeInt(int value, ONWRITED onWritedBlock/* = nullptr*/) { m_onWritedBlock = onWritedBlock; return writeData(m_nDataDev, (const char*)&value, sizeof(int)); } int CEqWriteStep::writeDataEx(const char* pszData, int size, ONWRITED onWritedBlock/* = nullptr*/) { m_onWritedBlock = onWritedBlock; return writeData(m_nDataDev, pszData, size); } void CEqWriteStep::getAttributeVector(CAttributeVector& attrubutes) { CWriteStep::getAttributeVector(attrubutes); unsigned int weight = 31; std::string strTemp; attrubutes.addAttribute(new CAttribute("Data Dev", ("W" + CToolUnits::toHexString(m_nDataDev, strTemp)).c_str(), "", weight++)); } int CEqWriteStep::onComplete() { if (m_onWritedBlock != nullptr) { m_onWritedBlock(WOK); } return 0; } int CEqWriteStep::onTimeout() { if (m_onWritedBlock != nullptr) { m_onWritedBlock(WTIMEOUT); } return 0; } }