#pragma once #include #include "CAttributeVector.h" #include "CReadStep.h" namespace SERVO { class CPortStatusReport { public: CPortStatusReport(); virtual ~CPortStatusReport(); public: void copyEx(CPortStatusReport& other); short getPortStatus(); short getCassetteSequenceNo(); std::string& getCassetteId(); short getLoadingCassetteType(); short getQTimeFlag(); short getCassetteMappingState(); short getCassetteStatus(); int serialize(char* pszBuffer, int nBufferSize); int unserialize(const char* pszBuffer, int nBufferSize); void getAttributeVector(CAttributeVector& attrubutes, int beginWeight); virtual void serialize(CArchive& ar); public: bool canPickFromPort(); bool isJobExistenceSlot(); short getJobExistenceSlot(); private: void WriteString(CArchive& ar, std::string& string); void ReadString(CArchive& ar, std::string& string); private: short m_nPortStatus; short m_nCassetteSequenceNo; std::string m_strCassetteID; short m_nJobExistenceSlot[12]; // 12 * 16 = 192 ¸öslotÊÇ·ñ´æÔÚglass short m_nLoadingCassetteType; // 1: Actual Cassette 2 : Empty Cassette short m_nQTimeFlag; short m_nCassetteMappingState; // 1: mapping use, 2: mapping not use short m_nCassetteStatus; }; }