Skip to content
Snippets Groups Projects
Commit a278fa6e authored by Lioncash's avatar Lioncash
Browse files

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.
parent e85bda5f
No related branches found
No related tags found
No related merge requests found
...@@ -93,7 +93,7 @@ public: ...@@ -93,7 +93,7 @@ public:
* *
* @return Is the buffer was released. * @return Is the buffer was released.
*/ */
bool ReleaseBuffers(Core::Timing::CoreTiming& core_timing, DeviceSession& session) { bool ReleaseBuffers(const Core::Timing::CoreTiming& core_timing, const DeviceSession& session) {
std::scoped_lock l{lock}; std::scoped_lock l{lock};
bool buffer_released{false}; bool buffer_released{false};
while (registered_count > 0) { while (registered_count > 0) {
......
...@@ -73,7 +73,7 @@ void DeviceSession::Stop() { ...@@ -73,7 +73,7 @@ void DeviceSession::Stop() {
} }
} }
void DeviceSession::AppendBuffers(std::span<AudioBuffer> buffers) const { void DeviceSession::AppendBuffers(std::span<const AudioBuffer> buffers) const {
for (size_t i = 0; i < buffers.size(); i++) { for (size_t i = 0; i < buffers.size(); i++) {
Sink::SinkBuffer new_buffer{ Sink::SinkBuffer new_buffer{
.frames = buffers[i].size / (channel_count * sizeof(s16)), .frames = buffers[i].size / (channel_count * sizeof(s16)),
...@@ -93,14 +93,14 @@ void DeviceSession::AppendBuffers(std::span<AudioBuffer> buffers) const { ...@@ -93,14 +93,14 @@ void DeviceSession::AppendBuffers(std::span<AudioBuffer> buffers) const {
} }
} }
void DeviceSession::ReleaseBuffer(AudioBuffer& buffer) const { void DeviceSession::ReleaseBuffer(const AudioBuffer& buffer) const {
if (type == Sink::StreamType::In) { if (type == Sink::StreamType::In) {
auto samples{stream->ReleaseBuffer(buffer.size / sizeof(s16))}; auto samples{stream->ReleaseBuffer(buffer.size / sizeof(s16))};
system.Memory().WriteBlockUnsafe(buffer.samples, samples.data(), buffer.size); system.Memory().WriteBlockUnsafe(buffer.samples, samples.data(), buffer.size);
} }
} }
bool DeviceSession::IsBufferConsumed(AudioBuffer& buffer) const { bool DeviceSession::IsBufferConsumed(const AudioBuffer& buffer) const {
return played_sample_count >= buffer.end_timestamp; return played_sample_count >= buffer.end_timestamp;
} }
......
...@@ -62,14 +62,14 @@ public: ...@@ -62,14 +62,14 @@ public:
* *
* @param buffers - The buffers to play. * @param buffers - The buffers to play.
*/ */
void AppendBuffers(std::span<AudioBuffer> buffers) const; void AppendBuffers(std::span<const AudioBuffer> buffers) const;
/** /**
* (Audio In only) Pop samples from the backend, and write them back to this buffer's address. * (Audio In only) Pop samples from the backend, and write them back to this buffer's address.
* *
* @param buffer - The buffer to write to. * @param buffer - The buffer to write to.
*/ */
void ReleaseBuffer(AudioBuffer& buffer) const; void ReleaseBuffer(const AudioBuffer& buffer) const;
/** /**
* Check if the buffer for the given tag has been consumed by the backend. * Check if the buffer for the given tag has been consumed by the backend.
...@@ -78,7 +78,7 @@ public: ...@@ -78,7 +78,7 @@ public:
* *
* @return true if the buffer has been consumed, otherwise false. * @return true if the buffer has been consumed, otherwise false.
*/ */
bool IsBufferConsumed(AudioBuffer& buffer) const; bool IsBufferConsumed(const AudioBuffer& buffer) const;
/** /**
* Start this device session, starting the backend stream. * Start this device session, starting the backend stream.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment