| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- // Copyright 2018 yuzu Emulator Project
- // Licensed under GPLv2 or any later version
- // Refer to the license.txt file included.
- #pragma once
- #include <memory>
- #include <vector>
- #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<u8>&& data) : tag{tag}, data{std::move(data)} {}
- /// Returns the raw audio data for the buffer
- const std::vector<u8>& 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<u8> data;
- };
- using BufferPtr = std::shared_ptr<Buffer>;
- } // namespace AudioCore
|