#include <listener.h>
Inheritance diagram for NLSOUND::IListener:
For arguments as 3D vectors, use the NeL vector coordinate system:
* (top) * z * | y (front) * | / * -----x (right) *
The listener is a singleton.
Nevrax France
Definition at line 61 of file listener.h.
Public Member Functions | |
virtual | ~IListener () |
Destructor. | |
Listener properties | |
virtual float | getGain () const=0 |
Get the gain. | |
virtual void | getOrientation (NLMISC::CVector &front, NLMISC::CVector &up) const=0 |
Get the orientation vectors. | |
virtual const NLMISC::CVector & | getPos () const=0 |
virtual void | getVelocity (NLMISC::CVector &vel) const=0 |
Get the velocity vector. | |
virtual void | setGain (float gain)=0 |
virtual void | setOrientation (const NLMISC::CVector &front, const NLMISC::CVector &up)=0 |
Set the orientation vectors (3D mode only, ignored in stereo mode) (default: (0,1,0), (0,0,-1)). | |
virtual void | setPos (const NLMISC::CVector &pos)=0 |
Set the position vector (default: (0,0,0)) (3D mode only). | |
virtual void | setVelocity (const NLMISC::CVector &vel)=0 |
Set the velocity vector (3D mode only, ignored in stereo mode) (default: (0,0,0)). | |
Global properties | |
virtual void | setDopplerFactor (float f)=0 |
Set the doppler factor (default: 1) to exaggerate or not the doppler effect. | |
virtual void | setEAXProperty (uint prop, void *value, uint valuesize)=0 |
Set any EAX listener property if EAX available. | |
virtual void | setEnvironment (uint env, float size=7.5f)=0 |
Set DSPROPERTY_EAXLISTENER_ENVIRONMENT and DSPROPERTY_EAXLISTENER_ENVIRONMENTSIZE if EAX available (see EAX listener properties). | |
virtual void | setRolloffFactor (float f)=0 |
Set the rolloff factor (default: 1) to scale the distance attenuation effect. | |
Protected Member Functions | |
IListener () | |
Constructor. |
|
Destructor.
Definition at line 106 of file listener.h.
00106 {} |
|
Constructor.
Definition at line 111 of file listener.h.
00111 {} |
|
Get the gain.
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::getGain(). |
|
Get the orientation vectors.
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::getOrientation(). |
|
Get the position vector. See setPos() for details. Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::getPos(). |
|
Get the velocity vector.
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::getVelocity(). |
|
Set the doppler factor (default: 1) to exaggerate or not the doppler effect.
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. |
|
Set any EAX listener property if EAX available.
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. |
|
Set DSPROPERTY_EAXLISTENER_ENVIRONMENT and DSPROPERTY_EAXLISTENER_ENVIRONMENTSIZE if EAX available (see EAX listener properties).
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CClusteredSound::update(), and NLSOUND::CBackgroundSoundManager::updateBackgroundStatus(). |
|
Set the gain (volume value inside [0 , 1]). (default: 1) 0.0 -> silence 0.5 -> -6dB 1.0 -> no attenuation values > 1 (amplification) not supported by most drivers Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::setGain(). |
|
Set the orientation vectors (3D mode only, ignored in stereo mode) (default: (0,1,0), (0,0,-1)).
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::setOrientation(). |
|
Set the position vector (default: (0,0,0)) (3D mode only).
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::setPos(). |
|
Set the rolloff factor (default: 1) to scale the distance attenuation effect.
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. |
|
Set the velocity vector (3D mode only, ignored in stereo mode) (default: (0,0,0)).
Implemented in NLSOUND::CListenerDSound, and NLSOUND::CListenerAL. Referenced by NLSOUND::CListenerUser::setVelocity(). |