AudioPolicyEffects: Prefer using string_view
Avoids double scan of a char pointer, as length is known.
Test: atest CtsMediaAudioTestCases
Bug: 317816718
Change-Id: I74ebfbf33db48597c5e9411c81c93e1b9c794b54
diff --git a/services/audiopolicy/service/AudioPolicyEffects.cpp b/services/audiopolicy/service/AudioPolicyEffects.cpp
index 95423d0..1d931ff 100644
--- a/services/audiopolicy/service/AudioPolicyEffects.cpp
+++ b/services/audiopolicy/service/AudioPolicyEffects.cpp
@@ -908,7 +908,7 @@
auto effectDescs = std::make_shared<EffectDescVector>();
for (auto& effect : stream.effects) {
effectDescs->push_back(
- std::make_shared<EffectDesc>(effect->name.c_str(), effect->uuid));
+ std::make_shared<EffectDesc>(effect->name, effect->uuid));
}
streams.add(stream.type, std::move(effectDescs));
}
@@ -919,7 +919,7 @@
auto effectDescs = std::make_unique<EffectDescVector>();
for (auto& effect : deviceProcess.effects) {
effectDescs->push_back(
- std::make_shared<EffectDesc>(effect->name.c_str(), effect->uuid));
+ std::make_shared<EffectDesc>(effect->name, effect->uuid));
}
auto devEffects = std::make_unique<DeviceEffects>(
std::move(effectDescs), deviceProcess.type, deviceProcess.address);
diff --git a/services/audiopolicy/service/AudioPolicyEffects.h b/services/audiopolicy/service/AudioPolicyEffects.h
index 763ca61..0753f88 100644
--- a/services/audiopolicy/service/AudioPolicyEffects.h
+++ b/services/audiopolicy/service/AudioPolicyEffects.h
@@ -127,7 +127,7 @@
// as defined in audio_effects.conf
class EffectDesc {
public:
- EffectDesc(const char *name,
+ EffectDesc(std::string_view name,
const effect_uuid_t& typeUuid,
const String16& opPackageName,
const effect_uuid_t& uuid,
@@ -140,7 +140,7 @@
mPriority(priority),
mId(id) { }
// Modern EffectDesc usage:
- EffectDesc(const char *name, const effect_uuid_t& uuid) :
+ EffectDesc(std::string_view name, const effect_uuid_t& uuid) :
EffectDesc(name,
*EFFECT_UUID_NULL,
String16(""),
@@ -186,7 +186,7 @@
class DeviceEffects {
public:
DeviceEffects(std::unique_ptr<EffectDescVector> effectDescriptors,
- audio_devices_t device, const std::string& address) :
+ audio_devices_t device, std::string_view address) :
mEffectDescriptors(std::move(effectDescriptors)),
mDeviceType(device), mDeviceAddress(address) {}