| | |
| | | CGlass* pPreviousGlass; |
| | | pPreviousGlass = (CGlass*)m_slot[0].getContext(); |
| | | if (pPreviousGlass != nullptr) { |
| | | LOGE("<CArm>tempStore, overwrite previous glass: %s (%d,%d)", |
| | | pPreviousGlass->getID().c_str(), |
| | | pPreviousGlass->getCassetteSequenceNo(), |
| | | pPreviousGlass->getJobSequenceNo()); |
| | | pPreviousGlass->release(); |
| | | } |
| | | m_slot[0].setContext(pGlass); |
| | | Unlock(); |
| | | |
| | | if (pGlass != nullptr) { |
| | | LOGI("<CArm>tempStore: GlassId:%s, Cassette:%d, Job:%d", |
| | | pGlass->getID().c_str(), |
| | | pGlass->getCassetteSequenceNo(), |
| | | pGlass->getJobSequenceNo()); |
| | | } |
| | | |
| | | if (m_listener.onDataChanged != nullptr) { |
| | | m_listener.onDataChanged(this, 0); |
| | |
| | | CGlass* pPreviousGlass = (CGlass*)m_slot[0].getContext(); |
| | | if (pPreviousGlass == nullptr) { |
| | | Unlock(); |
| | | LOGE("<CArm>tempFetchOut failed: arm slot empty."); |
| | | return -1; |
| | | } |
| | | pGlass = pPreviousGlass; |
| | |
| | | m_slot[0].setContext(nullptr); |
| | | Unlock(); |
| | | |
| | | LOGI("<CArm>tempFetchOut: GlassId:%s, Cassette:%d, Job:%d", |
| | | pGlass->getID().c_str(), |
| | | pGlass->getCassetteSequenceNo(), |
| | | pGlass->getJobSequenceNo()); |
| | | |
| | | if (m_listener.onDataChanged != nullptr) { |
| | | m_listener.onDataChanged(this, 0); |
| | | } |
| | | |
| | | return 0; |
| | | } |
| | | |
| | | int CArm::glassUpdateJobDataS(CJobDataS* pJobDataS) |
| | | { |
| | | ASSERT(pJobDataS); |
| | | |
| | | Lock(); |
| | | CGlass* pGlass = (CGlass*)m_slot[0].getContext(); |
| | | if (pGlass == nullptr) { |
| | | Unlock(); |
| | | LOGE("<CArm>glassUpdateJobDataS失败,找不到对应的Glass"); |
| | | return -1; |
| | | } |
| | | |
| | | CJobDataS* pSrcJs = pGlass->getJobDataS(); |
| | | if (pSrcJs->getCassetteSequenceNo() != pJobDataS->getCassetteSequenceNo() |
| | | || pSrcJs->getJobSequenceNo() != pJobDataS->getJobSequenceNo()) { |
| | | Unlock(); |
| | | LOGE("<CArm>glassUpdateJobDataS失败,CassetteNo不匹配([%d,%d] != [%d,%d])", |
| | | pSrcJs->getCassetteSequenceNo(), |
| | | pJobDataS->getCassetteSequenceNo(), |
| | | pSrcJs->getJobSequenceNo(), |
| | | pJobDataS->getJobSequenceNo()); |
| | | return -2; |
| | | } |
| | | |
| | | pGlass->updateJobDataS(pJobDataS); |
| | | Unlock(); |
| | | return 0; |
| | | } |
| | | } |