-
Notifications
You must be signed in to change notification settings - Fork 0
/
RLAudioUtilities.h
65 lines (61 loc) · 1.15 KB
/
RLAudioUtilities.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#pragma once
/* Wrapper file for static methods to assist usage
of RustyAL */
//OpenAL includes
#include "AL\al.h"
namespace RustyLib
{
namespace Audio
{
enum error {
NO_ERRORS,
INVALID_BUFFER,
INVALID_NAME,
INVALID_ENUM,
INVALID_VALUE,
INVALID_OPERATION,
OUT_OF_MEMORY,
UNKOWN_ERROR
};
static error CheckALError(void )
{
ALenum error;
//If there is an error
if( (error = alGetError()) != AL_NO_ERROR)
{
std::string errStr;
switch(error)
{
case AL_INVALID_NAME:
errStr = "AL_INVALID_NAME";
return INVALID_NAME;
break;
case AL_INVALID_ENUM:
errStr = "AL_INVALID_ENUM";
return INVALID_ENUM;
break;
case AL_INVALID_VALUE:
errStr = "AL_INVALID_VALUE";
return INVALID_VALUE;
break;
case AL_INVALID_OPERATION:
errStr = "AL_INVALID_OPERATION";
return INVALID_OPERATION;
break;
case AL_OUT_OF_MEMORY:
errStr = "AL_OUT_OF_MEMORY";
return OUT_OF_MEMORY;
break;
default:
return UNKOWN_ERROR;
break;
}
std::cout << "OpenAL Error = " << errStr << std::endl;
}
else
{
return NO_ERRORS;
}
}
}
}