Class System
Defined in File system.h
Inheritance Relationships
Derived Type
public CE::Audio::Miniaudio::System(Class System)
Class Documentation
-
class System
Application-owned audio output and voice lifetime, independent of graphics.
Play/stream/control/maintenance/close are synchronized across producers. Playback progresses on the backend clock, without update or render admission. Device opening, decode and initial stream opening may block; prepare them outside latency-sensitive simulation work. Stream paths remain required until playback ends. No game callback runs from the native mixing thread. Destroy/close stops output and retires voices before native output state. The application settles producers before destroying this object. Surviving Voice handles remain safe. Subsequent system operations throw, except closed/close.
Subclassed by CE::Audio::Miniaudio::System
Public Functions
-
virtual ~System() = default
-
virtual std::shared_ptr<::CE::Audio::Voice> play(const ::CE::Audio::Clip &clip, ::CE::Audio::PlaybackOptions options = {}) = 0
Declaration:
[[nodiscard]]
-
virtual std::shared_ptr<::CE::Audio::Voice> stream(const std::filesystem::path &file, ::CE::Audio::PlaybackOptions options = {}) = 0
Declaration:
[[nodiscard]]
-
virtual void set_volume(float volume) = 0
-
virtual float volume() const = 0
Declaration:
[[nodiscard]]
-
virtual void maintain() = 0
-
virtual void close() noexcept = 0
-
virtual bool closed() const = 0
Declaration:
[[nodiscard]]
-
virtual ~System() = default