void CDeviceManager::CheckDevice() { TLock(m_locker); ConnectMap::iterator it = m_connMap.begin(); for (; it!=m_connMap.end(); ++it) { J_Host *pHost = it->second.pHost; if (pHost->IsReady()) { if (!it->second.bRegister) { pHost->GetDeviceInfo(); pHost->SetTime(time(0)); AddDevice(pHost, it->first); it->second.bRegister = true; } } else { if (it->second.bRegister) { DelDevice(pHost); j_close_socket(it->first.sock); m_connMap.erase(it); TUnlock(m_locker); break; } } } TUnlock(m_locker); }
void CDeviceManager::ReleaseDevObj(j_socket_t nSock) { TLock(m_locker); ConnectMap::iterator it = m_connMap.find(nSock); if (it != m_connMap.end()) { DelDevice(it->second.pHost); m_connMap.erase(it); } TUnlock(m_locker); }
void UnInitialize() { DelDevice(); if (PktPort) { DeletePort(PktPort); PktPort = NULL; } if (AuxPort) { DeletePort(AuxPort); AuxPort = NULL; } }