void VirtualOHT::Handle_Move(AMHSPacket& packet) { uint8 nID = 0; uint8 nMoveID = 0; AMHSPacket authPacket(OHT_ACK_MOVE,3); packet >> nID; packet >> nMoveID; switch(nMoveID) { case(0): if(m_listPath.empty()) { authPacket << uint8(DeviceID()); authPacket << uint8(3); authPacket << uint8(2); SendPacket(authPacket); AskPath(); return; } if(isStop == true) { authPacket << uint8(DeviceID()); authPacket << uint8(3); authPacket << uint8(2); SendPacket(authPacket); } else { isMove = true; authPacket << uint8(DeviceID()); authPacket << uint8(0); authPacket << uint8(0); SendPacket(authPacket); } break; case(1): isMove = false; authPacket << uint8(DeviceID()); authPacket << uint8(1); authPacket << uint8(0); SendPacket(authPacket); break; case(2): isStop = true; authPacket << uint8(DeviceID()); authPacket << uint8(2); authPacket << uint8(0); SendPacket(authPacket); break; } }
void VirtualOHT::Handle_FoupHanding(AMHSPacket& packet) { uint8 nID = 0; uint8 nBuff = 0; uint8 nOpt = 0; packet >> nID; packet >> nBuff; packet >> nOpt; if (1 == nOpt) { m_nHand = 0; } else { m_nHand = 1; } m_nStatus = 5; Sleep(5000); // hand operation time AMHSPacket authPacket(OHT_ACK_FOUP, 2); authPacket<< uint8(DeviceID()); // device id authPacket<< uint8(0); SendPacket(authPacket); m_nStatus = 6; }
void CDeviceList::DisconnectDevice(IDevice* Device) { for (int i=0;i<m_Jacks.Count();i++) { IJack* J=m_Jacks.Item(i); if (J->Direction==IJack::In) { for (int i1=0;i1<Device->JackCount();i1++) { if (Device->GetJack(i1)->Direction==IJack::Out) { if (Device->GetJack(i1)->Owner==DeviceID(Device)) { CInJack* IJ=(CInJack*)J; if (IsConnected(IJ,Device->GetJack(i1))) IJ->DisconnectFromOut((COutJack*)Device->GetJack(i1)); } } } } } for (int i=0;i<Device->JackCount();i++) { if (Device->GetJack(i)->Direction==IJack::In) { CInJack* IJ=(CInJack*)Device->GetJack(i); for (int i1=0;i1<IJ->OutJackCount();i1++) { if (IsConnected(IJ,IJ->OutJack(i1))) IJ->DisconnectFromOut(IJ->OutJack(i1)); } } } }
void VirtualOHT::Handle_SetPath(AMHSPacket& packet) { uint8 nID = 0; uint8 nEType = 0; uint32 nStartPos = 0; uint32 nEndPos = 0; uint8 nKeyPosNum = 0; uint32 nKeyPos = 0; uint8 nKeyPosType = 0; uint8 nKeyPosSpeed = 0; packet >> nID; packet >> nEType; packet >> nStartPos; packet >> nEndPos; packet >> nKeyPosNum; for(int i = 1;i <= nKeyPosNum;i++) { PathInfo Item; packet >> nKeyPos; packet >> nKeyPosType; packet >> nKeyPosSpeed; Item.nposition = nKeyPos; Item.nType = nKeyPosType; Item.nSpeed = nKeyPosSpeed; m_listPath.push_back(Item); } /* if(nEType == 0) isMove = true; */ AMHSPacket authPacket(OHT_ACK_PATH, 2); if(!m_listPath.empty()) { isSetPath = true; m_nPos = nStartPos; authPacket << uint8(DeviceID()); authPacket << uint8(0); isStop = false; m_nStatus = 2; } else { authPacket << uint8(DeviceID()); authPacket << uint8(1); } SendPacket(authPacket); }
int VirtualOHT::AskPath() { AMHSPacket askForPath(OHT_NEED_PATH,1); askForPath << uint8(DeviceID()); SendPacket(askForPath); m_nStatus = 1; return 0; }
int VirtualOHT::UpdatePos() { AMHSPacket authPacket(OHT_POSITION, 3); authPacket<< uint8(DeviceID()); // device id authPacket<< uint32(m_nPos); // oht location SendPacket(authPacket); return 0; }
int VirtualOHT::UpdateStatus() { AMHSPacket authPacket(OHT_STATUS, 4); authPacket<< uint8(DeviceID()); // device id authPacket<< uint8(1); authPacket<< uint8(m_nStatus); authPacket<< uint8(m_nHand); SendPacket(authPacket); return 0; }
int VirtualOHT::SetTeachPosition(uint32 nPos, uint8 nType, uint8 nSpeedRate) { AMHSPacket teachPos(OHT_TEACH_PATH, 7); teachPos << uint8(DeviceID()); teachPos << uint32(nPos); teachPos << uint8(nType); teachPos << uint8(nSpeedRate); SendPacket(teachPos); return 0; }
int VirtualOHT::Auth( uint32 nPos, int nHand) { AMHSPacket authPacket(OHT_AUTH, 4); authPacket<< uint8(DeviceID()); // device id authPacket<< uint32(nPos); // oht location authPacket<< uint8(nHand); // oht hand status; m_nStatus = 1; SendPacket(authPacket); return 0; }
void VirtualOHT::CreateTimer(void) { // Create a periodic timer timeBeginPeriod(1); m_nTimerID = timeSetEvent( 1, 1, &VirtualOHT::TimerHandler, (DWORD)this, TIME_PERIODIC); printf("ID: %u TimerID: %d\n", DeviceID(), m_nTimerID); }
void VirtualOHT::Handle_SetPosTime(AMHSPacket& packet) { uint8 nID = 0; uint8 nPosTime = 0; packet >> nID; packet >> nPosTime; m_nPosUpdateTimeSet = nPosTime * 16; AMHSPacket authPacket(OHT_ACK_POSITION_BACK_TIME, 2); authPacket<< uint8(DeviceID()); // device id authPacket<< uint8(nPosTime); SendPacket(authPacket); }
void VirtualOHT::Handle_SetStatusTime(AMHSPacket& packet) { uint8 nID = 0; uint8 nTime = 0; packet >> nID; packet >> nTime; m_nStatusUpdateTimeSet = nTime * 16; AMHSPacket authPacket(OHT_ACK_STATUS_BACK_TIME, 2); authPacket<< uint8(DeviceID()); // device id authPacket<< uint8(nTime); SendPacket(authPacket); }
QString CDeviceList::JackID(IDevice* D, const int JackIndex) { return DeviceID(D) + " " + D->GetJack(JackIndex)->Name; }