11#ifndef INCGUARD_MGL_AUDIO_WAVE_LOADER_H_1611731366
12#define INCGUARD_MGL_AUDIO_WAVE_LOADER_H_1611731366
33 static_assert(
sizeof(
Format) == 16);
42 [[nodiscard]]
constexpr bool IsOpen() const noexcept
64 constexpr void Seek(uint32_t sampleFrame)
noexcept
66 _currentDataOffset =
static_cast<size_t>(sampleFrame) * _format.
blockSize;
78 return _currentDataOffset >= _dataSize;
93 void Close() noexcept;
95 size_t GetSample(
void *buffer,
size_t bufferSize) noexcept;
101 File::ThrowingHandle _file;
102 size_t _dataOffset{0};
104 size_t _currentDataOffset{0};
WAVEローダークラス
Definition mgl_audio_wave_loader.h:21
constexpr bool IsOpen() const noexcept
WAVEファイルがオープンされているかを取得
Definition mgl_audio_wave_loader.h:42
constexpr void Seek(uint32_t sampleFrame) noexcept
読み込み位置を設定
Definition mgl_audio_wave_loader.h:64
constexpr size_t GetDataSize() const noexcept
データサイズを取得
Definition mgl_audio_wave_loader.h:87
size_t GetSampleWithConvert(float *buffer, size_t bufferSize) noexcept
サンプルをfloatに変換して取得
Definition mgl_audio_wave_loader.cc:200
size_t GetSample(void *buffer, size_t bufferSize) noexcept
サンプルの取得
Definition mgl_audio_wave_loader.cc:155
void Close() noexcept
WAVEファイルをクローズ
Definition mgl_audio_wave_loader.cc:137
bool Open(const File::PathView &path) noexcept
WAVEファイルをオープン
Definition mgl_audio_wave_loader.cc:34
constexpr bool IsFinished() const noexcept
読み込み位置が終端に達しているかを取得
Definition mgl_audio_wave_loader.h:76
constexpr const Format & GetFormat() const noexcept
フォーマットを取得
Definition mgl_audio_wave_loader.h:53
文字列の参照のみを行うファイルパスクラス
Definition mgl_file_path_view.h:20