Loading system/bta/le_audio/client.cc +9 −9 Original line number Original line Diff line number Diff line Loading @@ -3625,8 +3625,8 @@ class LeAudioClientImpl : public LeAudioClient { static_cast<bluetooth::hci::iso_manager::cis_establish_cmpl_evt*>( static_cast<bluetooth::hci::iso_manager::cis_establish_cmpl_evt*>( data); data); LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl( leAudioDevices_.FindByCisConnHdl(event->cis_conn_hdl); event->cig_id, event->cis_conn_hdl); if (!leAudioDevice) { if (!leAudioDevice) { LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " << +event->cis_conn_hdl; << +event->cis_conn_hdl; Loading @@ -3650,8 +3650,8 @@ class LeAudioClientImpl : public LeAudioClient { static_cast<bluetooth::hci::iso_manager::cis_disconnected_evt*>( static_cast<bluetooth::hci::iso_manager::cis_disconnected_evt*>( data); data); LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl( leAudioDevices_.FindByCisConnHdl(event->cis_conn_hdl); event->cig_id, event->cis_conn_hdl); if (!leAudioDevice) { if (!leAudioDevice) { LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " << +event->cis_conn_hdl; << +event->cis_conn_hdl; Loading @@ -3670,9 +3670,9 @@ class LeAudioClientImpl : public LeAudioClient { } } void IsoSetupIsoDataPathCb(uint8_t status, uint16_t conn_handle, void IsoSetupIsoDataPathCb(uint8_t status, uint16_t conn_handle, uint8_t /* cig_id */) { uint8_t cig_id) { LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl(conn_handle); leAudioDevices_.FindByCisConnHdl(cig_id, conn_handle); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); instance->groupStateMachine_->ProcessHciNotifSetupIsoDataPath( instance->groupStateMachine_->ProcessHciNotifSetupIsoDataPath( Loading @@ -3680,9 +3680,9 @@ class LeAudioClientImpl : public LeAudioClient { } } void IsoRemoveIsoDataPathCb(uint8_t status, uint16_t conn_handle, void IsoRemoveIsoDataPathCb(uint8_t status, uint16_t conn_handle, uint8_t /* cig_id */) { uint8_t cig_id) { LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl(conn_handle); leAudioDevices_.FindByCisConnHdl(cig_id, conn_handle); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); instance->groupStateMachine_->ProcessHciNotifRemoveIsoDataPath( instance->groupStateMachine_->ProcessHciNotifRemoveIsoDataPath( Loading @@ -3695,7 +3695,7 @@ class LeAudioClientImpl : public LeAudioClient { uint32_t retransmittedPackets, uint32_t crcErrorPackets, uint32_t retransmittedPackets, uint32_t crcErrorPackets, uint32_t rxUnreceivedPackets, uint32_t duplicatePackets) { uint32_t rxUnreceivedPackets, uint32_t duplicatePackets) { LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl(conn_handle); leAudioDevices_.FindByCisConnHdl(cig_id, conn_handle); if (!leAudioDevice) { if (!leAudioDevice) { LOG(WARNING) << __func__ << ", device under connection handle: " LOG(WARNING) << __func__ << ", device under connection handle: " << loghex(conn_handle) << loghex(conn_handle) Loading system/bta/le_audio/devices.cc +7 −2 Original line number Original line Diff line number Diff line Loading @@ -2589,13 +2589,18 @@ LeAudioDevice* LeAudioDevices::FindByConnId(uint16_t conn_id) { return (iter == leAudioDevices_.end()) ? nullptr : iter->get(); return (iter == leAudioDevices_.end()) ? nullptr : iter->get(); } } LeAudioDevice* LeAudioDevices::FindByCisConnHdl(const uint16_t conn_hdl) { LeAudioDevice* LeAudioDevices::FindByCisConnHdl(uint8_t cig_id, uint16_t conn_hdl) { auto iter = std::find_if(leAudioDevices_.begin(), leAudioDevices_.end(), auto iter = std::find_if(leAudioDevices_.begin(), leAudioDevices_.end(), [&conn_hdl](auto& d) { [&conn_hdl, &cig_id](auto& d) { LeAudioDevice* dev; LeAudioDevice* dev; BidirectAsesPair ases; BidirectAsesPair ases; dev = d.get(); dev = d.get(); if (dev->group_id_ != cig_id) { return false; } ases = dev->GetAsesByCisConnHdl(conn_hdl); ases = dev->GetAsesByCisConnHdl(conn_hdl); if (ases.sink || ases.source) if (ases.sink || ases.source) return true; return true; Loading system/bta/le_audio/devices.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -177,7 +177,7 @@ class LeAudioDevices { LeAudioDevice* FindByAddress(const RawAddress& address); LeAudioDevice* FindByAddress(const RawAddress& address); std::shared_ptr<LeAudioDevice> GetByAddress(const RawAddress& address); std::shared_ptr<LeAudioDevice> GetByAddress(const RawAddress& address); LeAudioDevice* FindByConnId(uint16_t conn_id); LeAudioDevice* FindByConnId(uint16_t conn_id); LeAudioDevice* FindByCisConnHdl(const uint16_t conn_hdl); LeAudioDevice* FindByCisConnHdl(uint8_t cig_id, uint16_t conn_hdl); size_t Size(void); size_t Size(void); void Dump(int fd, int group_id); void Dump(int fd, int group_id); void Cleanup(void); void Cleanup(void); Loading Loading
system/bta/le_audio/client.cc +9 −9 Original line number Original line Diff line number Diff line Loading @@ -3625,8 +3625,8 @@ class LeAudioClientImpl : public LeAudioClient { static_cast<bluetooth::hci::iso_manager::cis_establish_cmpl_evt*>( static_cast<bluetooth::hci::iso_manager::cis_establish_cmpl_evt*>( data); data); LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl( leAudioDevices_.FindByCisConnHdl(event->cis_conn_hdl); event->cig_id, event->cis_conn_hdl); if (!leAudioDevice) { if (!leAudioDevice) { LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " << +event->cis_conn_hdl; << +event->cis_conn_hdl; Loading @@ -3650,8 +3650,8 @@ class LeAudioClientImpl : public LeAudioClient { static_cast<bluetooth::hci::iso_manager::cis_disconnected_evt*>( static_cast<bluetooth::hci::iso_manager::cis_disconnected_evt*>( data); data); LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl( leAudioDevices_.FindByCisConnHdl(event->cis_conn_hdl); event->cig_id, event->cis_conn_hdl); if (!leAudioDevice) { if (!leAudioDevice) { LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " LOG(ERROR) << __func__ << ", no bonded Le Audio Device with CIS: " << +event->cis_conn_hdl; << +event->cis_conn_hdl; Loading @@ -3670,9 +3670,9 @@ class LeAudioClientImpl : public LeAudioClient { } } void IsoSetupIsoDataPathCb(uint8_t status, uint16_t conn_handle, void IsoSetupIsoDataPathCb(uint8_t status, uint16_t conn_handle, uint8_t /* cig_id */) { uint8_t cig_id) { LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl(conn_handle); leAudioDevices_.FindByCisConnHdl(cig_id, conn_handle); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); instance->groupStateMachine_->ProcessHciNotifSetupIsoDataPath( instance->groupStateMachine_->ProcessHciNotifSetupIsoDataPath( Loading @@ -3680,9 +3680,9 @@ class LeAudioClientImpl : public LeAudioClient { } } void IsoRemoveIsoDataPathCb(uint8_t status, uint16_t conn_handle, void IsoRemoveIsoDataPathCb(uint8_t status, uint16_t conn_handle, uint8_t /* cig_id */) { uint8_t cig_id) { LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl(conn_handle); leAudioDevices_.FindByCisConnHdl(cig_id, conn_handle); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); LeAudioDeviceGroup* group = aseGroups_.FindById(leAudioDevice->group_id_); instance->groupStateMachine_->ProcessHciNotifRemoveIsoDataPath( instance->groupStateMachine_->ProcessHciNotifRemoveIsoDataPath( Loading @@ -3695,7 +3695,7 @@ class LeAudioClientImpl : public LeAudioClient { uint32_t retransmittedPackets, uint32_t crcErrorPackets, uint32_t retransmittedPackets, uint32_t crcErrorPackets, uint32_t rxUnreceivedPackets, uint32_t duplicatePackets) { uint32_t rxUnreceivedPackets, uint32_t duplicatePackets) { LeAudioDevice* leAudioDevice = LeAudioDevice* leAudioDevice = leAudioDevices_.FindByCisConnHdl(conn_handle); leAudioDevices_.FindByCisConnHdl(cig_id, conn_handle); if (!leAudioDevice) { if (!leAudioDevice) { LOG(WARNING) << __func__ << ", device under connection handle: " LOG(WARNING) << __func__ << ", device under connection handle: " << loghex(conn_handle) << loghex(conn_handle) Loading
system/bta/le_audio/devices.cc +7 −2 Original line number Original line Diff line number Diff line Loading @@ -2589,13 +2589,18 @@ LeAudioDevice* LeAudioDevices::FindByConnId(uint16_t conn_id) { return (iter == leAudioDevices_.end()) ? nullptr : iter->get(); return (iter == leAudioDevices_.end()) ? nullptr : iter->get(); } } LeAudioDevice* LeAudioDevices::FindByCisConnHdl(const uint16_t conn_hdl) { LeAudioDevice* LeAudioDevices::FindByCisConnHdl(uint8_t cig_id, uint16_t conn_hdl) { auto iter = std::find_if(leAudioDevices_.begin(), leAudioDevices_.end(), auto iter = std::find_if(leAudioDevices_.begin(), leAudioDevices_.end(), [&conn_hdl](auto& d) { [&conn_hdl, &cig_id](auto& d) { LeAudioDevice* dev; LeAudioDevice* dev; BidirectAsesPair ases; BidirectAsesPair ases; dev = d.get(); dev = d.get(); if (dev->group_id_ != cig_id) { return false; } ases = dev->GetAsesByCisConnHdl(conn_hdl); ases = dev->GetAsesByCisConnHdl(conn_hdl); if (ases.sink || ases.source) if (ases.sink || ases.source) return true; return true; Loading
system/bta/le_audio/devices.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -177,7 +177,7 @@ class LeAudioDevices { LeAudioDevice* FindByAddress(const RawAddress& address); LeAudioDevice* FindByAddress(const RawAddress& address); std::shared_ptr<LeAudioDevice> GetByAddress(const RawAddress& address); std::shared_ptr<LeAudioDevice> GetByAddress(const RawAddress& address); LeAudioDevice* FindByConnId(uint16_t conn_id); LeAudioDevice* FindByConnId(uint16_t conn_id); LeAudioDevice* FindByCisConnHdl(const uint16_t conn_hdl); LeAudioDevice* FindByCisConnHdl(uint8_t cig_id, uint16_t conn_hdl); size_t Size(void); size_t Size(void); void Dump(int fd, int group_id); void Dump(int fd, int group_id); void Cleanup(void); void Cleanup(void); Loading