OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Types | Public Member Functions | Private Member Functions | List of all members
MWBase::SoundManager Class Referenceabstract

Interface for sound manager (implemented in MWSound) More...

#include <soundmanager.hpp>

Inheritance diagram for MWBase::SoundManager:
Collaboration diagram for MWBase::SoundManager:

Public Types

enum  PlayMode {
  Play_Normal = 0, Play_Loop = 1<<0, Play_NoEnv = 1<<1, Play_RemoveAtDistance = 1<<2,
  Play_NoPlayerLocal = 1<<3, Play_LoopNoEnv = Play_Loop | Play_NoEnv, Play_LoopRemoveAtDistance = Play_Loop | Play_RemoveAtDistance
}
 
enum  PlayType {
  Play_TypeSfx = 1<<4, Play_TypeVoice = 1<<5, Play_TypeFoot = 1<<6, Play_TypeMusic = 1<<7,
  Play_TypeMovie = 1<<8, Play_TypeMask = Play_TypeSfx|Play_TypeVoice|Play_TypeFoot|Play_TypeMusic|Play_TypeMovie
}
 

Public Member Functions

 SoundManager ()
 
virtual ~SoundManager ()
 
virtual void processChangedSettings (const std::set< std::pair< std::string, std::string > > &settings)=0
 
virtual void stopMusic ()=0
 Stops music if it's playing. More...
 
virtual void streamMusic (const std::string &filename)=0
 
virtual void startRandomTitle ()=0
 Starts a random track from the current playlist. More...
 
virtual bool isMusicPlaying ()=0
 Returns true if music is playing. More...
 
virtual void playPlaylist (const std::string &playlist)=0
 
virtual void say (const MWWorld::ConstPtr &reference, const std::string &filename)=0
 
virtual void say (const std::string &filename)=0
 
virtual bool sayDone (const MWWorld::ConstPtr &reference=MWWorld::ConstPtr()) const =0
 Is actor not speaking? More...
 
virtual void stopSay (const MWWorld::ConstPtr &reference=MWWorld::ConstPtr())=0
 Stop an actor speaking. More...
 
virtual float getSaySoundLoudness (const MWWorld::ConstPtr &reference) const =0
 
virtual SoundStreamPtr playTrack (const MWSound::DecoderPtr &decoder, PlayType type)=0
 Play a 2D audio track, using a custom decoder. More...
 
virtual void stopTrack (SoundStreamPtr stream)=0
 Stop the given audio track from playing. More...
 
virtual double getTrackTimeDelay (SoundStreamPtr stream)=0
 
virtual SoundPtr playSound (const std::string &soundId, float volume, float pitch, PlayType type=Play_TypeSfx, PlayMode mode=Play_Normal, float offset=0)=0
 
virtual MWBase::SoundPtr playSound3D (const MWWorld::ConstPtr &reference, const std::string &soundId, float volume, float pitch, PlayType type=Play_TypeSfx, PlayMode mode=Play_Normal, float offset=0)=0
 
virtual MWBase::SoundPtr playSound3D (const osg::Vec3f &initialPos, const std::string &soundId, float volume, float pitch, PlayType type=Play_TypeSfx, PlayMode mode=Play_Normal, float offset=0)=0
 Play a 3D sound at initialPos. If the sound should be moving, it must be updated using Sound::setPosition. More...
 
virtual void stopSound (SoundPtr sound)=0
 Stop the given sound from playing. More...
 
virtual void stopSound3D (const MWWorld::ConstPtr &reference, const std::string &soundId)=0
 Stop the given object from playing the given sound,. More...
 
virtual void stopSound3D (const MWWorld::ConstPtr &reference)=0
 Stop the given object from playing all sounds. More...
 
virtual void stopSound (const MWWorld::CellStore *cell)=0
 Stop all sounds for the given cell. More...
 
virtual void stopSound (const std::string &soundId)=0
 Stop a non-3d looping sound. More...
 
virtual void fadeOutSound3D (const MWWorld::ConstPtr &reference, const std::string &soundId, float duration)=0
 
virtual bool getSoundPlaying (const MWWorld::ConstPtr &reference, const std::string &soundId) const =0
 
virtual void pauseSounds (int types=Play_TypeMask)=0
 Pauses all currently playing sounds, including music. More...
 
virtual void resumeSounds (int types=Play_TypeMask)=0
 Resumes all previously paused sounds. More...
 
virtual void update (float duration)=0
 
virtual void setListenerPosDir (const osg::Vec3f &pos, const osg::Vec3f &dir, const osg::Vec3f &up, bool underwater)=0
 
virtual void updatePtr (const MWWorld::ConstPtr &old, const MWWorld::ConstPtr &updated)=0
 
virtual void clear ()=0
 

Private Member Functions

 SoundManager (const SoundManager &)
 not implemented More...
 
SoundManageroperator= (const SoundManager &)
 not implemented More...
 

Detailed Description

Interface for sound manager (implemented in MWSound)

Member Enumeration Documentation

Enumerator
Play_Normal 
Play_Loop 
Play_NoEnv 
Play_RemoveAtDistance 
Play_NoPlayerLocal 
Play_LoopNoEnv 
Play_LoopRemoveAtDistance 
Enumerator
Play_TypeSfx 
Play_TypeVoice 
Play_TypeFoot 
Play_TypeMusic 
Play_TypeMovie 
Play_TypeMask 

Constructor & Destructor Documentation

MWBase::SoundManager::SoundManager ( const SoundManager )
private

not implemented

MWBase::SoundManager::SoundManager ( )
inline
virtual MWBase::SoundManager::~SoundManager ( )
inlinevirtual

Reimplemented in MWSound::SoundManager.

Member Function Documentation

virtual void MWBase::SoundManager::clear ( )
pure virtual

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::fadeOutSound3D ( const MWWorld::ConstPtr reference,
const std::string &  soundId,
float  duration 
)
pure virtual

Fade out given sound (that is already playing) of given object

Parameters
referenceReference to object, whose sound is faded out
soundIdID of the sound to fade out.
durationTime until volume reaches 0.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual float MWBase::SoundManager::getSaySoundLoudness ( const MWWorld::ConstPtr reference) const
pure virtual

Check the currently playing say sound for this actor and get an average loudness value (scale [0,1]) at the current time position. If the actor is not saying anything, returns 0.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual bool MWBase::SoundManager::getSoundPlaying ( const MWWorld::ConstPtr reference,
const std::string &  soundId 
) const
pure virtual

Is the given sound currently playing on the given object? If you want to check if sound played with playSound is playing, use empty Ptr

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual double MWBase::SoundManager::getTrackTimeDelay ( SoundStreamPtr  stream)
pure virtual

Retives the time delay, in seconds, of the audio track (must be a sound returned by playTrack). Only intended to be called by the track decoder's read method.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual bool MWBase::SoundManager::isMusicPlaying ( )
pure virtual

Returns true if music is playing.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

SoundManager& MWBase::SoundManager::operator= ( const SoundManager )
private

not implemented

virtual void MWBase::SoundManager::pauseSounds ( int  types = Play_TypeMask)
pure virtual

Pauses all currently playing sounds, including music.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::playPlaylist ( const std::string &  playlist)
pure virtual

Start playing music from the selected folder

Parameters
nameof the folder that contains the playlist

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual SoundPtr MWBase::SoundManager::playSound ( const std::string &  soundId,
float  volume,
float  pitch,
PlayType  type = Play_TypeSfx,
PlayMode  mode = Play_Normal,
float  offset = 0 
)
pure virtual

Play a sound, independently of 3D-position

Parameters
offsetNumber of seconds into the sound to start playback.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual MWBase::SoundPtr MWBase::SoundManager::playSound3D ( const MWWorld::ConstPtr reference,
const std::string &  soundId,
float  volume,
float  pitch,
PlayType  type = Play_TypeSfx,
PlayMode  mode = Play_Normal,
float  offset = 0 
)
pure virtual

Play a 3D sound attached to an MWWorld::Ptr. Will be updated automatically with the Ptr's position, unless Play_NoTrack is specified.

Parameters
offsetNumber of seconds into the sound to start playback.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual MWBase::SoundPtr MWBase::SoundManager::playSound3D ( const osg::Vec3f &  initialPos,
const std::string &  soundId,
float  volume,
float  pitch,
PlayType  type = Play_TypeSfx,
PlayMode  mode = Play_Normal,
float  offset = 0 
)
pure virtual

Play a 3D sound at initialPos. If the sound should be moving, it must be updated using Sound::setPosition.

Implemented in MWSound::SoundManager.

virtual SoundStreamPtr MWBase::SoundManager::playTrack ( const MWSound::DecoderPtr decoder,
PlayType  type 
)
pure virtual

Play a 2D audio track, using a custom decoder.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::processChangedSettings ( const std::set< std::pair< std::string, std::string > > &  settings)
pure virtual

Here is the caller graph for this function:

virtual void MWBase::SoundManager::resumeSounds ( int  types = Play_TypeMask)
pure virtual

Resumes all previously paused sounds.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::say ( const MWWorld::ConstPtr reference,
const std::string &  filename 
)
pure virtual

Make an actor say some text.

Parameters
filenamename of a sound file in "Sound/" in the data directory.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::say ( const std::string &  filename)
pure virtual

Say some text, without an actor ref

Parameters
filenamename of a sound file in "Sound/" in the data directory.

Implemented in MWSound::SoundManager.

virtual bool MWBase::SoundManager::sayDone ( const MWWorld::ConstPtr reference = MWWorld::ConstPtr()) const
pure virtual

Is actor not speaking?

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::setListenerPosDir ( const osg::Vec3f &  pos,
const osg::Vec3f &  dir,
const osg::Vec3f &  up,
bool  underwater 
)
pure virtual

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::startRandomTitle ( )
pure virtual

Starts a random track from the current playlist.

Implemented in MWSound::SoundManager.

virtual void MWBase::SoundManager::stopMusic ( )
pure virtual

Stops music if it's playing.

Implemented in MWSound::SoundManager.

virtual void MWBase::SoundManager::stopSay ( const MWWorld::ConstPtr reference = MWWorld::ConstPtr())
pure virtual

Stop an actor speaking.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::stopSound ( SoundPtr  sound)
pure virtual

Stop the given sound from playing.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::stopSound ( const MWWorld::CellStore cell)
pure virtual

Stop all sounds for the given cell.

Implemented in MWSound::SoundManager.

virtual void MWBase::SoundManager::stopSound ( const std::string &  soundId)
pure virtual

Stop a non-3d looping sound.

Implemented in MWSound::SoundManager.

virtual void MWBase::SoundManager::stopSound3D ( const MWWorld::ConstPtr reference,
const std::string &  soundId 
)
pure virtual

Stop the given object from playing the given sound,.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::stopSound3D ( const MWWorld::ConstPtr reference)
pure virtual

Stop the given object from playing all sounds.

Implemented in MWSound::SoundManager.

virtual void MWBase::SoundManager::stopTrack ( SoundStreamPtr  stream)
pure virtual

Stop the given audio track from playing.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::streamMusic ( const std::string &  filename)
pure virtual

Play a soundifle

Parameters
filenamename of a sound file in "Music/" in the data directory.

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:

virtual void MWBase::SoundManager::update ( float  duration)
pure virtual

Implemented in MWSound::SoundManager.

virtual void MWBase::SoundManager::updatePtr ( const MWWorld::ConstPtr old,
const MWWorld::ConstPtr updated 
)
pure virtual

Implemented in MWSound::SoundManager.

Here is the caller graph for this function:


The documentation for this class was generated from the following file: