#include "stdafx.h" #include "CJobDataB.h" #include "ToolUnits.h" namespace SERVO { CJobDataB::CJobDataB() { m_nCassetteSequenceNo = 0; m_nJobSequenceNo = 0; } CJobDataB::~CJobDataB() { } int CJobDataB::getCassetteSequenceNo() { return m_nCassetteSequenceNo; } void CJobDataB::setCassetteSequenceNo(int no) { m_nCassetteSequenceNo = no; } int CJobDataB::getJobSequenceNo() { return m_nJobSequenceNo; } void CJobDataB::setJobSequenceNo(int no) { m_nJobSequenceNo = no; } std::string& CJobDataB::getGlassId() { return m_strGlassId; } void CJobDataB::setGlassId(const char* pszGlassId) { m_strGlassId = pszGlassId; } int CJobDataB::serialize(char* pszBuffer, int nBufferSize) { if (nBufferSize < 28) return -1; int index = 0; memcpy(&pszBuffer[index], &m_nCassetteSequenceNo, sizeof(short)); index += sizeof(short); memcpy(&pszBuffer[index], &m_nJobSequenceNo, sizeof(short)); index += sizeof(short); int strLen = min(20, m_strGlassId.size()); memcpy(&pszBuffer[index], m_strGlassId.c_str(), strLen); index += 20; return 14 * 2; } int CJobDataB::unserialize(char* pszBuffer, int nBufferSize) { if (nBufferSize < 14) return -1; int index = 0; memcpy(&m_nCassetteSequenceNo, &pszBuffer[index], sizeof(short)); index += sizeof(short); memcpy(&m_nJobSequenceNo, &pszBuffer[index], sizeof(short)); index += sizeof(short); CToolUnits::convertString(&pszBuffer[index], 20, m_strGlassId); index += 20; return 14 * 2; } }