#include "stdafx.h" #include "CEqJobEventStep.h" #include "Log.h" namespace SERVO { CEqJobEventStep::CEqJobEventStep() : CReadStep() { m_nJobDataBDev = 0; } CEqJobEventStep::~CEqJobEventStep() { } void CEqJobEventStep::setJobDataDev(int nDev) { m_nJobDataBDev = nDev; } void CEqJobEventStep::getAttributeVector(CAttributeVector& attrubutes) { CReadStep::getAttributeVector(attrubutes); std::string strTemp; attrubutes.addAttribute(new CAttribute("Dev", ("W" + CToolUnits::toHexString(m_nJobDataBDev, strTemp)).c_str(), "")); attrubutes.addAttribute(new CAttribute("PortNo", std::to_string(m_jobDataB.getPortNo()).c_str(), "")); attrubutes.addAttribute(new CAttribute("CarrierId", m_jobDataB.getCarrierId().c_str(), "")); attrubutes.addAttribute(new CAttribute("PruductId", m_jobDataB.getPruductId().c_str(), "")); attrubutes.addAttribute(new CAttribute("CarrierState", m_jobDataB.getCarrierStateDescription(strTemp).c_str(), "")); attrubutes.addAttribute(new CAttribute("SlotMapping", std::to_string(m_jobDataB.getSlotMapping()).c_str(), "")); attrubutes.addAttribute(new CAttribute("SlotSelectedFlag", std::to_string(m_jobDataB.getSlotSelectedFlag()).c_str(), "")); std::vector& ids = m_jobDataB.getGlassIds(); for (int i = 0; i < ids.size(); i++) { attrubutes.addAttribute(new CAttribute((std::string("GlassId") + std::to_string(i+1)).c_str(), ids[i].c_str(), "")); } } int CEqJobEventStep::onReadData() { CReadStep::onReadData(); char szBuffer[1024]; int nRet = m_pCclink->ReadData2(m_station, DeviceType::W, m_nJobDataBDev, 640, szBuffer); if (0 != nRet) { return -1; } m_jobDataB.unserialize(szBuffer, 640); LOGI("Read JobDataB\n", m_strName.c_str()); return 0; } int CEqJobEventStep::onComplete() { CReadStep::onComplete(); LOGI(" onComplete."); return 0; } int CEqJobEventStep::onTimeout() { CReadStep::onTimeout(); LOGI(" onTimeout."); return 0; } CJobDataB* CEqJobEventStep::getJobDataB() { return &m_jobDataB; } }