summaryrefslogtreecommitdiff
path: root/src/audio_core/device
diff options
context:
space:
mode:
authorGravatar Lioncash2022-09-16 09:29:28 -0400
committerGravatar Lioncash2022-09-16 09:31:33 -0400
commita278fa6e2a8e06bf20b608ec6a79a53c32321d9b (patch)
tree9cfa8b7247494d8ea71754571fd0981eaffc5c74 /src/audio_core/device
parentMerge pull request #8878 from Kelebek1/remove_pause (diff)
downloadyuzu-a278fa6e2a8e06bf20b608ec6a79a53c32321d9b.tar.gz
yuzu-a278fa6e2a8e06bf20b608ec6a79a53c32321d9b.tar.xz
yuzu-a278fa6e2a8e06bf20b608ec6a79a53c32321d9b.zip
device_session: Pass arguments by const-ref in relevant functions
These functions don't modify the passed in audio buffers, so we can signify that in the interface.
Diffstat (limited to 'src/audio_core/device')
-rw-r--r--src/audio_core/device/audio_buffers.h2
-rw-r--r--src/audio_core/device/device_session.cpp6
-rw-r--r--src/audio_core/device/device_session.h6
3 files changed, 7 insertions, 7 deletions
diff --git a/src/audio_core/device/audio_buffers.h b/src/audio_core/device/audio_buffers.h
index 3ecbbb63f..4918a61c7 100644
--- a/src/audio_core/device/audio_buffers.h
+++ b/src/audio_core/device/audio_buffers.h
@@ -93,7 +93,7 @@ public:
93 * 93 *
94 * @return Is the buffer was released. 94 * @return Is the buffer was released.
95 */ 95 */
96 bool ReleaseBuffers(Core::Timing::CoreTiming& core_timing, DeviceSession& session) { 96 bool ReleaseBuffers(const Core::Timing::CoreTiming& core_timing, const DeviceSession& session) {
97 std::scoped_lock l{lock}; 97 std::scoped_lock l{lock};
98 bool buffer_released{false}; 98 bool buffer_released{false};
99 while (registered_count > 0) { 99 while (registered_count > 0) {
diff --git a/src/audio_core/device/device_session.cpp b/src/audio_core/device/device_session.cpp
index c71c3a376..6cde33f93 100644
--- a/src/audio_core/device/device_session.cpp
+++ b/src/audio_core/device/device_session.cpp
@@ -73,7 +73,7 @@ void DeviceSession::Stop() {
73 } 73 }
74} 74}
75 75
76void DeviceSession::AppendBuffers(std::span<AudioBuffer> buffers) const { 76void DeviceSession::AppendBuffers(std::span<const AudioBuffer> buffers) const {
77 for (size_t i = 0; i < buffers.size(); i++) { 77 for (size_t i = 0; i < buffers.size(); i++) {
78 Sink::SinkBuffer new_buffer{ 78 Sink::SinkBuffer new_buffer{
79 .frames = buffers[i].size / (channel_count * sizeof(s16)), 79 .frames = buffers[i].size / (channel_count * sizeof(s16)),
@@ -93,14 +93,14 @@ void DeviceSession::AppendBuffers(std::span<AudioBuffer> buffers) const {
93 } 93 }
94} 94}
95 95
96void DeviceSession::ReleaseBuffer(AudioBuffer& buffer) const { 96void DeviceSession::ReleaseBuffer(const AudioBuffer& buffer) const {
97 if (type == Sink::StreamType::In) { 97 if (type == Sink::StreamType::In) {
98 auto samples{stream->ReleaseBuffer(buffer.size / sizeof(s16))}; 98 auto samples{stream->ReleaseBuffer(buffer.size / sizeof(s16))};
99 system.Memory().WriteBlockUnsafe(buffer.samples, samples.data(), buffer.size); 99 system.Memory().WriteBlockUnsafe(buffer.samples, samples.data(), buffer.size);
100 } 100 }
101} 101}
102 102
103bool DeviceSession::IsBufferConsumed(AudioBuffer& buffer) const { 103bool DeviceSession::IsBufferConsumed(const AudioBuffer& buffer) const {
104 return played_sample_count >= buffer.end_timestamp; 104 return played_sample_count >= buffer.end_timestamp;
105} 105}
106 106
diff --git a/src/audio_core/device/device_session.h b/src/audio_core/device/device_session.h
index 53b649c61..74f4dc085 100644
--- a/src/audio_core/device/device_session.h
+++ b/src/audio_core/device/device_session.h
@@ -62,14 +62,14 @@ public:
62 * 62 *
63 * @param buffers - The buffers to play. 63 * @param buffers - The buffers to play.
64 */ 64 */
65 void AppendBuffers(std::span<AudioBuffer> buffers) const; 65 void AppendBuffers(std::span<const AudioBuffer> buffers) const;
66 66
67 /** 67 /**
68 * (Audio In only) Pop samples from the backend, and write them back to this buffer's address. 68 * (Audio In only) Pop samples from the backend, and write them back to this buffer's address.
69 * 69 *
70 * @param buffer - The buffer to write to. 70 * @param buffer - The buffer to write to.
71 */ 71 */
72 void ReleaseBuffer(AudioBuffer& buffer) const; 72 void ReleaseBuffer(const AudioBuffer& buffer) const;
73 73
74 /** 74 /**
75 * Check if the buffer for the given tag has been consumed by the backend. 75 * Check if the buffer for the given tag has been consumed by the backend.
@@ -78,7 +78,7 @@ public:
78 * 78 *
79 * @return true if the buffer has been consumed, otherwise false. 79 * @return true if the buffer has been consumed, otherwise false.
80 */ 80 */
81 bool IsBufferConsumed(AudioBuffer& buffer) const; 81 bool IsBufferConsumed(const AudioBuffer& buffer) const;
82 82
83 /** 83 /**
84 * Start this device session, starting the backend stream. 84 * Start this device session, starting the backend stream.