Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

RageSoundManager Class Reference

#include <RageSoundManager.h>

Collaboration diagram for RageSoundManager:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 RageSoundManager ()
 ~RageSoundManager ()
void Shutdown ()
void Init (CString drivers)
float GetMixVolume () const
void SetPrefs (float MixVol)
void Update (float delta)
void StartMixing (RageSoundBase *snd)
void StopMixing (RageSoundBase *snd)
int64_t GetPosition (const RageSoundBase *snd) const
void RegisterSound (RageSound *p)
void UnregisterSound (RageSound *p)
int GetUniqueID ()
void CommitPlayingPosition (int ID, int64_t frameno, int pos, int got_bytes)
float GetPlayLatency () const
int GetDriverSampleRate (int rate) const
void DeleteSound (RageSound *p)
void DeleteSoundWhenFinished (RageSound *pSound)
void PlayOnce (CString sPath)
RageSoundPlaySound (RageSound &snd, const RageSoundParams *params=NULL)
RageSoundPlayCopyOfSound (RageSound &snd, const RageSoundParams *params=NULL)

Static Public Member Functions

void AttenuateBuf (int16_t *buf, int samples, float vol)

Private Member Functions

void FlushPosMapQueue ()
RageSoundGetSoundByID (int ID)

Private Attributes

set< RageSound * > owned_sounds
map< int, RageSound * > all_sounds
RageSoundDriverdriver
float MixVolume
CircBuf< queued_pos_map_tpos_map_queue

Constructor & Destructor Documentation

RageSoundManager::RageSoundManager  ) 
 

RageSoundManager::~RageSoundManager  ) 
 


Member Function Documentation

void RageSoundManager::AttenuateBuf int16_t *  buf,
int  samples,
float  vol
[static]
 

void RageSoundManager::CommitPlayingPosition int  ID,
int64_t  frameno,
int  pos,
int  got_bytes
 

void RageSoundManager::DeleteSound RageSound p  ) 
 

void RageSoundManager::DeleteSoundWhenFinished RageSound pSound  ) 
 

void RageSoundManager::FlushPosMapQueue  )  [private]
 

int RageSoundManager::GetDriverSampleRate int  rate  )  const
 

float RageSoundManager::GetMixVolume  )  const [inline]
 

float RageSoundManager::GetPlayLatency  )  const
 

int64_t RageSoundManager::GetPosition const RageSoundBase snd  )  const
 

RageSound * RageSoundManager::GetSoundByID int  ID  )  [private]
 

int RageSoundManager::GetUniqueID  ) 
 

void RageSoundManager::Init CString  drivers  ) 
 

RageSound * RageSoundManager::PlayCopyOfSound RageSound snd,
const RageSoundParams params = NULL
 

void RageSoundManager::PlayOnce CString  sPath  ) 
 

RageSound * RageSoundManager::PlaySound RageSound snd,
const RageSoundParams params = NULL
 

void RageSoundManager::RegisterSound RageSound p  ) 
 

void RageSoundManager::SetPrefs float  MixVol  ) 
 

void RageSoundManager::Shutdown  ) 
 

void RageSoundManager::StartMixing RageSoundBase snd  ) 
 

void RageSoundManager::StopMixing RageSoundBase snd  ) 
 

void RageSoundManager::UnregisterSound RageSound p  ) 
 

void RageSoundManager::Update float  delta  ) 
 


Member Data Documentation

map<int,RageSound *> RageSoundManager::all_sounds [private]
 

RageSoundDriver* RageSoundManager::driver [private]
 

float RageSoundManager::MixVolume [private]
 

set<RageSound *> RageSoundManager::owned_sounds [private]
 

CircBuf<queued_pos_map_t> RageSoundManager::pos_map_queue [private]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 27 21:01:43 2005 for StepMania by doxygen 1.3.7