2014-03-08 00:15:39 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
2014-05-24 23:38:29 +02:00
|
|
|
#include "OpenAL/include/alext.h"
|
2014-03-08 00:15:39 +01:00
|
|
|
|
|
|
|
|
class OpenALThread
|
|
|
|
|
{
|
|
|
|
|
private:
|
2014-03-13 01:26:53 +01:00
|
|
|
static const uint g_al_buffers_count = 16;
|
|
|
|
|
|
|
|
|
|
ALuint m_source;
|
|
|
|
|
ALuint m_buffers[g_al_buffers_count];
|
|
|
|
|
ALCdevice* m_device;
|
|
|
|
|
ALCcontext* m_context;
|
2014-04-28 05:17:22 +02:00
|
|
|
ALsizei m_buffer_size;
|
2014-03-08 00:15:39 +01:00
|
|
|
|
|
|
|
|
public:
|
2014-03-13 01:26:53 +01:00
|
|
|
~OpenALThread();
|
|
|
|
|
|
2014-03-08 00:15:39 +01:00
|
|
|
void Init();
|
|
|
|
|
void Quit();
|
|
|
|
|
void Play();
|
|
|
|
|
void Open(const void* src, ALsizei size);
|
|
|
|
|
void Close();
|
|
|
|
|
void Stop();
|
2014-03-13 01:26:53 +01:00
|
|
|
bool AddBlock(const ALuint buffer_id, ALsizei size, const void* src);
|
2014-03-08 00:15:39 +01:00
|
|
|
void AddData(const void* src, ALsizei size);
|
2014-03-09 15:44:12 +01:00
|
|
|
};
|
|
|
|
|
|