output/Internal: move the AudioOutputSource to struct AudioOutputControl

This commit is contained in:
Max Kellermann
2017-05-23 00:03:06 +02:00
parent 58683f02ec
commit 613dd67784
7 changed files with 41 additions and 82 deletions
+9 -11
View File
@@ -245,15 +245,19 @@ AudioOutputControl::LockUpdate(const AudioFormat audio_format,
}
bool
AudioOutputControl::LockIsChunkConsumed(const MusicChunk &chunk) const noexcept
AudioOutputControl::IsChunkConsumed(const MusicChunk &chunk) const noexcept
{
return output->LockIsChunkConsumed(chunk);
if (!output->open)
return true;
return source.IsChunkConsumed(chunk);
}
void
AudioOutputControl::ClearTailChunk(const MusicChunk &chunk) noexcept
bool
AudioOutputControl::LockIsChunkConsumed(const MusicChunk &chunk) const noexcept
{
output->ClearTailChunk(chunk);
const std::lock_guard<Mutex> protect(mutex);
return IsChunkConsumed(chunk);
}
void
@@ -334,12 +338,6 @@ AudioOutputControl::LockCloseWait() noexcept
CloseWait();
}
void
AudioOutputControl::SetReplayGainMode(ReplayGainMode _mode) noexcept
{
return output->SetReplayGainMode(_mode);
}
void
AudioOutputControl::StopThread() noexcept
{