Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bed497a1 authored by Łukasz Rymanowski's avatar Łukasz Rymanowski
Browse files

leaudio: Change return type for FindFirstSupportedConfiguration

This is just mechanical refactor needed for future change.

Bug: 351974325
Flag: EXEMPT, mechanical refactor.
Test: atest bluetooth_le_audio_client_test bluetooth_le_audio_test bluetooth_le_audio_codec_manager_test
Change-Id: I840e5c1f6d911cff03c22a73220a664280c0e7fd
parent b5caa4c4
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -325,7 +325,7 @@ public:

  std::unique_ptr<AudioSetConfiguration> GetCodecConfig(
          const CodecManager::UnicastConfigurationRequirements& requirements,
          CodecManager::UnicastConfigurationVerifier verifier) {
          CodecManager::UnicastConfigurationProvider provider) {
    if (IsUsingCodecExtensibility()) {
      auto hal_config = unicast_local_source_hal_client->GetUnicastConfig(requirements);
      if (hal_config) {
@@ -361,8 +361,7 @@ public:
    //       configuration with group capabilities. Note that this path only
    //       supports the LC3 codec format. For the multicodec support we should
    //       rely on the configuration matcher behind the AIDL interface.
    auto conf = verifier(requirements, &configs);
    return conf ? std::make_unique<AudioSetConfiguration>(*conf) : nullptr;
    return provider(requirements, &configs);
  }

  bool CheckCodecConfigIsBiDirSwb(const AudioSetConfiguration& config) {
@@ -1192,9 +1191,9 @@ bool CodecManager::UpdateActiveBroadcastAudioHalClient(

std::unique_ptr<AudioSetConfiguration> CodecManager::GetCodecConfig(
        const CodecManager::UnicastConfigurationRequirements& requirements,
        CodecManager::UnicastConfigurationVerifier verifier) {
        CodecManager::UnicastConfigurationProvider provider) {
  if (pimpl_->IsRunning()) {
    return pimpl_->codec_manager_impl_->GetCodecConfig(requirements, verifier);
    return pimpl_->codec_manager_impl_->GetCodecConfig(requirements, provider);
  }

  return nullptr;
+4 −4
Original line number Diff line number Diff line
@@ -77,16 +77,16 @@ public:
    std::optional<std::vector<DeviceDirectionRequirements>> source_requirements;
  };

  /* The verifier function checks each possible configuration (from the set of
  /* The provider function checks each possible configuration (from the set of
   * all possible, supported configuration acquired from
   * AudioSetConfigurationProvider for the given scenario), to select a single
   * configuration, matching the current streaming audio group requirements.
   * Note: Used only with the legacy AudioSetConfigurationProvider.
   */
  typedef std::function<const set_configurations::AudioSetConfiguration*(
  typedef std::function<std::unique_ptr<set_configurations::AudioSetConfiguration>(
          const UnicastConfigurationRequirements& requirements,
          const set_configurations::AudioSetConfigurations* confs)>
          UnicastConfigurationVerifier;
          UnicastConfigurationProvider;

  struct BroadcastConfigurationRequirements {
    std::vector<std::pair<bluetooth::le_audio::types::LeAudioContextType, uint8_t>>
@@ -119,7 +119,7 @@ public:
          std::function<void(const offload_config& config, uint8_t direction)> update_receiver);
  virtual std::unique_ptr<::bluetooth::le_audio::set_configurations::AudioSetConfiguration>
  GetCodecConfig(const UnicastConfigurationRequirements& requirements,
                 UnicastConfigurationVerifier verifier);
                 UnicastConfigurationProvider provider);
  virtual bool CheckCodecConfigIsBiDirSwb(
          const ::bluetooth::le_audio::set_configurations::AudioSetConfiguration& config) const;
  virtual bool CheckCodecConfigIsDualBiDirSwb(
+8 −8
Original line number Diff line number Diff line
@@ -510,7 +510,7 @@ TEST_F(CodecManagerTestAdsp, test_capabilities_none) {
  bool has_null_config = false;
  auto match_first_config = [&](const CodecManager::UnicastConfigurationRequirements& requirements,
                                const set_configurations::AudioSetConfigurations* confs)
          -> const set_configurations::AudioSetConfiguration* {
          -> std::unique_ptr<set_configurations::AudioSetConfiguration> {
    // Don't expect the matcher being called on nullptr
    if (confs == nullptr) {
      has_null_config = true;
@@ -518,7 +518,7 @@ TEST_F(CodecManagerTestAdsp, test_capabilities_none) {
    if (confs && confs->size()) {
      // For simplicity return the first element, the real matcher should
      // check the group capabilities.
      return confs->at(0);
      return std::make_unique<AudioSetConfiguration>(*(confs->at(0)));
    }
    return nullptr;
  };
@@ -558,12 +558,12 @@ TEST_F(CodecManagerTestAdsp, test_capabilities) {
            [&available_configs_size](
                    const CodecManager::UnicastConfigurationRequirements& requirements,
                    const set_configurations::AudioSetConfigurations* confs)
            -> const set_configurations::AudioSetConfiguration* {
            -> std::unique_ptr<set_configurations::AudioSetConfiguration> {
      if (confs && confs->size()) {
        available_configs_size = confs->size();
        // For simplicity return the first element, the real matcher should
        // check the group capabilities.
        return confs->at(0);
        return std::make_unique<AudioSetConfiguration>(*(confs->at(0)));
      }
      return nullptr;
    };
@@ -989,7 +989,7 @@ TEST_F(CodecManagerTestHost, test_dual_bidir_swb_supported) {
            {.audio_context_type = context},
            [&](const CodecManager::UnicastConfigurationRequirements& requirements,
                const set_configurations::AudioSetConfigurations* confs)
                    -> const set_configurations::AudioSetConfiguration* {
                    -> std::unique_ptr<set_configurations::AudioSetConfiguration> {
              if (confs == nullptr) {
                got_null_cfgs_container = true;
              } else {
@@ -1039,7 +1039,7 @@ TEST_F(CodecManagerTestAdsp, test_dual_bidir_swb_supported) {
            {.audio_context_type = context},
            [&](const CodecManager::UnicastConfigurationRequirements& requirements,
                const set_configurations::AudioSetConfigurations* confs)
                    -> const set_configurations::AudioSetConfiguration* {
                    -> std::unique_ptr<set_configurations::AudioSetConfiguration> {
              if (confs == nullptr) {
                got_null_cfgs_container = true;
              } else {
@@ -1071,7 +1071,7 @@ TEST_F(CodecManagerTestHostNoSwb, test_dual_bidir_swb_not_supported) {
            {.audio_context_type = context},
            [&](const CodecManager::UnicastConfigurationRequirements& requirements,
                const set_configurations::AudioSetConfigurations* confs)
                    -> const set_configurations::AudioSetConfiguration* {
                    -> std::unique_ptr<set_configurations::AudioSetConfiguration> {
              if (confs == nullptr) {
                got_null_cfgs_container = true;
              } else {
@@ -1120,7 +1120,7 @@ TEST_F(CodecManagerTestAdspNoSwb, test_dual_bidir_swb_not_supported) {
            {.audio_context_type = context},
            [&](const CodecManager::UnicastConfigurationRequirements& requirements,
                const set_configurations::AudioSetConfigurations* confs)
                    -> const set_configurations::AudioSetConfiguration* {
                    -> std::unique_ptr<set_configurations::AudioSetConfiguration> {
              if (confs == nullptr) {
                got_null_cfgs_container = true;
              } else {
+2 −2
Original line number Diff line number Diff line
@@ -1873,7 +1873,7 @@ bool LeAudioDeviceGroup::IsConfiguredForContext(LeAudioContextType context_type)
  return stream_conf.conf.get() == GetActiveConfiguration().get();
}

const set_configurations::AudioSetConfiguration*
std::unique_ptr<set_configurations::AudioSetConfiguration>
LeAudioDeviceGroup::FindFirstSupportedConfiguration(
        const CodecManager::UnicastConfigurationRequirements& requirements,
        const set_configurations::AudioSetConfigurations* confs) const {
@@ -1887,7 +1887,7 @@ LeAudioDeviceGroup::FindFirstSupportedConfiguration(
    log::assert_that(conf != nullptr, "confs should not be null");
    if (IsAudioSetConfigurationSupported(requirements, conf)) {
      log::debug("found: {}", conf->name);
      return conf;
      return std::make_unique<set_configurations::AudioSetConfiguration>(*conf);
    }
  }

+1 −1
Original line number Diff line number Diff line
@@ -390,7 +390,7 @@ public:
   * configurations. This will not be used for finding best possible vendor
   * codec configuration.
   */
  const set_configurations::AudioSetConfiguration* FindFirstSupportedConfiguration(
  std::unique_ptr<set_configurations::AudioSetConfiguration> FindFirstSupportedConfiguration(
          const CodecManager::UnicastConfigurationRequirements& requirements,
          const set_configurations::AudioSetConfigurations* confs) const;

Loading