Yate
|
A sound file. More...
#include <yatecbase.h>
Public Member Functions | |
ClientSound (const char *name, const char *file, const char *device=0) | |
virtual | ~ClientSound () |
virtual void | destruct () |
bool | native () const |
bool | started () const |
const String & | device () const |
void | device (const char *dev) |
const String & | file () const |
void | file (const char *filename, bool stereo) |
void | setRepeat (unsigned int count) |
bool | stereo () const |
bool | start (bool force=true) |
void | stop () |
void | setChannel (const String &chan, bool ok) |
bool | attachSource (ClientChannel *chan) |
Static Public Member Functions | |
static bool | build (const String &id, const char *file, const char *device=0, unsigned int repeat=0, bool resetExisting=true, bool stereo=false) |
static bool | started (const String &name) |
static bool | start (const String &name, bool force=true) |
static void | stop (const String &name) |
static ClientSound * | find (const String &token, bool byName=true) |
Static Public Attributes | |
static ObjList | s_sounds |
static Mutex | s_soundsMutex |
static String | s_calltoPrefix |
Protected Member Functions | |
virtual bool | doStart () |
virtual void | doStop () |
Protected Attributes | |
bool | m_native |
String | m_file |
String | m_device |
unsigned int | m_repeat |
bool | m_started |
bool | m_stereo |
String | m_channel |
A sound file.
This class holds a sound file along with an output device used to play it
ClientSound | ( | const char * | name, |
const char * | file, | ||
const char * | device = 0 |
||
) | [inline] |
Constructor
name | The name of this object |
file | The file to play (should contain the whole path and the file name) |
device | Optional device used to play the file. Set to 0 to use the default one |
virtual ~ClientSound | ( | ) | [inline, virtual] |
Destructor. Stop playing the file
bool attachSource | ( | ClientChannel * | chan | ) |
Attach this sound to a channel
chan | The channel to attach to |
static bool build | ( | const String & | id, |
const char * | file, | ||
const char * | device = 0 , |
||
unsigned int | repeat = 0 , |
||
bool | resetExisting = true , |
||
bool | stereo = false |
||
) | [static] |
Build a client sound
id | The name of the object |
file | The file to play (should contain the whole path and the file name) |
device | Optional device used to play the file. Set to 0 to use the default one |
repeat | The number of times to play the sound, 0 to repeat until explicitely stopped |
resetExisting | True to reset the file of an already created sound |
stereo | True if the sound file contains 2 channel audio |
virtual void destruct | ( | ) | [inline, virtual] |
Get the device used to play this sound
void device | ( | const char * | dev | ) | [inline] |
Set the device used to play this sound
dev | The device used to play sound |
Get the file played by this sound
void file | ( | const char * | filename, |
bool | stereo | ||
) | [inline] |
Set the file played by this sound. The new file will not be used until the next time the sound is started
filename | The new file played by this sound |
stereo | True if the file contains 2 channel audio |
static ClientSound* find | ( | const String & | token, |
bool | byName = true |
||
) | [static] |
Find a sound object
token | The token used to match the sound |
byName | True to match the sound's name, false to match its file |
bool native | ( | ) | const [inline] |
Check if this sound is a system dependent one
void setChannel | ( | const String & | chan, |
bool | ok | ||
) |
Set/reset channel on sound start/stop
chan | The channel id |
ok | Operation: true to start, false to stop |
void setRepeat | ( | unsigned int | count | ) | [inline] |
Set the repeat counter.
count | The number of times to play the sound, 0 to repeat until explicitely stopped |
bool start | ( | bool | force = true | ) |
Start playing the file
force | True to start playing the file even if already started |
Start playing a given sound
name | The name of the sound to play |
force | True to start playing the file even if already started |
bool started | ( | ) | const [inline] |
Check if this sound is started
Check if a sound is started
name | The name of the sound to check |
bool stereo | ( | ) | const [inline] |
Check if this sound's file contains 2 channel audio
void stop | ( | ) |
Stop playing the file
Stop playing a given sound
name | The name of the sound to stop |
String s_calltoPrefix [static] |
The prefix to be added to the file when an utility channel is started or a sound is played in a regular client channel
Mutex s_soundsMutex [static] |
Mutex used to lock the sounds list operations