-/* $Id$
-
-This file is part of libmspal
-Copyright © 2008 Mikko Rasa, Mikkosoft Productions
-Diestributed under the LGPL
-*/
-
-#ifndef MSP_AL_LIStENER_H_
+#ifndef MSP_AL_LISTENER_H_
#define MSP_AL_LISTENER_H_
-#include <AL/al.h>
+#include "al.h"
namespace Msp {
namespace AL {
+/**
+Represents the listener in the 3D environment. This class is a singleton.
+*/
class Listener
{
private:
+ float orientation[6];
+
Listener();
public:
- static void attribute(ALenum, float);
- static void attribute(ALenum, float, float, float);
- static void attribute(ALenum, const float *);
- static void set_position(float, float, float);
- static void set_gain(float);
+ static Listener &instance();
+
+ void set_position(float, float, float);
+ void set_forward_direction(float, float, float);
+ void set_up_direction(float, float, float);
+ void set_velocity(float, float, float);
+ void set_gain(float);
};
} // namespace AL