Internally store 32-bit float buffer data, and mix accordingly
[openal-soft.git] / OpenAL32 / Include / alBuffer.h
blobf37e9b81d2684502dd61e9d4eaeaf5a7403f0b7a
1 #ifndef _AL_BUFFER_H_
2 #define _AL_BUFFER_H_
4 #include "AL/al.h"
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
10 #define BUFFER_PADDING 2
12 typedef struct ALbuffer
14 ALfloat *data;
15 ALsizei size;
17 ALenum format;
18 ALenum eOriginalFormat;
19 ALsizei frequency;
21 ALuint refcount; // Number of sources using this buffer (deletion can only occur when this is 0)
23 // Index to itself
24 ALuint buffer;
26 struct ALbuffer *next;
27 } ALbuffer;
29 ALvoid ALAPIENTRY alBufferSubDataEXT(ALuint buffer,ALenum format,const ALvoid *data,ALsizei offset,ALsizei length);
31 ALvoid ReleaseALBuffers(ALCdevice *device);
33 #ifdef __cplusplus
35 #endif
37 #endif