staging some future refactoring, .h -> hpp, fix for rendering w/ audio

This commit is contained in:
2026-03-09 23:08:57 -04:00
parent 77f6e65b15
commit 2d27b7e8fb
76 changed files with 0 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
#pragma once
#include <SDL3_mixer/SDL_mixer.h>
#include <cstddef>
#include <filesystem>
#include <vector>
namespace anm2ed::resource
{
class Audio
{
MIX_Audio* internal{nullptr};
MIX_Track* track{nullptr};
std::vector<unsigned char> data{};
MIX_Mixer* mixer_get();
void unload();
public:
Audio(const unsigned char*, size_t);
Audio(const std::filesystem::path&);
~Audio();
Audio() = default;
Audio(const Audio&);
Audio(Audio&&) noexcept;
Audio& operator=(const Audio&);
Audio& operator=(Audio&&) noexcept;
bool is_valid();
void play(bool loop = false, MIX_Mixer* = nullptr);
void stop(MIX_Mixer* = nullptr);
bool is_playing() const;
};
}