Mountain
1.0.0
Simple C++ 2D Game Framework
audio_buffer.hpp
1
#pragma once
2
3
#include "Mountain/core.hpp"
4
5
namespace
Mountain
6
{
7
class
AudioTrack;
8
class
AudioContext;
9
10
class
MOUNTAIN_API
AudioBuffer
11
{
12
public
:
13
AudioBuffer
();
14
15
explicit
AudioBuffer
(int32_t size);
16
17
explicit
AudioBuffer
(
const
AudioTrack
* track);
18
19
~
AudioBuffer
();
20
21
DEFAULT_COPY_MOVE_OPERATIONS(
AudioBuffer
)
22
23
void
SetData(
const
AudioTrack
* track);
24
25
void
SetData(
const
void
* data, int32_t length, uint16_t channels, uint16_t bitDepth, int32_t sampleRate);
26
27
[[nodiscard]]
28
uint32_t GetHandle()
const
;
29
30
private
:
31
uint32_t m_Handle = 0;
32
33
int32_t m_Format = 0;
34
35
AudioContext
* m_Context =
nullptr
;
36
37
[[nodiscard]]
38
static
int32_t AlFormatFromData(uint16_t channels, uint16_t bitDepth);
39
};
40
}
Mountain::AudioContext
Definition:
audio_context.hpp:19
Mountain::AudioBuffer
Definition:
audio_buffer.hpp:10
Mountain::AudioTrack
Definition:
audio_track.hpp:16
Mountain
Contains all declarations of the Mountain Framework.
Definition:
audio.hpp:22
Mountain
include
Mountain
audio
audio_buffer.hpp
Generated by
1.8.13