MezzanineEngine 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Attributes | List of all members
Mezzanine::Audio::AudioManager Class Referenceabstract

This is the base manager class for the Audio subsystem and it's operations. More...

#include <audiomanager.h>

+ Inheritance diagram for Mezzanine::Audio::AudioManager:
+ Collaboration diagram for Mezzanine::Audio::AudioManager:

Public Types

typedef
DecoderFactoryContainer::const_iterator 
ConstDecoderFactoryIterator
 Const Iterator type for iDecoderFactory instances stored by this class.
 
typedef std::map
< Audio::Encoding,
iDecoderFactory * > 
DecoderFactoryContainer
 Basic container type for iDecoderFactory storage by this class.
 
typedef
DecoderFactoryContainer::iterator 
DecoderFactoryIterator
 Iterator type for iDecoderFactory instances stored by this class.
 
- Public Types inherited from Mezzanine::ManagerBase
enum  ManagerType {
  MT_AudioManager = 1, MT_AnimationManager, MT_CollisionShapeManager, MT_CompositorManager,
  MT_GraphicsManager, MT_EventManager, MT_InputManager, MT_LogManager,
  MT_MaterialManager, MT_MeshManager, MT_NetworkManager, MT_ResourceManager,
  MT_ScriptingManager, MT_UIManager, MT_ActorManager = 100, MT_AreaEffectManager,
  MT_CameraManager, MT_DebrisManager, MT_PagingManager, MT_PhysicsManager,
  MT_SceneManager, MT_SoundScapeManager, MT_TerrainManager, MT_VehicleManager,
  MT_UserCreated = 512
}
 
- Public Types inherited from Mezzanine::ObjectSettingsHandler
typedef
SettingFilesContainer::const_iterator 
ConstSettingFilesIterator
 Const Iterator type for ObjectSettingGroup instances stored by this class.
 
typedef
SettingGroupContainer::const_iterator 
ConstSettingGroupIterator
 Const Iterator type for ObjectSettingGroup instances stored by this class.
 
typedef std::map< String,
ObjectSettingFile * > 
SettingFilesContainer
 Basic container type for ObjectSettingFile storage by this class.
 
typedef
SettingFilesContainer::iterator 
SettingFilesIterator
 Iterator type for ObjectSettingGroup instances stored by this class.
 
typedef std::map< String,
ObjectSettingGroup * > 
SettingGroupContainer
 Basic container type for ObjectSettingGroup storage by this class.
 
typedef
SettingGroupContainer::iterator 
SettingGroupIterator
 Iterator type for ObjectSettingGroup instances stored by this class.
 
typedef std::vector
< ObjectSettingGroup * > 
SettingGroupVector
 Convenience typedef for Load method returns.
 

Public Member Functions

 AudioManager ()
 Class Constructor.
 
 AudioManager (XML::Node &XMLNode)
 XML constructor. More...
 
virtual ~AudioManager ()
 Class Destructor. More...
 
virtual void _RegisterSoundScapeManager (Audio::SoundScapeManager *Manager)=0
 Notifies this AudioManager of the creation of a new SoundScapeManager. More...
 
virtual void _UnregisterSoundScapeManager (Audio::SoundScapeManager *Manager)=0
 Notifies this AudioManager of the destruction of a SoundScapeManager. More...
 
void AddDecoderFactory (iDecoderFactory *ToBeAdded)
 Adds a iDecoderFactory to this manager allowing the playback of new types of sound formats. More...
 
virtual iSoundCreateAmbientSound ()
 Creates a blank Ambient iSound without a stream attached to it. More...
 
virtual iSoundCreateAmbientSound (Resource::DataStreamPtr Stream, const Audio::Encoding Encode)
 Creates a new Ambient iSound from a custom stream that is encoded. More...
 
virtual iSoundCreateAmbientSound (Resource::DataStreamPtr Stream, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Ambient iSound from a custom stream that is unencoded. More...
 
virtual iSoundCreateAmbientSound (const String &FileName, const String &Group)
 Creates a new Ambient iSound from a file. More...
 
virtual iSoundCreateAmbientSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const Audio::Encoding Encode)
 Creates a new Ambient iSound from a memory buffer that is encoded. More...
 
virtual iSoundCreateAmbientSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Ambient iSound from a memory buffer that is unencoded. More...
 
virtual iSoundCreateDialogSound ()
 Creates a blank Dialog iSound without a stream attached to it. More...
 
virtual iSoundCreateDialogSound (Resource::DataStreamPtr Stream, const Audio::Encoding Encode)
 Creates a new Dialog iSound from a custom stream that is encoded. More...
 
virtual iSoundCreateDialogSound (Resource::DataStreamPtr Stream, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Dialog iSound from a custom stream that is unencoded. More...
 
virtual iSoundCreateDialogSound (const String &FileName, const String &Group)
 Creates a new Dialog iSound from a file. More...
 
virtual iSoundCreateDialogSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const Audio::Encoding Encode)
 Creates a new Dialog iSound from a memory buffer that is encoded. More...
 
virtual iSoundCreateDialogSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Dialog iSound from a memory buffer that is unencoded. More...
 
virtual iSoundCreateEffectSound ()
 Creates a blank Effect iSound without a stream attached to it. More...
 
virtual iSoundCreateEffectSound (Resource::DataStreamPtr Stream, const Audio::Encoding Encode)
 Creates a new Effect iSound from a custom stream that is encoded. More...
 
virtual iSoundCreateEffectSound (Resource::DataStreamPtr Stream, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Effect iSound from a custom stream that is unencoded. More...
 
virtual iSoundCreateEffectSound (const String &FileName, const String &Group)
 Creates a new Effect iSound from a file. More...
 
virtual iSoundCreateEffectSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const Audio::Encoding Encode)
 Creates a new Effect iSound from a memory buffer that is encoded. More...
 
virtual iSoundCreateEffectSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Effect iSound from a memory buffer that is unencoded. More...
 
virtual iSoundCreateMusicSound ()
 Creates a blank Music iSound without a stream attached to it. More...
 
virtual iSoundCreateMusicSound (Resource::DataStreamPtr Stream, const Audio::Encoding Encode)
 Creates a new Music iSound from a custom stream that is encoded. More...
 
virtual iSoundCreateMusicSound (Resource::DataStreamPtr Stream, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Music iSound from a custom stream that is unencoded. More...
 
virtual iSoundCreateMusicSound (const String &FileName, const String &Group)
 Creates a new Music iSound from a file. More...
 
virtual iSoundCreateMusicSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const Audio::Encoding Encode)
 Creates a new Music iSound from a memory buffer that is encoded. More...
 
virtual iSoundCreateMusicSound (const String &StreamName, Char8 *Buffer, const UInt32 Length, const UInt32 Frequency, const Audio::BitConfig Config)
 Creates a new Music iSound from a memory buffer that is unencoded. More...
 
virtual iRecorderCreateRecorder ()=0
 Creates a new iRecorder. More...
 
virtual iSoundCreateSound (const UInt16 Type)=0
 Creates a blank iSound without a stream attached to it. More...
 
virtual iSoundCreateSound (const UInt16 Type, Resource::DataStreamPtr Stream, const Audio::Encoding Encode)=0
 Creates a new iSound from a custom stream that is encoded. More...
 
virtual iSoundCreateSound (const UInt16 Type, Resource::DataStreamPtr Stream, const UInt32 Frequency, const Audio::BitConfig Config)=0
 Creates a new iSound from a custom stream that is unencoded. More...
 
virtual iSoundCreateSound (const UInt16 Type, const String &FileName, const String &Group)=0
 Creates a new iSound from a file. More...
 
virtual iSoundCreateSound (const UInt16 Type, const String &StreamName, Char8 *Buffer, const UInt32 Length, const Audio::Encoding Encode)=0
 Creates a new iSound from a memory buffer that is encoded. More...
 
virtual iSoundCreateSound (const UInt16 Type, const String &StreamName, Char8 *Buffer, const UInt32 Length, const UInt32 Frequency, const Audio::BitConfig Config)=0
 Creates a new iSound from a memory buffer that is unencoded. More...
 
bool DecoderFactoryExists (const Audio::Encoding Format)
 Checks if a iDecoderFactory is already registered with this manager. More...
 
virtual void Deinitialize ()=0
 Removes this manager from any necessary configuration so it can be safely disposed of. More...
 
void DestroyAllDecoderFactories ()
 Destroys all registered iDecoderFactory instances.
 
virtual void DestroyAllRecorders ()=0
 Destroys all iRecorder instances being stored by this manager.
 
virtual void DestroyAllSounds ()=0
 Deletes all stored iSound instances.
 
void DestroyDecoderFactory (iDecoderFactory *ToBeDestroyed)
 Destroy a registered iDecoderFactory. More...
 
void DestroyDecoderFactory (const Encoding Format)
 Destroy a registered iDecoderFactory. More...
 
virtual void DestroyRecorder (iRecorder *ToBeDestroyed)=0
 Destroys a iRecorder instance by pointer. More...
 
virtual void DestroySound (iSound *ToBeDestroyed)=0
 Deletes a iSound. More...
 
virtual Real GetAmbientVolume () const
 Gets the currently set Ambient volume. More...
 
virtual Whole GetAvailablePlaybackDeviceCount () const =0
 Gets the number of available playback devices. More...
 
virtual String GetAvailablePlaybackDeviceName (const Whole &Index) const =0
 Gets the name of an available playback device by index. More...
 
virtual UInt32 GetAvailableRecordingDeviceCount ()=0
 Gets the number of currently available recording devices. More...
 
virtual String GetAvailableRecordingDeviceName (const UInt32 Index)=0
 Gets the name of an available recording device by index. More...
 
virtual iBufferUpdate2DWorkUnitGetBufferUpdate2DWork ()=0
 Gets the work unit responsible for updating the buffers of sounds. More...
 
virtual String GetCurrentPlaybackDeviceName () const =0
 Gets the name of the playback device currently in use. More...
 
iDecoderFactoryGetDecoderFactory (const Audio::Encoding Format)
 Gets an iDecoderFactory by it's supported Audio::Encoding. More...
 
virtual String GetDefaultPlaybackDeviceName () const =0
 Gets the name of the default playback device. More...
 
virtual String GetDefaultRecordingDeviceName ()=0
 Gets the name of the default recording device. More...
 
virtual Real GetDialogVolume () const
 Gets the currently set Dialog volume. More...
 
virtual
iEffectFilterCleanWorkUnit
GetEffectFilterCleanWork ()=0
 Gets the work unit responsible for cleaning all effects and filters. More...
 
virtual iEffectsHandlerGetEffectsHandler () const =0
 Gets the handler responsible for audio effects. More...
 
virtual Real GetEffectVolume () const
 Gets the currently set Effect volume. More...
 
virtual ManagerType GetInterfaceType () const
 This returns the type of this manager. More...
 
virtual Real GetMasterVolume () const =0
 Gets the currently set Master volume. More...
 
virtual MusicPlayerGetMusicPlayer () const =0
 Gets the music player for this audio subsystem. More...
 
virtual Real GetMusicVolume () const
 Gets the currently set Music volume. More...
 
virtual UInt32 GetNumRecorders () const =0
 Gets the number of iRecorder instances being stored by this manager. More...
 
virtual UInt32 GetNumSounds () const =0
 Gets the number of iSound instances in this manager. More...
 
virtual iRecorderGetRecorder (const UInt32 Index) const =0
 Gets a iRecorder by index. More...
 
virtual iSoundGetSound (const UInt32 Index) const =0
 Gets an iSound instance by index. More...
 
virtual Real GetTypeVolume (const UInt16 Type) const =0
 Gets the volume for all stored Sound instances of the specified type. More...
 
virtual void Initialize ()=0
 Configures this manager for use prior to entering the main loop. More...
 
virtual bool InitializePlaybackDevice (const String &DeviceName, const Integer OutputFrequency=44100)=0
 Initializes the playback device. More...
 
virtual bool IsAmbientMuted () const
 Gets whether or not Ambient Sound instances are muted. More...
 
virtual bool IsDialogMuted () const
 Gets whether or not Dialog Sound instances are muted. More...
 
virtual bool IsEffectMuted () const
 Gets whether or not Effect Sound instances are muted. More...
 
virtual bool IsMusicMuted () const
 Gets whether or not Music Sound instances are muted. More...
 
virtual bool IsMuted () const =0
 Gets whether or not the Audio subsystem is muted. More...
 
virtual bool IsTypeMuted (const UInt16 Type) const =0
 Gets whether or not Sound instances of the specified type are currently muted. More...
 
virtual void MuteAmbient (bool Enable)
 Sets whether or not to mute all Ambient Sound instances. More...
 
virtual void MuteDialog (bool Enable)
 Sets whether or not to mute all Dialog Sound instances. More...
 
virtual void MuteEffect (bool Enable)
 Sets whether or not to mute all Effect Sound instances. More...
 
virtual void MuteMusic (bool Enable)
 Sets whether or not to mute all Music Sound instances. More...
 
virtual void MuteType (const UInt16 Type, bool Enable)=0
 Sets whether or not to mute all Sound instances of a specified type. More...
 
virtual bool PlaybackDeviceNameValid (const String &DeviceName) const =0
 Checks to see if the named playback device is available. More...
 
void RemoveAllDecoderFactories ()
 Removes (but does not destroy) all registered iDecoderFactory instances.
 
void RemoveDecoderFactory (iDecoderFactory *ToBeRemoved)
 Removes (but does not destroy) an iDecoderFactory. More...
 
void RemoveDecoderFactory (const Audio::Encoding Format)
 Removes (but does not destroy) an iDecoderFactory. More...
 
virtual void SetAmbientVolume (const Real &Ambient)
 Sets the volume for all stored Ambient Sound instances. More...
 
virtual void SetDialogVolume (const Real &Dialog)
 Sets the volume for all stored Dialog Sound instances. More...
 
virtual void SetEffectVolume (const Real &Effect)
 Sets the volume for all stored Effect Sound instances. More...
 
virtual void SetMasterMute (bool Enable)=0
 Sets whether or not to mute all Audio. More...
 
virtual void SetMasterVolume (const Real &Master)=0
 Sets the volume for all stored Sound instances. More...
 
virtual void SetMusicVolume (const Real &Music)
 Sets the volume for all stored Music Sound instances. More...
 
virtual void SetTypeVolume (const UInt16 Type, const Real Vol)=0
 Sets the volume for all stored Sound instances of the specified type. More...
 
virtual void ShutdownPlaybackDevice ()=0
 Shuts down the current playback device and unloads all sounds. More...
 
- Public Member Functions inherited from Mezzanine::ManagerBase
 ManagerBase ()
 Class constructor.
 
virtual ~ManagerBase ()
 Class destructor.
 
virtual String GetImplementationTypeName () const =0
 This Allows any manager name to be sent to a stream. Primarily used for logging. More...
 
virtual String GetInterfaceTypeAsString () const
 Gets a string of the interface type of this manager. More...
 
bool IsInitialized () const
 Gets whether or not this manager has been initialized. More...
 
- Public Member Functions inherited from Mezzanine::ObjectSettingsHandler
 ObjectSettingsHandler ()
 Class constructor.
 
virtual ~ObjectSettingsHandler ()
 Class destructor.
 
void AddGroupToFile (ObjectSettingGroup *Group, const String &FileName)
 Assigns a SettingGroup to a file name that will be used when settings are saved. More...
 
void ApplySettingGroup (const String &GroupName)
 Applies all the settings (and their values) defined in a setting group. More...
 
ObjectSettingFileCreateSettingFile (const String &FileName)
 Creates a new Setting file that will track which groups are a part of it. More...
 
ObjectSettingGroupCreateSettingGroup (const String &Name)
 Creates a new blank setting group that can have it's settings populated. More...
 
void DestroyAllSettingFiles ()
 Destroys all Setting files in this handler. More...
 
void DestroyAllSettingGroups ()
 Destroys all setting groups stored in this handler.
 
void DestroySettingFile (const String &FileName)
 Destroys a Setting file by name. More...
 
void DestroySettingFile (ObjectSettingFile *ToBeDestroyed)
 Destroys a Setting file. More...
 
void DestroySettingGroup (const String &Name)
 Destroys a setting group by name. More...
 
void DestroySettingGroup (ObjectSettingGroup *ToBeDestroyed)
 Destroys a setting group. More...
 
Boolean GetAutoGenFiles () const
 Gets whether or not this object is currently allowed to create/update settings files upon initialization and destruction. More...
 
Boolean GetAutoGenPath () const
 Gets whether or not this object is currently allowed to create folders when saving. More...
 
ConstStringGetCurrentSettingsSaveFile () const
 Gets the name of the file the "Current" setting group is saved to. More...
 
ObjectSettingFileGetSettingFile (const String &FileName)
 Gets a Setting file by name. More...
 
ObjectSettingGroupGetSettingGroup (const String &Name) const
 Gets a setting group by name. More...
 
const StringGetSettingsFilePath () const
 Gets the currently set settings file path. More...
 
CountedPtr< SettingGroupVectorLoadSettings (const String &FileName, const String &Path)
 Loads settings from a settings file. More...
 
CountedPtr< SettingGroupVectorLoadSettings (const String &FileName)
 Loads settings from a settings file using the specified settings path. More...
 
CountedPtr< SettingGroupVectorLoadSettingsFromGroup (const String &FileName, const String &Group)
 Loads settings from a settings file. More...
 
CountedPtr< SettingGroupVectorLoadSettingsFromXML (XML::Node &RootSettings)
 Loads settings from an xml node. More...
 
void RemoveGroupFromFile (ObjectSettingGroup *Group, const String &FileName)
 Removes a previously assigned group from a save file name. More...
 
void SaveAllSettings ()
 Saves all settings that need saving. More...
 
void SaveSettingGroups (StringVector &GroupNames, const String &FileName, const String &Path)
 Saves all settings to a settings file. More...
 
void SaveSettingGroups (StringVector &GroupNames, const String &FileName)
 Saves all settings to a settings file using the specified settings path. More...
 
void SaveSettingsByFile (const String &FileName, const String &Path)
 Saves all settings that have their optional filename set to the specified file. More...
 
void SaveSettingsByFile (const String &FileName)
 Saves all settings that have their optional filename set to the specified file. More...
 
void SaveSettingsToXML (XML::Node &RootSettings, Boolean SaveCurrent=true)
 Saves all the current setting groups as children of the provided XML node. More...
 
void SaveSettingsToXML (StringVector &GroupNames, XML::Node &RootSettings)
 Saves the named settings groups as children of the provided XML node. More...
 
void SetAutoGenFiles (Boolean Enable)
 Enables or disables the automatic creation of settings files on initialization and destruction of this object. More...
 
void SetAutoGenPath (Boolean Enable)
 Enables or disables the automatic creation of a directory path when saving. More...
 
void SetCurrentSettingsSaveFile (const String &FileName)
 Sets the name of the file that will have this object's "current" settings saved to. More...
 
void SetSettingsFilePath (const String &Path)
 Sets the path to be assumed when saving/loading settings to files. More...
 
- Public Member Functions inherited from Mezzanine::Singleton< AudioManager >
 Singleton ()
 Class constructor.
 
 ~Singleton ()
 Class destructor.
 

Protected Attributes

DecoderFactoryContainer DecoderFactories
 Container storing all registered iDecoderFactory instances. More...
 
- Protected Attributes inherited from Mezzanine::ManagerBase
bool Initialized
 Simple bool indicating whether or not this manager has been initialized. More...
 
EntresolTheEntresol
 The actual pointer to the Entresol core class. More...
 
- Protected Attributes inherited from Mezzanine::ObjectSettingsHandler
Boolean AutoGenFiles
 Stores whether or not this handler will attempt to automatically generate a file if it doesn't exist. More...
 
Boolean AutoGenPath
 Stores whether or not this handler will attempt to automatically generate a path to a file if it doesn't exist. More...
 
String CurrentSettingsSaveFile
 Stores the name of the file where the "Current" settings group will be saved to. More...
 
SettingFilesContainer SettingFiles
 A container storing all the file saving configuration used by this handler. More...
 
SettingGroupContainer SettingGroups
 A container storing all the SettingGroups owned by this handler. More...
 
String SettingsFilePath
 Stores the path to be used for file IO operations done by this handler. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Mezzanine::ManagerBase
static String GetTypeAsString (const ManagerType &ManagerType)
 Gets the string form of the type of manager. More...
 
static ManagerType GetTypeFromString (const String &ManagerName)
 Gets the type of manager requested from a string. More...
 
- Static Public Member Functions inherited from Mezzanine::Singleton< AudioManager >
static AudioManager * GetSingletonPtr ()
 Fetches a pointer to the singleton. More...
 
static bool SingletonValid ()
 Checks to see if the singleton pointer is valid. More...
 
- Protected Member Functions inherited from Mezzanine::ObjectSettingsHandler
virtual void AppendCurrentSettings (XML::Node &CurrentNode)=0
 Takes all the current settings of this handler and serializes them to an XML::Node. More...
 
virtual void ApplySettingGroupImpl (ObjectSettingGroup *Group)=0
 Applies all the settings stored by a ObjectSettingGroup. More...
 
virtual String GetObjectRootNodeName () const =0
 Gets the name to be given to a Node with this handlers serialized data. More...
 
void LoadSettingSetFromXML (XML::Node &XMLNode, ObjectSettingSet *Set)
 Populates an ObjectSettingSet with settings stored in XML. More...
 
CountedPtr< SettingGroupVectorLoadSettingsFromFile (const String &FileName, const String &Path)
 Loads all ObjectSettingGroup instances serialized to a XML file into usable ObjectSettingGroup instances. More...
 
void SaveSettingSetToXML (XML::Node &XMLNode, ObjectSettingSet *Set)
 Saves an ObjectSettingSet to an XML node. More...
 
void SaveSettingsToFile (StringVector &GroupNames, const String &FileName, const String &Path)
 Saves a collection of ObjectSettingGroups stored by this handler to a file as XML. More...
 
- Static Protected Attributes inherited from Mezzanine::Singleton< AudioManager >
static AudioManager * SingletonPtr
 

Detailed Description

This is the base manager class for the Audio subsystem and it's operations.

This is a place for loading, storing, and running sound files as necessary in a given application.

Definition at line 114 of file audiomanager.h.

Constructor & Destructor Documentation

Mezzanine::Audio::AudioManager::AudioManager ( XML::Node XMLNode)

XML constructor.

Parameters
XMLNodeThe node of the xml document to construct from.

Definition at line 80 of file audiomanager.cpp.

Mezzanine::Audio::AudioManager::~AudioManager ( )
virtual

Class Destructor.

The class destructor.

Definition at line 84 of file audiomanager.cpp.

Member Function Documentation

virtual void Mezzanine::Audio::AudioManager::_RegisterSoundScapeManager ( Audio::SoundScapeManager Manager)
pure virtual

Notifies this AudioManager of the creation of a new SoundScapeManager.

Parameters
ManagerA pointer to the manager being registered.
virtual void Mezzanine::Audio::AudioManager::_UnregisterSoundScapeManager ( Audio::SoundScapeManager Manager)
pure virtual

Notifies this AudioManager of the destruction of a SoundScapeManager.

Parameters
ManagerA pointer to the manager being unregistered.
void Mezzanine::Audio::AudioManager::AddDecoderFactory ( iDecoderFactory ToBeAdded)

Adds a iDecoderFactory to this manager allowing the playback of new types of sound formats.

Note
If an iDecoderFactory is already registered to the same Audio::Encoding, it will be replaced. It will not be deleted. Use with care.
Parameters
ToBeAddedA pointer to the iDecoderFactory to be added.

Definition at line 201 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateAmbientSound ( )
virtual

Creates a blank Ambient iSound without a stream attached to it.

Returns
Returns a pointer to the iSound instance that was created.

Definition at line 96 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateAmbientSound ( Resource::DataStreamPtr  Stream,
const Audio::Encoding  Encode 
)
virtual

Creates a new Ambient iSound from a custom stream that is encoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 105 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateAmbientSound ( Resource::DataStreamPtr  Stream,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Ambient iSound from a custom stream that is unencoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 114 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateAmbientSound ( const String FileName,
const String Group 
)
virtual

Creates a new Ambient iSound from a file.

Parameters
FileNameThe name of the file to read audio data from.
GroupThe resource group in which the file resides.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 123 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateAmbientSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const Audio::Encoding  Encode 
)
virtual

Creates a new Ambient iSound from a memory buffer that is encoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 132 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateAmbientSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Ambient iSound from a memory buffer that is unencoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 141 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateDialogSound ( )
virtual

Creates a blank Dialog iSound without a stream attached to it.

Returns
Returns a pointer to the iSound instance that was created.

Definition at line 98 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateDialogSound ( Resource::DataStreamPtr  Stream,
const Audio::Encoding  Encode 
)
virtual

Creates a new Dialog iSound from a custom stream that is encoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 107 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateDialogSound ( Resource::DataStreamPtr  Stream,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Dialog iSound from a custom stream that is unencoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 116 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateDialogSound ( const String FileName,
const String Group 
)
virtual

Creates a new Dialog iSound from a file.

Parameters
FileNameThe name of the file to read audio data from.
GroupThe resource group in which the file resides.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 125 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateDialogSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const Audio::Encoding  Encode 
)
virtual

Creates a new Dialog iSound from a memory buffer that is encoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
SoundNameThe name of the iSound instance.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 134 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateDialogSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Dialog iSound from a memory buffer that is unencoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 143 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateEffectSound ( )
virtual

Creates a blank Effect iSound without a stream attached to it.

Returns
Returns a pointer to the iSound instance that was created.

Definition at line 100 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateEffectSound ( Resource::DataStreamPtr  Stream,
const Audio::Encoding  Encode 
)
virtual

Creates a new Effect iSound from a custom stream that is encoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 109 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateEffectSound ( Resource::DataStreamPtr  Stream,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Effect iSound from a custom stream that is unencoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 118 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateEffectSound ( const String FileName,
const String Group 
)
virtual

Creates a new Effect iSound from a file.

Parameters
FileNameThe name of the file to read audio data from.
GroupThe resource group in which the file resides.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 127 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateEffectSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const Audio::Encoding  Encode 
)
virtual

Creates a new Effect iSound from a memory buffer that is encoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 136 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateEffectSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Effect iSound from a memory buffer that is unencoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 145 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateMusicSound ( )
virtual

Creates a blank Music iSound without a stream attached to it.

Returns
Returns a pointer to the iSound instance that was created.

Definition at line 102 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateMusicSound ( Resource::DataStreamPtr  Stream,
const Audio::Encoding  Encode 
)
virtual

Creates a new Music iSound from a custom stream that is encoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 111 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateMusicSound ( Resource::DataStreamPtr  Stream,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Music iSound from a custom stream that is unencoded.

Parameters
StreamA Datastream containing the data to be streamed for this iSound.
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 120 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateMusicSound ( const String FileName,
const String Group 
)
virtual

Creates a new Music iSound from a file.

Parameters
FileNameThe name of the file to read audio data from.
GroupThe resource group in which the file resides.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 129 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateMusicSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const Audio::Encoding  Encode 
)
virtual

Creates a new Music iSound from a memory buffer that is encoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 138 of file audiomanager.cpp.

iSound * Mezzanine::Audio::AudioManager::CreateMusicSound ( const String StreamName,
Char8 Buffer,
const UInt32  Length,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
virtual

Creates a new Music iSound from a memory buffer that is unencoded.

Note
The buffer is copied and put into a memory stream. Thus safe for disposal afterward.
Parameters
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.

Definition at line 147 of file audiomanager.cpp.

virtual iRecorder* Mezzanine::Audio::AudioManager::CreateRecorder ( )
pure virtual

Creates a new iRecorder.

Returns
Returns a pointer to the created iRecorder.
virtual iSound* Mezzanine::Audio::AudioManager::CreateSound ( const UInt16  Type)
pure virtual

Creates a blank iSound without a stream attached to it.

Parameters
TypeA UInt16 that is the ID for the type of sound the created iSound is to be categorized as.
Returns
Returns a pointer to the iSound instance that was created.
virtual iSound* Mezzanine::Audio::AudioManager::CreateSound ( const UInt16  Type,
Resource::DataStreamPtr  Stream,
const Audio::Encoding  Encode 
)
pure virtual

Creates a new iSound from a custom stream that is encoded.

Parameters
TypeA UInt16 that is the ID for the type of sound the created iSound is to be categorized as.
StreamA Datastream containing the data to be streamed for this iSound.
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.
virtual iSound* Mezzanine::Audio::AudioManager::CreateSound ( const UInt16  Type,
Resource::DataStreamPtr  Stream,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
pure virtual

Creates a new iSound from a custom stream that is unencoded.

Parameters
TypeA UInt16 that is the ID for the type of sound the created iSound is to be categorized as.
StreamA Datastream containing the data to be streamed for this iSound.
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.
virtual iSound* Mezzanine::Audio::AudioManager::CreateSound ( const UInt16  Type,
const String FileName,
const String Group 
)
pure virtual

Creates a new iSound from a file.

Parameters
TypeA UInt16 that is the ID for the type of sound the created iSound is to be categorized as.
FileNameThe name of the file to read audio data from.
GroupThe resource group in which the file resides.
Returns
Returns a pointer to the iSound instance that was created.
virtual iSound* Mezzanine::Audio::AudioManager::CreateSound ( const UInt16  Type,
const String StreamName,
Char8 Buffer,
const UInt32  Length,
const Audio::Encoding  Encode 
)
pure virtual

Creates a new iSound from a memory buffer that is encoded.

Note
The created stream will take ownership of the buffer you provide. If you want it to have a separate buffer then create a copy and pass that in.
Parameters
TypeA UInt16 that is the ID for the type of sound the created iSound is to be categorized as.
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
EncodeThe encoding to be expected when decoding audio for this iSound.
Returns
Returns a pointer to the iSound instance that was created.
virtual iSound* Mezzanine::Audio::AudioManager::CreateSound ( const UInt16  Type,
const String StreamName,
Char8 Buffer,
const UInt32  Length,
const UInt32  Frequency,
const Audio::BitConfig  Config 
)
pure virtual

Creates a new iSound from a memory buffer that is unencoded.

Note
The created stream will take ownership of the buffer you provide. If you want it to have a separate buffer then create a copy and pass that in.
Parameters
TypeA UInt16 that is the ID for the type of sound the created iSound is to be categorized as.
StreamNameThe name to be given to the stream being created.
BufferA pointer to the buffer where the audio data is located.
LengthThe length of the buffer provided to this method(in bytes).
FrequencyThe frequency (or sample rate) of the audio data.
ConfigThe bit configuration of the audio data. Helps to determine sample size.
Returns
Returns a pointer to the iSound instance that was created.
bool Mezzanine::Audio::AudioManager::DecoderFactoryExists ( const Audio::Encoding  Format)

Checks if a iDecoderFactory is already registered with this manager.

Parameters
FormatThe Audio::Encoding supported by the iDecoderFactory to look for.
Returns
Returns true if a iDecoderFactory supporting that Audio::Encoding exists, false otherwise.

Definition at line 208 of file audiomanager.cpp.

virtual void Mezzanine::Audio::AudioManager::Deinitialize ( )
pure virtual

Removes this manager from any necessary configuration so it can be safely disposed of.

Implements Mezzanine::ManagerBase.

void Mezzanine::Audio::AudioManager::DestroyDecoderFactory ( iDecoderFactory ToBeDestroyed)

Destroy a registered iDecoderFactory.

Parameters
ToBeDestroyedA pointer to the iDecoderFactory to be destroyed.

Definition at line 235 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::DestroyDecoderFactory ( const Encoding  Format)

Destroy a registered iDecoderFactory.

Parameters
FormatThe Audio::Encoding supported by the iDecoderFactory to be destroyed.

Definition at line 240 of file audiomanager.cpp.

virtual void Mezzanine::Audio::AudioManager::DestroyRecorder ( iRecorder ToBeDestroyed)
pure virtual

Destroys a iRecorder instance by pointer.

Parameters
ToBeDestroyedA pointer to the iRecorder instance to be destroyed.
virtual void Mezzanine::Audio::AudioManager::DestroySound ( iSound ToBeDestroyed)
pure virtual

Deletes a iSound.

Parameters
ToBeDestroyedA pointer to the iSound you want deleted.
Real Mezzanine::Audio::AudioManager::GetAmbientVolume ( ) const
virtual

Gets the currently set Ambient volume.

Returns
Returns a Real representing the current Ambient volume.

Definition at line 158 of file audiomanager.cpp.

virtual Whole Mezzanine::Audio::AudioManager::GetAvailablePlaybackDeviceCount ( ) const
pure virtual

Gets the number of available playback devices.

This function will return the total number of available devices, including the default.

Returns
Returns the number of available devices.
virtual String Mezzanine::Audio::AudioManager::GetAvailablePlaybackDeviceName ( const Whole Index) const
pure virtual

Gets the name of an available playback device by index.

This function will retrieve the name of a device by it's index on the sound managers device list.

Parameters
IndexThe position on the device list you wish to access the name of.
Returns
Returns the name of the device.
virtual UInt32 Mezzanine::Audio::AudioManager::GetAvailableRecordingDeviceCount ( )
pure virtual

Gets the number of currently available recording devices.

Returns
Returns a UInt32 containing the number of recording devices on this system.
virtual String Mezzanine::Audio::AudioManager::GetAvailableRecordingDeviceName ( const UInt32  Index)
pure virtual

Gets the name of an available recording device by index.

Parameters
IndexThe index of the device to retrieve the name for.
Returns
Returns a String containing the available device name at the specified index.
virtual iBufferUpdate2DWorkUnit* Mezzanine::Audio::AudioManager::GetBufferUpdate2DWork ( )
pure virtual

Gets the work unit responsible for updating the buffers of sounds.

Returns
Returns a pointer to the BufferUpdate2DWorkUnit used by this manager.
virtual String Mezzanine::Audio::AudioManager::GetCurrentPlaybackDeviceName ( ) const
pure virtual

Gets the name of the playback device currently in use.

Returns
Returns a String containing the name of the device this manager was initiailzed with, or empty if one hasn't been set.
iDecoderFactory * Mezzanine::Audio::AudioManager::GetDecoderFactory ( const Audio::Encoding  Format)

Gets an iDecoderFactory by it's supported Audio::Encoding.

Parameters
FormatThe Audio::Encoding supported by the iDecoderFactory to retrieve.
Returns
Returns a pointer to the iDecoderFactory registered to the provided Audio::Encoding, or NULL if none are registered.

Definition at line 213 of file audiomanager.cpp.

virtual String Mezzanine::Audio::AudioManager::GetDefaultPlaybackDeviceName ( ) const
pure virtual

Gets the name of the default playback device.

This function will return the name of the system default device.

Returns
Returns the name of the default device.
virtual String Mezzanine::Audio::AudioManager::GetDefaultRecordingDeviceName ( )
pure virtual

Gets the name of the default recording device.

Returns
Returns a String containing the name of the default recording device on this system.
Real Mezzanine::Audio::AudioManager::GetDialogVolume ( ) const
virtual

Gets the currently set Dialog volume.

Returns
Returns a Real representing the current Dialog volume.

Definition at line 167 of file audiomanager.cpp.

virtual iEffectFilterCleanWorkUnit* Mezzanine::Audio::AudioManager::GetEffectFilterCleanWork ( )
pure virtual

Gets the work unit responsible for cleaning all effects and filters.

Returns
Returns a pointer to the BufferUpdateWorkUnit used by this manager.
virtual iEffectsHandler* Mezzanine::Audio::AudioManager::GetEffectsHandler ( ) const
pure virtual

Gets the handler responsible for audio effects.

Returns
Returns a pointer to the iEffectsHandler for this audio subsystem.
Real Mezzanine::Audio::AudioManager::GetEffectVolume ( ) const
virtual

Gets the currently set Effect volume.

Returns
Returns a Real representing the current Effect volume.

Definition at line 176 of file audiomanager.cpp.

ManagerBase::ManagerType Mezzanine::Audio::AudioManager::GetInterfaceType ( ) const
virtual

This returns the type of this manager.

This is intended to make using and casting from Manager base easier. With this is is possible to cast from ManagerBase to the correct Manager Type.

Returns
This returns a ManagerTypeName to identify what this can be safely cast to.

Implements Mezzanine::ManagerBase.

Definition at line 262 of file audiomanager.cpp.

virtual Real Mezzanine::Audio::AudioManager::GetMasterVolume ( ) const
pure virtual

Gets the currently set Master volume.

Returns
Returns a Real representing the current Master volume.
virtual MusicPlayer* Mezzanine::Audio::AudioManager::GetMusicPlayer ( ) const
pure virtual

Gets the music player for this audio subsystem.

Returns
Returns a pointer to the Music player belonging to this system, or NULL if this manager does not support one.
Real Mezzanine::Audio::AudioManager::GetMusicVolume ( ) const
virtual

Gets the currently set Music volume.

Returns
Returns a Real representing the current Music volume.

Definition at line 185 of file audiomanager.cpp.

virtual UInt32 Mezzanine::Audio::AudioManager::GetNumRecorders ( ) const
pure virtual

Gets the number of iRecorder instances being stored by this manager.

Returns
Returns a UInt32 representing the number of iRecorder instances within this manager.
virtual UInt32 Mezzanine::Audio::AudioManager::GetNumSounds ( ) const
pure virtual

Gets the number of iSound instances in this manager.

Returns
Returns a UInt32 representing the number of iSound instances contained in this manager.
virtual iRecorder* Mezzanine::Audio::AudioManager::GetRecorder ( const UInt32  Index) const
pure virtual

Gets a iRecorder by index.

Parameters
IndexThe index of the iRecorder to retrieve.
Returns
Returns a pointer to the iRecorder at the specified index.
virtual iSound* Mezzanine::Audio::AudioManager::GetSound ( const UInt32  Index) const
pure virtual

Gets an iSound instance by index.

Parameters
IndexThe index of the iSound to be retrieved.
Returns
Returns a pointer to the iSound at the specified index.
virtual Real Mezzanine::Audio::AudioManager::GetTypeVolume ( const UInt16  Type) const
pure virtual

Gets the volume for all stored Sound instances of the specified type.

Note
Although this can accept any UInt16 value, be mindful of the SoundType enum to avoid type collisions.
Exceptions
Thismethod can throw a "II_IDENTITY_NOT_FOUND_EXCEPTION" if the a handler of the specified type does not exist.
Parameters
TypeA UInt16 that is the ID for the type of Sound instances to get the volume of.
Returns
Returns a Real representing the current volume of the specified sound type.
virtual void Mezzanine::Audio::AudioManager::Initialize ( )
pure virtual

Configures this manager for use prior to entering the main loop.

Implements Mezzanine::ManagerBase.

virtual bool Mezzanine::Audio::AudioManager::InitializePlaybackDevice ( const String DeviceName,
const Integer  OutputFrequency = 44100 
)
pure virtual

Initializes the playback device.

This function will initialize the device using the parameters provided. You need to call this function if you passed false into the sound manager constructor before you can use the manager.

Parameters
DeviceNameThe name of the device you wish to have this manager interface with/use.
OutputFrequencyFrequency of the output audio, -1 for the devices default.
Returns
Returns true if the device was initialized successfully. False on a failure.
bool Mezzanine::Audio::AudioManager::IsAmbientMuted ( ) const
virtual

Gets whether or not Ambient Sound instances are muted.

Returns
Returns true if Ambient sounds are muted, false otherwise.

Definition at line 162 of file audiomanager.cpp.

bool Mezzanine::Audio::AudioManager::IsDialogMuted ( ) const
virtual

Gets whether or not Dialog Sound instances are muted.

Returns
Returns true if Dialog sounds are muted, false otherwise.

Definition at line 171 of file audiomanager.cpp.

bool Mezzanine::Audio::AudioManager::IsEffectMuted ( ) const
virtual

Gets whether or not Effect Sound instances are muted.

Returns
Returns true if Effect sounds are muted, false otherwise.

Definition at line 180 of file audiomanager.cpp.

bool Mezzanine::Audio::AudioManager::IsMusicMuted ( ) const
virtual

Gets whether or not Music Sound instances are muted.

Returns
Returns true if Music sounds are muted, false otherwise.

Definition at line 189 of file audiomanager.cpp.

virtual bool Mezzanine::Audio::AudioManager::IsMuted ( ) const
pure virtual

Gets whether or not the Audio subsystem is muted.

Returns
Returns a bool indicating whether or not the Audio subsystem is currently muted.
virtual bool Mezzanine::Audio::AudioManager::IsTypeMuted ( const UInt16  Type) const
pure virtual

Gets whether or not Sound instances of the specified type are currently muted.

Note
Although this can accept any UInt16 value, be mindful of the SoundType enum to avoid type collisions.
Exceptions
Thismethod can throw a "II_IDENTITY_NOT_FOUND_EXCEPTION" if the a handler of the specified type does not exist.
Parameters
TypeA UInt16 that is the ID for the type of Sound instances to check.
Returns
Returns true if sounds of the specifed type are muted, false otherwise.
void Mezzanine::Audio::AudioManager::MuteAmbient ( bool  Enable)
virtual

Sets whether or not to mute all Ambient Sound instances.

Parameters
EnableTrue to mute Ambient sounds, false to unmute them.

Definition at line 160 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::MuteDialog ( bool  Enable)
virtual

Sets whether or not to mute all Dialog Sound instances.

Parameters
EnableTrue to mute Dialog sounds, false to unmute them.

Definition at line 169 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::MuteEffect ( bool  Enable)
virtual

Sets whether or not to mute all Effect Sound instances.

Parameters
EnableTrue to mute Effect sounds, false to unmute them.

Definition at line 178 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::MuteMusic ( bool  Enable)
virtual

Sets whether or not to mute all Music Sound instances.

Parameters
EnableTrue to mute Music sounds, false to unmute them.

Definition at line 187 of file audiomanager.cpp.

virtual void Mezzanine::Audio::AudioManager::MuteType ( const UInt16  Type,
bool  Enable 
)
pure virtual

Sets whether or not to mute all Sound instances of a specified type.

Note
Although this can accept any UInt16 value, be mindful of the SoundType enum to avoid type collisions.
Exceptions
Thismethod can throw a "II_IDENTITY_NOT_FOUND_EXCEPTION" if the a handler of the specified type does not exist.
Parameters
TypeA UInt16 that is the ID for the type of Sound instances to mute or unmute.
EnableTrue to mute sounds of the specified type, false to unmute them.
virtual bool Mezzanine::Audio::AudioManager::PlaybackDeviceNameValid ( const String DeviceName) const
pure virtual

Checks to see if the named playback device is available.

Parameters
DeviceNameThe name of the device to check for.
Returns
Returns true if the device is available on this system, false otherwise.
void Mezzanine::Audio::AudioManager::RemoveDecoderFactory ( iDecoderFactory ToBeRemoved)

Removes (but does not destroy) an iDecoderFactory.

Parameters
ToBeRemovedA pointer to the iDecoderFactory to be removed.

Definition at line 220 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::RemoveDecoderFactory ( const Audio::Encoding  Format)

Removes (but does not destroy) an iDecoderFactory.

Parameters
FormatThe Audio::Encoding supported by the iDecoderFactory to remove.

Definition at line 225 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::SetAmbientVolume ( const Real Ambient)
virtual

Sets the volume for all stored Ambient Sound instances.

Parameters
AmbientThe volume to apply to all Ambient sounds.

Definition at line 156 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::SetDialogVolume ( const Real Dialog)
virtual

Sets the volume for all stored Dialog Sound instances.

Parameters
DialogThe volume to apply to all Dialog sounds.

Definition at line 165 of file audiomanager.cpp.

void Mezzanine::Audio::AudioManager::SetEffectVolume ( const Real Effect)
virtual

Sets the volume for all stored Effect Sound instances.

Parameters
EffectThe volume to apply to all Effect sounds.

Definition at line 174 of file audiomanager.cpp.

virtual void Mezzanine::Audio::AudioManager::SetMasterMute ( bool  Enable)
pure virtual

Sets whether or not to mute all Audio.

Parameters
EnableWhether or not all sounds should be muted.
virtual void Mezzanine::Audio::AudioManager::SetMasterVolume ( const Real Master)
pure virtual

Sets the volume for all stored Sound instances.

Parameters
MusicThe volume to apply to all sounds.
void Mezzanine::Audio::AudioManager::SetMusicVolume ( const Real Music)
virtual

Sets the volume for all stored Music Sound instances.

Parameters
MusicThe volume to apply to all Music sounds.

Definition at line 183 of file audiomanager.cpp.

virtual void Mezzanine::Audio::AudioManager::SetTypeVolume ( const UInt16  Type,
const Real  Vol 
)
pure virtual

Sets the volume for all stored Sound instances of the specified type.

Note
Although this can accept any UInt16 value, be mindful of the SoundType enum to avoid type collisions.
Exceptions
Thismethod can throw a "II_IDENTITY_NOT_FOUND_EXCEPTION" if the a handler of the specified type does not exist.
Parameters
TypeA UInt16 that is the ID for the type of Sound instances to set the volume for.
VolThe new volume to apply to all sounds of the specified type.
virtual void Mezzanine::Audio::AudioManager::ShutdownPlaybackDevice ( )
pure virtual

Shuts down the current playback device and unloads all sounds.

Warning
This will destroy all sounds and sound proxies in the system.

Member Data Documentation

DecoderFactoryContainer Mezzanine::Audio::AudioManager::DecoderFactories
protected

Container storing all registered iDecoderFactory instances.

Definition at line 126 of file audiomanager.h.


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