00001 #ifndef CLISTENER_H_INCLUDED
00002 #define CLISTENER_H_INCLUDED
00003 #include <AL/al.h>
00004 #include <AL/alut.h>
00005 #include "mikmod.h"
00006
00007 namespace cAudio
00008 {
00009 class cListener
00010 {
00011 public:
00012 cListener static &getInstance()
00013 {
00014 static cListener This;
00015 return This;
00016 }
00017
00018
00019 void setPosition(ALfloat x,ALfloat y, ALfloat z)
00020 {
00021 alListener3f(AL_POSITION,x,y,z);
00022 }
00023
00024 void setOrientation(ALfloat x,ALfloat y,ALfloat z,ALfloat upx,ALfloat upy,ALfloat upz)
00025 {
00026 ALfloat orientation[6] = {x,y,z,upx,upy,upz};
00027 alListenerfv(AL_ORIENTATION,orientation);
00028 }
00029 static void initaudio(int argc,char* argv[])
00030 {
00031 MikMod_RegisterAllDrivers();
00032 MikMod_RegisterAllLoaders();
00033 MikMod_Init("");
00034
00035 alutInit(&argc,argv);
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055 }
00056
00057 static void shutdownaudio()
00058 {
00059 MikMod_Exit();
00060 alutExit();
00061 }
00062 };
00063 }
00064 #endif // CLISTENER_H_INCLUDED