#include "stdafx.h" #include "CSlot.h" namespace SERVO { CSlot::CSlot() { m_nNo = 0; m_materialsType = MaterialsType::G1G2; m_pContext = nullptr; m_bEnable = FALSE; m_bLock = FALSE; } CSlot::~CSlot() { } BOOL CSlot::isEnable() { return m_bEnable; } void CSlot::enable() { m_bEnable = TRUE; } void CSlot::disable() { m_bEnable = FALSE; } BOOL CSlot::isLock() { return m_bLock; } void CSlot::lock() { m_bLock = TRUE; } void CSlot::unlock() { m_bLock = FALSE; } int CSlot::getPosition() { return m_nPosition; } void CSlot::setPosition(int position) { m_nPosition = position; } int CSlot::getNo() { return m_nNo; } void CSlot::setNo(int no) { m_nNo = no; } MaterialsType CSlot::getType() { return m_materialsType; } void CSlot::setType(MaterialsType type) { m_materialsType = type; } std::string& CSlot::getName() { return m_strName; } void CSlot::setName(const char* pszName) { m_strName = pszName; } BOOL CSlot::isEmpty() { return m_pContext == nullptr; } CContext* CSlot::getContext() { return m_pContext; } void CSlot::setContext(CContext* pContext) { m_pContext = pContext; } void CSlot::serialize(CArchive& ar) { if (ar.IsStoring()) { ar << m_nPosition; ar << m_nNo; ar << (int)m_materialsType; WriteString(ar, m_strName); ar << (__int64)m_pContext; ar << m_bEnable; ar << m_bLock; } else { int i32; __int64 i64; ar >> m_nPosition; ar >> m_nNo; ar >> i32; m_materialsType = (MaterialsType)i32; ReadString(ar, m_strName); ar >> i64; m_pContext = (CContext*)i64; ar >> m_bEnable; ar >> m_bLock; } } void CSlot::WriteString(CArchive& ar, std::string& string) { CString strTemp = string.c_str(); ar << strTemp; } void CSlot::ReadString(CArchive& ar, std::string& string) { CString strTemp; ar >> strTemp; string = (LPTSTR)(LPCTSTR)strTemp; } }