void CCECDeviceMap::GetWakeDevices(const libcec_configuration &configuration, CECDEVICEVEC &devices) const { for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) { if (configuration.wakeDevices[(uint8_t)it->first]) devices.push_back(it->second); } }
void CCECDeviceMap::GetByLogicalAddresses(CECDEVICEVEC &devices, const cec_logical_addresses &addresses) { for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) { if (addresses.IsSet(it->first)) devices.push_back(it->second); } }
void CCECDeviceMap::FilterType(const cec_device_type type, CECDEVICEVEC &devices) { CECDEVICEVEC newDevices; for (CECDEVICEVEC::const_iterator it = devices.begin(); it != devices.end(); it++) { if ((*it)->GetType() == type) newDevices.push_back(*it); } devices = newDevices; }
void CCECDeviceMap::FilterLibCECControlled(CECDEVICEVEC &devices) { CECDEVICEVEC newDevices; for (CECDEVICEVEC::const_iterator it = devices.begin(); it != devices.end(); it++) { if ((*it)->IsHandledByLibCEC()) newDevices.push_back(*it); } devices = newDevices; }
void CCECDeviceMap::GetActive(CECDEVICEVEC &devices) const { for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) { cec_bus_device_status status = it->second->GetStatus(); if (status == CEC_DEVICE_STATUS_HANDLED_BY_LIBCEC || status == CEC_DEVICE_STATUS_PRESENT) devices.push_back(it->second); } }
void CCECDeviceMap::FilterTypes(const cec_device_type_list &types, CECDEVICEVEC &devices) { cec_device_type_list t(types);//silly, but needed to retain abi CECDEVICEVEC newDevices; for (CECDEVICEVEC::const_iterator it = devices.begin(); it != devices.end(); it++) { if (t.IsSet((*it)->GetType())) newDevices.push_back(*it); } devices = newDevices; }
void CCECDeviceMap::FilterActive(CECDEVICEVEC &devices) { CECDEVICEVEC newDevices; for (CECDEVICEVEC::const_iterator it = devices.begin(); it != devices.end(); it++) { cec_bus_device_status status = (*it)->GetCurrentStatus(); if (status == CEC_DEVICE_STATUS_HANDLED_BY_LIBCEC || status == CEC_DEVICE_STATUS_PRESENT) newDevices.push_back(*it); } devices = newDevices; }
void CCECDeviceMap::GetChildrenOf(CECDEVICEVEC& devices, CCECBusDevice* device) const { devices.clear(); if (!device) return; uint16_t iPA = device->GetCurrentPhysicalAddress(); for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) { uint16_t iCurrentPA = it->second->GetCurrentPhysicalAddress(); if (CCECTypeUtils::PhysicalAddressIsIncluded(iPA, iCurrentPA)) devices.push_back(it->second); } }
void CCECDeviceMap::GetLibCECControlled(CECDEVICEVEC &devices) const { for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) if (it->second->IsHandledByLibCEC()) devices.push_back(it->second); }
void CCECDeviceMap::GetByType(const cec_device_type type, CECDEVICEVEC &devices) const { for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) if (it->second->GetType() == type) devices.push_back(it->second); }
void CCECDeviceMap::Get(CECDEVICEVEC &devices) const { for (CECDEVICEMAP::const_iterator it = m_busDevices.begin(); it != m_busDevices.end(); it++) devices.push_back(it->second); }