GLam Collection version 0.4 -  ACCUEIL -  CLASSES -  HIERARCHIE -  MEMBRES -  EXEMPLES


Référence de la classe GLamSound

Source sonore. Plus de détails...

#include <glamsound.h>

Liste de tous les membres

Fonctions membres publiques

 GLamSound (const char *filename, bool loop=true)
 GLamSound (double frequency, double duration, bool loop=false)
 ~GLamSound ()
void setPosition (const XamPoint &pos)
void setPosition (double x, double y, double z)
XamPoint position () const
void setVelocity (const XamVector &velocity)
XamVector velocity () const
void setDirection (const XamVector &direction)
XamVector direction () const
void setPitch (double pitch)
double pitch () const
void rewind ()
void pause ()
void stop ()
void play ()
int state () const
ALuint id () const

Description détaillée

Source sonore.

La classe GLamSound permet d'ajouter des sons à la scène de rendu 3D. Chaque source sonore peut être fixe, mobile, ou attachée à un objet de la hiérarchie GLamObject.
Les sources sonores peuvent être issues de fichiers (format WAV) ou fabriquées localement (signal sinusoïdal pur).
La classe GLamSound est basée sur la librairie libre OpenAL, les programmes clients peuvent éventuellement exploiter les autres ressources de cette librairie en utilisant l'identifiant de source mis à disposition par la classe.
Le contexte audio doit être mis en place au prélable par une instance de classe GLamSoundListener.
Cette classe est disponible seulement si la bibliothèque GLam a été compilée avec l'option GLAM_OPENAL_SUPPORT.


Propriétés

position : Position spatiale de la source sonore.

velocity : Vecteur vitesse de la source sonore.

direction : Vecteur direction de la source sonore.

pitch : Coefficient multiplicateur de tonie. Une valeur égale à 2.0 monte d'un octave, une valeur de 0.5 descend d'un octave. Modifie la durée du son.


Exemple

// attributs

GLamSoundListener  listener ;                   // auditeur par défaut
GLamSound*         snd1 ;
GLamSound*         snd2 ;

// construction

snd1 = new GLamSound("data/sonarbeep.wav" ) ;   // fond sonore en boucle
snd1->setPitch( 0.2 ) ;
snd1->play() ;

snd2 = new GLamSound(440, 1 ) ;                 // ponctuel 440 Hz, 1 seconde

// lecture conditionnelle (touche clavier,... )

if ( ... ) snd2->play() ;

// destruction

delete snd1 ;
delete snd2 ;



Documentation des constructeurs et destructeur

GLamSound::GLamSound ( const char *  filename,
bool  loop = true 
)

Constructeur.
Charge un son à partir du chemin filename spécifié. Le fichier peut être au format WAV, ou de tout autre format reconnu par 'libsndfile' si la bibliothèque GLam a été compilée avec l'option GLAM_LIBSNDFILE_SUPPORT.
La bande sonore est jouée en boucle par défaut.
En cas d'échec, des messages sont injectés sur la sortie standard d'erreur.

GLamSound::GLamSound ( double  frequency,
double  duration,
bool  loop = false 
)

Constructeur.
Fabrique un son sinusoïdal pur de fréquence frequency (en Hertz) et de durée duration (en secondes).

GLamSound::~GLamSound (  ) 

Destructeur.


Documentation des fonctions membres

XamVector GLamSound::direction (  )  const [inline]

Propriété direction.

ALuint GLamSound::id (  )  const [inline]

Retourne l'identifiant OpenAL de la source sonore.

void GLamSound::pause (  ) 

Interruption de la lecture de la bande son.

double GLamSound::pitch (  )  const

Propriété pitch.

void GLamSound::play (  ) 

Démarrage de lecture de la bande son.

XamPoint GLamSound::position (  )  const [inline]

Propriété position.

void GLamSound::rewind (  ) 

Rembobinage de la bande son.

void GLamSound::setDirection ( const XamVector direction  ) 

Propriété direction.

void GLamSound::setPitch ( double  pitch  ) 

Propriété pitch.

void GLamSound::setPosition ( double  x,
double  y,
double  z 
)

Propriété position.

void GLamSound::setPosition ( const XamPoint pos  ) 

Propriété position.

void GLamSound::setVelocity ( const XamVector velocity  ) 

Propriété velocity.

int GLamSound::state (  )  const

Retourne l'état courant de source sonore Les valeurs possibles sont : AL_INITIAL | AL_PLAYING | AL_PAUSED | AL_STOPPED.

void GLamSound::stop (  ) 

Arrêt de lecture de la bande son.

XamVector GLamSound::velocity (  )  const [inline]

Propriété velocity.


Doxygen version 1.6.3 - GLam Collection - (c) 2009-2010 Alain Menu