#include "CECTuner.h"
#include "CECTV.h"
#include "lib/CECProcessor.h"
+#include "lib/CECTypeUtils.h"
using namespace std;
using namespace CEC;
addresses.Set((*it)->GetLogicalAddress());
return addresses;
}
+
+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 GetByLogicalAddresses(CECDEVICEVEC &devices, const cec_logical_addresses &addresses);
void GetActive(CECDEVICEVEC &devices) const;
void GetByType(const cec_device_type type, CECDEVICEVEC &devices) const;
+ void GetChildrenOf(CECDEVICEVEC& devices, CCECBusDevice* device) const;
void GetPowerOffDevices(const libcec_configuration &configuration, CECDEVICEVEC &devices) const;
void GetWakeDevices(const libcec_configuration &configuration, CECDEVICEVEC &devices) const;