| | |
| | | |
| | | CMaster::CMaster() |
| | | { |
| | | m_listener = {nullptr}; |
| | | m_listener = {nullptr, nullptr}; |
| | | } |
| | | |
| | | CMaster::~CMaster() |
| | |
| | | void CMaster::setListener(MasterListener listener) |
| | | { |
| | | m_listener.onEqAlive = listener.onEqAlive; |
| | | m_listener.onEqCimStateChanged = listener.onEqCimStateChanged; |
| | | } |
| | | |
| | | int CMaster::init() |
| | |
| | | m_listener.onEqAlive(this, p, bAlive); |
| | | } |
| | | }; |
| | | listener.onCimStateChanged = [&](void* pEquipment, BOOL bOn) -> void { |
| | | CEquipment* p = (CEquipment*)pEquipment; |
| | | if (m_listener.onEqCimStateChanged != nullptr) { |
| | | m_listener.onEqCimStateChanged(this, p, bOn); |
| | | } |
| | | }; |
| | | pEquipment->setListener(listener); |
| | | m_listEquipment.push_back(pEquipment); |
| | | |
| | | return 0; |
| | | } |
| | | |
| | | CEquipment* CMaster::getEquipment(int id) |
| | | { |
| | | for (auto item : m_listEquipment) { |
| | | if (item->getID() == id) return item; |
| | | } |
| | | |
| | | return nullptr; |
| | | } |
| | | |
| | | void CMaster::onTimer(UINT nTimerid) |
| | | { |
| | | for (auto item : m_listEquipment) { |