From ab756fd068c45fd1b3e3d0216b78c39a741214ae Mon Sep 17 00:00:00 2001 From: bunnei Date: Thu, 26 Jul 2018 20:01:37 -0400 Subject: audio_core: Add initial code for keeping track of audout state. --- src/audio_core/buffer.h | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 src/audio_core/buffer.h (limited to 'src/audio_core/buffer.h') diff --git a/src/audio_core/buffer.h b/src/audio_core/buffer.h new file mode 100644 index 000000000..874ec787e --- /dev/null +++ b/src/audio_core/buffer.h @@ -0,0 +1,37 @@ +// Copyright 2018 yuzu Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include + +#include "common/common_types.h" + +namespace AudioCore { + +/** + * Represents a buffer of audio samples to be played in an audio stream + */ +class Buffer { +public: + using Tag = u64; + + Buffer(Tag tag, std::vector&& data) : tag{tag}, data{std::move(data)} {} + + /// Returns the raw audio data for the buffer + const std::vector& GetData() const { + return data; + } + + /// Returns the buffer tag, this is provided by the game to the audout service + Tag GetTag() const { + return tag; + } + +private: + Tag tag; + std::vector data; +}; + +} // namespace AudioCore -- cgit v1.2.3