From 7ffd62424804eceb73f01b1c4e8dc216134c8295 Mon Sep 17 00:00:00 2001 From: ameerj <52414509+ameerj@users.noreply.github.com> Date: Sun, 25 Dec 2022 13:42:32 -0500 Subject: service: Use ReadBufferSpan where it is trivial to do so --- src/core/hle/service/audio/audin_u.cpp | 6 +++--- src/core/hle/service/audio/audout_u.cpp | 4 ++-- src/core/hle/service/audio/audren_u.cpp | 6 +++--- src/core/hle/service/audio/hwopus.cpp | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) (limited to 'src/core/hle/service/audio') diff --git a/src/core/hle/service/audio/audin_u.cpp b/src/core/hle/service/audio/audin_u.cpp index 053e8f9dd..f3dd8397d 100644 --- a/src/core/hle/service/audio/audin_u.cpp +++ b/src/core/hle/service/audio/audin_u.cpp @@ -98,7 +98,7 @@ private: LOG_ERROR(Service_Audio, "Input buffer is too small for an AudioInBuffer!"); } - const auto& in_buffer = ctx.ReadBuffer(); + const auto& in_buffer = ctx.ReadBufferSpan(); AudioInBuffer buffer{}; std::memcpy(&buffer, in_buffer.data(), sizeof(AudioInBuffer)); @@ -266,7 +266,7 @@ void AudInU::OpenAudioIn(Kernel::HLERequestContext& ctx) { IPC::RequestParser rp{ctx}; auto in_params{rp.PopRaw()}; auto applet_resource_user_id{rp.PopRaw()}; - const auto device_name_data{ctx.ReadBuffer()}; + const auto device_name_data{ctx.ReadBufferSpan()}; auto device_name = Common::StringFromBuffer(device_name_data); auto handle{ctx.GetCopyHandle(0)}; @@ -317,7 +317,7 @@ void AudInU::OpenAudioInProtocolSpecified(Kernel::HLERequestContext& ctx) { auto protocol_specified{rp.PopRaw()}; auto in_params{rp.PopRaw()}; auto applet_resource_user_id{rp.PopRaw()}; - const auto device_name_data{ctx.ReadBuffer()}; + const auto device_name_data{ctx.ReadBufferSpan()}; auto device_name = Common::StringFromBuffer(device_name_data); auto handle{ctx.GetCopyHandle(0)}; diff --git a/src/core/hle/service/audio/audout_u.cpp b/src/core/hle/service/audio/audout_u.cpp index 29751f075..4bf388055 100644 --- a/src/core/hle/service/audio/audout_u.cpp +++ b/src/core/hle/service/audio/audout_u.cpp @@ -105,7 +105,7 @@ private: LOG_ERROR(Service_Audio, "Input buffer is too small for an AudioOutBuffer!"); } - const auto& in_buffer = ctx.ReadBuffer(); + const auto& in_buffer = ctx.ReadBufferSpan(); AudioOutBuffer buffer{}; std::memcpy(&buffer, in_buffer.data(), sizeof(AudioOutBuffer)); @@ -264,7 +264,7 @@ void AudOutU::OpenAudioOut(Kernel::HLERequestContext& ctx) { IPC::RequestParser rp{ctx}; auto in_params{rp.PopRaw()}; auto applet_resource_user_id{rp.PopRaw()}; - const auto device_name_data{ctx.ReadBuffer()}; + const auto device_name_data{ctx.ReadBufferSpan()}; auto device_name = Common::StringFromBuffer(device_name_data); auto handle{ctx.GetCopyHandle(0)}; diff --git a/src/core/hle/service/audio/audren_u.cpp b/src/core/hle/service/audio/audren_u.cpp index 3a1c231b6..1a48c155e 100644 --- a/src/core/hle/service/audio/audren_u.cpp +++ b/src/core/hle/service/audio/audren_u.cpp @@ -112,7 +112,7 @@ private: void RequestUpdate(Kernel::HLERequestContext& ctx) { LOG_TRACE(Service_Audio, "called"); - std::vector input{ctx.ReadBuffer(0)}; + const auto input{ctx.ReadBufferSpan(0)}; // These buffers are written manually to avoid an issue with WriteBuffer throwing errors for // checking size 0. Performance size is 0 for most games. @@ -306,7 +306,7 @@ private: IPC::RequestParser rp{ctx}; const f32 volume = rp.Pop(); - const auto device_name_buffer = ctx.ReadBuffer(); + const auto device_name_buffer = ctx.ReadBufferSpan(); const std::string name = Common::StringFromBuffer(device_name_buffer); LOG_DEBUG(Service_Audio, "called. name={}, volume={}", name, volume); @@ -320,7 +320,7 @@ private: } void GetAudioDeviceOutputVolume(Kernel::HLERequestContext& ctx) { - const auto device_name_buffer = ctx.ReadBuffer(); + const auto device_name_buffer = ctx.ReadBufferSpan(); const std::string name = Common::StringFromBuffer(device_name_buffer); LOG_DEBUG(Service_Audio, "called. Name={}", name); diff --git a/src/core/hle/service/audio/hwopus.cpp b/src/core/hle/service/audio/hwopus.cpp index 825fb8bcc..7c3f25c67 100644 --- a/src/core/hle/service/audio/hwopus.cpp +++ b/src/core/hle/service/audio/hwopus.cpp @@ -74,7 +74,7 @@ private: ResetDecoderContext(); } - if (!DecodeOpusData(consumed, sample_count, ctx.ReadBuffer(), samples, performance)) { + if (!DecodeOpusData(consumed, sample_count, ctx.ReadBufferSpan(), samples, performance)) { LOG_ERROR(Audio, "Failed to decode opus data"); IPC::ResponseBuilder rb{ctx, 2}; // TODO(ogniK): Use correct error code @@ -93,7 +93,7 @@ private: ctx.WriteBuffer(samples); } - bool DecodeOpusData(u32& consumed, u32& sample_count, const std::vector& input, + bool DecodeOpusData(u32& consumed, u32& sample_count, std::span input, std::vector& output, u64* out_performance_time) const { const auto start_time = std::chrono::steady_clock::now(); const std::size_t raw_output_sz = output.size() * sizeof(opus_int16); @@ -257,7 +257,7 @@ void HwOpus::GetWorkBufferSizeEx(Kernel::HLERequestContext& ctx) { void HwOpus::GetWorkBufferSizeForMultiStreamEx(Kernel::HLERequestContext& ctx) { OpusMultiStreamParametersEx param; - std::memcpy(¶m, ctx.ReadBuffer().data(), ctx.GetReadBufferSize()); + std::memcpy(¶m, ctx.ReadBufferSpan().data(), ctx.GetReadBufferSize()); const auto sample_rate = param.sample_rate; const auto channel_count = param.channel_count; -- cgit v1.2.3