11#ifndef INCGUARD_MGL_AUDIO_WAVE_VOICE_H_1611869697
12#define INCGUARD_MGL_AUDIO_WAVE_VOICE_H_1611869697
27 bool Load()
noexcept override;
28 bool GetSample(
float &outDataL,
float &outDataR, uint32_t trackIndex,
size_t sampleFrame)
const noexcept override;
37 uint32_t
GetTotalFrame([[maybe_unused]] uint32_t trackIndex)
const noexcept override
50 bool IsLoop([[maybe_unused]] uint32_t trackIndex)
const noexcept override
62 uint32_t
GetLoopFrame([[maybe_unused]] uint32_t trackIndex)
const noexcept override
79 bool LoadWaveFile() noexcept;
86 uint32_t _totalFrame{0};
88 std::future<void> _future;
MGL オーディオボイス
Definition mgl_audio_voice.h:24
WAVEローダークラス
Definition mgl_audio_wave_loader.h:21
MGL WAVEボイス
Definition mgl_audio_wave_voice.h:23
WaveVoice(VoiceKey key, const File::PathView &path, bool isLoop=false, uint32_t loopFrame=0) noexcept
コンストラクタ
Definition mgl_audio_wave_voice.cc:30
uint32_t GetTrackCount() const noexcept override
ボイスが持つトラックの数を取得
Definition mgl_audio_wave_voice.h:73
uint32_t GetLoopFrame(uint32_t trackIndex) const noexcept override
指定したトラックのループフレームを取得
Definition mgl_audio_wave_voice.h:62
bool Load() noexcept override
ボイスの読み込み処理
Definition mgl_audio_wave_voice.cc:46
bool GetSample(float &outDataL, float &outDataR, uint32_t trackIndex, size_t sampleFrame) const noexcept override
スタティックボイスのサンプルの取得
Definition mgl_audio_wave_voice.cc:125
uint32_t GetTotalFrame(uint32_t trackIndex) const noexcept override
ボイスの最大フレーム数を取得
Definition mgl_audio_wave_voice.h:37
bool IsLoop(uint32_t trackIndex) const noexcept override
指定したトラックのループ設定を取得
Definition mgl_audio_wave_voice.h:50
文字列の参照のみを行うファイルパスクラス
Definition mgl_file_path_view.h:20
VoiceKey
ボイスキー
Definition mgl_audio_defs.h:22
std::unique_ptr< T, Deleter > unique_ptr
MGLのアロケータを利用するユニークポインタ
Definition mgl_stl_memory.h:247