4 #include <OpenAL/alc.h>
5#elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__linux__) || defined(_WIN32) || defined(__HAIKU__)
Interface to audio module.
Vector3 listenerOrientationAt
const Vector3 & getListenerVelocity() const
void setListenerOrientationAt(const Vector3 &listenerOrientationAt)
Set listener orientation at.
const Vector3 & getListenerPosition() const
static Audio * getInstance()
void addEntity(AudioEntity *entity)
Adds a audio entity.
Vector3 listenerOrientationUp
map< string, AudioEntity * > audioEntities
static constexpr int32_t ALSOURCEID_NONE
void shutdown()
Shuts the audio down.
const Vector3 & getListenerOrientationAt() const
void setListenerVelocity(const Vector3 &listenerVelocity)
Set listener velocity.
void setListenerOrientationUp(const Vector3 &listenerOrientationUp)
Set listener orientation up.
void removeEntity(const string &id)
Removes an audio entity.
static constexpr int32_t ALBUFFERID_NONE
void update()
Update and transfer audio entity states to open AL.
static STATIC_DLL_IMPEXT Audio * instance
AudioEntity * getEntity(const string &id)
Returns an audio entity identified by given id.
void reset()
Clears all audio entities.
const Vector3 & getListenerOrientationUp() const
AudioBufferManager audioBufferManager
Audio()
Private constructor.
void setListenerPosition(const Vector3 &listenerPosition)
Set listener position.
Sound audio entity implementation.
#define STATIC_DLL_IMPEXT