#include <MercurySoundDriver.h>
Inheritance diagram for MercurySoundDriver:
Public Member Functions | |
MercurySoundDriver () | |
virtual | ~MercurySoundDriver () |
virtual void | Init () |
void | CreateThread () |
void | ThreadLoop () |
void | Start () |
void | AddSound (MercurySoundSourceWAV *sound) |
void | RemoveSound (MercurySoundSourceWAV *sound) |
Static Public Member Functions | |
static MercurySoundDriver & | GetInstance () |
static void * | TheadFunctCaller (void *x) |
Protected Member Functions | |
virtual void | Cleanup () |
void | ProcessPlayingSounds () |
virtual void | WriteSoundFrames () |
Protected Attributes | |
MString | m_name |
unsigned int | m_rate |
unsigned short | m_channels |
unsigned long | m_bufferSize |
unsigned long | m_writeSize |
int16_t ** | m_front |
int16_t ** | m_back |
int16_t * | m_buffer |
int16_t * | m_buffer2 |
unsigned long | m_bufferLocation |
unsigned long | m_sentFrames |
bool | m_needData |
MVector< MercurySoundSourceWAV * > | m_playingSounds |
MercuryThread | m_thread |
MercuryMutex | m_mutex |
Definition at line 8 of file MercurySoundDriver.h.
MercurySoundDriver::MercurySoundDriver | ( | ) |
Definition at line 25 of file MercurySoundDriver.cpp.
MercurySoundDriver::~MercurySoundDriver | ( | ) | [virtual] |
Definition at line 29 of file MercurySoundDriver.cpp.
void MercurySoundDriver::Init | ( | ) | [virtual] |
MercurySoundDriver & MercurySoundDriver::GetInstance | ( | ) | [static] |
Definition at line 13 of file MercurySoundDriver.cpp.
void * MercurySoundDriver::TheadFunctCaller | ( | void * | x | ) | [static] |
Definition at line 6 of file MercurySoundDriver.cpp.
void MercurySoundDriver::CreateThread | ( | ) |
Definition at line 37 of file MercurySoundDriver.cpp.
void MercurySoundDriver::ThreadLoop | ( | ) |
Definition at line 45 of file MercurySoundDriver.cpp.
void MercurySoundDriver::Start | ( | ) |
Reimplemented in MercurySoundDriverALSA.
void MercurySoundDriver::AddSound | ( | MercurySoundSourceWAV * | sound | ) |
Definition at line 97 of file MercurySoundDriver.cpp.
void MercurySoundDriver::RemoveSound | ( | MercurySoundSourceWAV * | sound | ) |
Definition at line 104 of file MercurySoundDriver.cpp.
virtual void MercurySoundDriver::Cleanup | ( | ) | [inline, protected, virtual] |
void MercurySoundDriver::ProcessPlayingSounds | ( | ) | [protected] |
Definition at line 66 of file MercurySoundDriver.cpp.
virtual void MercurySoundDriver::WriteSoundFrames | ( | ) | [inline, protected, virtual] |
MString MercurySoundDriver::m_name [protected] |
Definition at line 28 of file MercurySoundDriver.h.
unsigned int MercurySoundDriver::m_rate [protected] |
Definition at line 32 of file MercurySoundDriver.h.
unsigned short MercurySoundDriver::m_channels [protected] |
Definition at line 33 of file MercurySoundDriver.h.
unsigned long MercurySoundDriver::m_bufferSize [protected] |
Definition at line 35 of file MercurySoundDriver.h.
unsigned long MercurySoundDriver::m_writeSize [protected] |
Definition at line 36 of file MercurySoundDriver.h.
int16_t** MercurySoundDriver::m_front [protected] |
Definition at line 38 of file MercurySoundDriver.h.
int16_t ** MercurySoundDriver::m_back [protected] |
Definition at line 38 of file MercurySoundDriver.h.
int16_t* MercurySoundDriver::m_buffer [protected] |
Definition at line 39 of file MercurySoundDriver.h.
int16_t * MercurySoundDriver::m_buffer2 [protected] |
Definition at line 39 of file MercurySoundDriver.h.
unsigned long MercurySoundDriver::m_bufferLocation [protected] |
Definition at line 40 of file MercurySoundDriver.h.
unsigned long MercurySoundDriver::m_sentFrames [protected] |
Definition at line 41 of file MercurySoundDriver.h.
bool MercurySoundDriver::m_needData [protected] |
Definition at line 43 of file MercurySoundDriver.h.
MVector< MercurySoundSourceWAV* > MercurySoundDriver::m_playingSounds [protected] |
Definition at line 45 of file MercurySoundDriver.h.
MercuryThread MercurySoundDriver::m_thread [protected] |
Definition at line 46 of file MercurySoundDriver.h.
MercuryMutex MercurySoundDriver::m_mutex [protected] |
Definition at line 47 of file MercurySoundDriver.h.