VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
makVrv::DtSharedAudioSettings Class Reference

This class maintains the audio settings. More...

Inheritance diagram for makVrv::DtSharedAudioSettings:
Inheritance graph
[legend]

Public Member Functions

virtual ~DtSharedAudioSettings ()
 DTOR.
Controls for the sound settings.
virtual void setAudioPlaybackDevice (const std::string &val)
 Set the device that audio should be played back on.
virtual std::string audioPlaybackDevice () const
 get the name of the device that the audio should be played back on
virtual void setAudioCaptureDevice (const std::string &val)
 Set the device that audio should be captured from.
virtual std::string audioCaptureDevice () const
 get the name of the device that the audio should be captured from
virtual void setShowCaptureDeviceSettings (bool val)
 Set whether or not the capture device selection dialog is present in the audio settings dialog.
virtual bool showCaptureDeviceSettings () const
 Get whether or not the capture device selection dialog is present in the audio settings dialog.
virtual void setAudioEnabled (bool val)
 Set the master audio enabled state.
virtual bool audioEnabled () const
 Get the master audio enabled state.
virtual void setVolume (double val)
 Set the master audio volume.
virtual double volume () const
 Get the master audio volume.
virtual void setSpeedOfSound (double val)
 Set the speed of sound (in meters/second).
virtual double speedOfSound () const
 Get the speed of sound (in meters/second).
virtual void setMaxVoices (int val)
 Set the maximum number of simultaneous playing sounds.
virtual int maxVoices () const
 Get the number of maximum voices.
virtual void setMaximumOutputDecibelCapability (double val)
 Set the maximum loudness that the sound hardware that this application is playing on is capable of producing.
virtual double maximumOutputDecibelCapabilty () const
 Get the maximum loudness that the sound system can generate.
virtual void setEnvironmentalProcessingEnabled (bool val)
 Set the environmental processing enabled state.
virtual bool environmentalProcessingEnabled () const
 Get the environmental processing enabled state.
Controls for the sound mappings.
virtual unsigned int entityMapSize () const
 Get the number of sound mapping records for entity types.
virtual unsigned int weaponFireMapSize () const
 Get the number of sound mapping records for weapon-fire types.
virtual unsigned int detonationMapSize () const
 Get the number of sound mapping records for detonation types.
virtual const
DtEntitySoundMapRecord
entityMapAt (unsigned int index) const
 Get a reference to an entity to sound-file map record.
virtual const
DtEntitySoundMapRecord
weaponFireMapAt (unsigned int index) const
 Get a reference to a weapon-fire to sound-file map record.
virtual const
DtEntitySoundMapRecord
detonationMapAt (unsigned int index) const
 Get a reference to a detonation to sound-file map record.
virtual unsigned int entityMapIndex (const DtEntitySoundMapRecord &record) const
 Get the index of a sound-file map record for an entity.
virtual unsigned int weaponFireMapIndex (const DtFireSoundMapRecord &record) const
 Get the index of a sound-file map record for a weapon-fire.
virtual unsigned int detonationMapIndex (const DtDetonationSoundMapRecord &record) const
 Get the index of a sound-file map record for a detonation.
virtual void entityMapAdd (const DtEntitySoundMapRecord &record, bool reload=true)
 Add a new entity to sound-file map record.
virtual void entityMapRemove (const DtEntitySoundMapRecord &record, bool reload=true)
 Remove an entity to sound-file map record.
virtual void weaponFireMapAdd (const DtFireSoundMapRecord &record, bool reload=false)
 Add a new weapon-fire to sound-file map record.
virtual void weaponFireMapRemove (const DtEntitySoundMapRecord &record, bool reload=false)
 Remove a weapon-fire to sound-file map record.
virtual void detonationMapAdd (const DtDetonationSoundMapRecord &record, bool reload=false)
 Add a new detonation to sound-file map record.
virtual void detonationMapRemove (const DtEntitySoundMapRecord &record, bool reload=false)
 Remove a detonation to sound-file map record.
Settings record / backup methods
virtual void setFromRecord (const DtAudioSettingsRecord &rec)
 Set or reset a complete audio settings and mappings state from a new audio settings record.
virtual void getRecord (DtAudioSettingsRecord &rec) const
 Get a copy of the current audio settings and mappings state.
virtual const
DtAudioSettingsBackup
settingsBackup () const
 Accessor for the settings backup (const).
virtual DtAudioSettingsBackupsettingsBackup ()
 Accessor for the settings backup.
virtual void backup ()
 Called to back up the settings.
- Public Member Functions inherited from makVrv::DtSharedSettings
 DtSharedSettings (const DtSharedSettingsManager &manager)
 CTOR.
virtual ~DtSharedSettings ()
 DTOR.
boost::shared_mutex & mutex ()
 Get the mutex for the settings object.
SafetyKey safeToEmitSignals ()
 Create a safety key for the function, see above example.
void setCurrentWriteLock (boost::unique_lock< boost::shared_mutex > *currentWriteLock)
 No need to call, set by the DtWriteSettingLock object.
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 Do nothing constructor.
virtual ~DtVirtualBaseClass ()
 Virtual do nothing destructor.

Static Public Member Functions

static std::string className ()
 The class name for this settings object.

Protected Member Functions

 DtSharedAudioSettings (DtSharedSettingsManager &manager)
 Protected CTOR (Use DtReadSettingsLock and DtWriteSettingsLock).

Protected Attributes

int myControllerId
 The audio controller ID.
DtAudioSettingsRecord myRecord
 The current audio settings and sound-file mappings.
DtAudioSettingsBackupmySettingsBackup
 The settings backup object.

Friends

class DtReadSettingsLock< DtSharedAudioSettings >
 Use the DtReadSettingsLock to read the object.
class DtWriteSettingsLock< DtSharedAudioSettings >
 Use the DtWriteSettingsLock to write to the object.

Detailed Description

This class maintains the audio settings.

Constructor & Destructor Documentation

virtual makVrv::DtSharedAudioSettings::~DtSharedAudioSettings ( )
virtual

DTOR.

makVrv::DtSharedAudioSettings::DtSharedAudioSettings ( DtSharedSettingsManager manager)
protected

Protected CTOR (Use DtReadSettingsLock and DtWriteSettingsLock).

Member Function Documentation

virtual void makVrv::DtSharedAudioSettings::setAudioPlaybackDevice ( const std::string &  val)
virtual

Set the device that audio should be played back on.

Parameters
[in]deviceNameis the name of the device that should be used for audio playback
virtual std::string makVrv::DtSharedAudioSettings::audioPlaybackDevice ( ) const
virtual

get the name of the device that the audio should be played back on

Returns
The name of the current audio device for audio playback
virtual void makVrv::DtSharedAudioSettings::setAudioCaptureDevice ( const std::string &  val)
virtual

Set the device that audio should be captured from.

Parameters
[in]deviceNameis the name of the device that should be used for audio capture
virtual std::string makVrv::DtSharedAudioSettings::audioCaptureDevice ( ) const
virtual

get the name of the device that the audio should be captured from

Returns
The name of the current audio device for audio capture
virtual void makVrv::DtSharedAudioSettings::setShowCaptureDeviceSettings ( bool  val)
virtual

Set whether or not the capture device selection dialog is present in the audio settings dialog.

Parameters
[in]valis the new enabled state: true for on, false for off.
virtual bool makVrv::DtSharedAudioSettings::showCaptureDeviceSettings ( ) const
virtual

Get whether or not the capture device selection dialog is present in the audio settings dialog.

See Also
setShowCaptureDeviceSettings()
virtual void makVrv::DtSharedAudioSettings::setAudioEnabled ( bool  val)
virtual

Set the master audio enabled state.

When set, this switch will allow all sounds to be played. When not set, all sounds will be prevented from playing.

Parameters
[in]valis the new enabled state: true for on, false for off.
virtual bool makVrv::DtSharedAudioSettings::audioEnabled ( ) const
virtual

Get the master audio enabled state.

Return values
truefor audio is enabled.
falseotherwise.
See Also
setAudioEnabled()
virtual void makVrv::DtSharedAudioSettings::setVolume ( double  val)
virtual

Set the master audio volume.

This value controls the gain as heard from the listener's position.

Parameters
[in]valis the new volume.
virtual double makVrv::DtSharedAudioSettings::volume ( ) const
virtual

Get the master audio volume.

Returns
The master audio volume.
See Also
setVolume()
virtual void makVrv::DtSharedAudioSettings::setSpeedOfSound ( double  val)
virtual

Set the speed of sound (in meters/second).

This value controls the speed of sound which can depend on many external factors. This allows the user to choose the speed for their situation

Parameters
[in]valis the new speed of sound.
See Also
setSpeedOfSound.
virtual double makVrv::DtSharedAudioSettings::speedOfSound ( ) const
virtual

Get the speed of sound (in meters/second).

Returns
The speed of sound.
See Also
setSpeedOfSound()
virtual void makVrv::DtSharedAudioSettings::setMaxVoices ( int  val)
virtual

Set the maximum number of simultaneous playing sounds.

Parameters
[in]valis the new number of active voices.
virtual int makVrv::DtSharedAudioSettings::maxVoices ( ) const
virtual

Get the number of maximum voices.

Returns
the number of maximum voices
See Also
setMaxVoices()
virtual void makVrv::DtSharedAudioSettings::setMaximumOutputDecibelCapability ( double  val)
virtual

Set the maximum loudness that the sound hardware that this application is playing on is capable of producing.

This is used to calibrate where played sounds start to falloff sounds.

Parameters
[in]valis the loudness in decibels.
virtual double makVrv::DtSharedAudioSettings::maximumOutputDecibelCapabilty ( ) const
virtual

Get the maximum loudness that the sound system can generate.

Returns
the maximum decibels that the audio hardware can generate
See Also
setmaximumOutputDecibelCapability()
virtual void makVrv::DtSharedAudioSettings::setEnvironmentalProcessingEnabled ( bool  val)
virtual

Set the environmental processing enabled state.

When set, this switch will allow all sounds to be played with environmental effects processing such as lowpass filtering based on distance, so high frequency sounds get filtered out the further a sound source is. When not set, all sounds will be played without filtering

Parameters
[in]valis the new enabled state: true for on, false for off.
virtual bool makVrv::DtSharedAudioSettings::environmentalProcessingEnabled ( ) const
virtual

Get the environmental processing enabled state.

Return values
truefor processing is enabled.
falseotherwise.
See Also
setEnvironmentalProcessingEnabled()
virtual unsigned int makVrv::DtSharedAudioSettings::entityMapSize ( ) const
virtual

Get the number of sound mapping records for entity types.

Returns
The current number of registered mappings.
virtual unsigned int makVrv::DtSharedAudioSettings::weaponFireMapSize ( ) const
virtual

Get the number of sound mapping records for weapon-fire types.

Returns
The current number of registered mappings.
virtual unsigned int makVrv::DtSharedAudioSettings::detonationMapSize ( ) const
virtual

Get the number of sound mapping records for detonation types.

Returns
The current number of registered mappings.
virtual const DtEntitySoundMapRecord& makVrv::DtSharedAudioSettings::entityMapAt ( unsigned int  index) const
virtual

Get a reference to an entity to sound-file map record.

Parameters
[in]indexis the index of the record to locate.
Returns
A reference to a sound-file map record.
Exceptions
std::out_of_rangeon bad index.
virtual const DtEntitySoundMapRecord& makVrv::DtSharedAudioSettings::weaponFireMapAt ( unsigned int  index) const
virtual

Get a reference to a weapon-fire to sound-file map record.

Parameters
[in]indexis the index of the record to locate.
Returns
A reference to a sound-file map record.
Exceptions
std::out_of_rangeon bad index.
virtual const DtEntitySoundMapRecord& makVrv::DtSharedAudioSettings::detonationMapAt ( unsigned int  index) const
virtual

Get a reference to a detonation to sound-file map record.

Parameters
[in]indexis the index of the record to locate.
Returns
A reference to a sound-file map record.
Exceptions
std::out_of_rangeon bad index.
virtual unsigned int makVrv::DtSharedAudioSettings::entityMapIndex ( const DtEntitySoundMapRecord record) const
virtual

Get the index of a sound-file map record for an entity.

Parameters
[in]recordis the record to look for in the map.
Returns
The index to the record or the size of the map if not found.
virtual unsigned int makVrv::DtSharedAudioSettings::weaponFireMapIndex ( const DtFireSoundMapRecord record) const
virtual

Get the index of a sound-file map record for a weapon-fire.

Parameters
[in]recordis the record to look for in the map.
Returns
The index to the record or the size of the map if not found.
virtual unsigned int makVrv::DtSharedAudioSettings::detonationMapIndex ( const DtDetonationSoundMapRecord record) const
virtual

Get the index of a sound-file map record for a detonation.

Parameters
[in]recordis the record to look for in the map.
Returns
The index to the record or the size of the map if not found.
virtual void makVrv::DtSharedAudioSettings::entityMapAdd ( const DtEntitySoundMapRecord record,
bool  reload = true 
)
virtual

Add a new entity to sound-file map record.

Parameters
[in]recordis the new sound-file map record to be added.
[in]reloadis a flag forcing currently playing sounds to be reloaded from the new sound-file.
Note
If a record with the given entity value already exists, the record will be updated with the new information instead of adding a new record.
virtual void makVrv::DtSharedAudioSettings::entityMapRemove ( const DtEntitySoundMapRecord record,
bool  reload = true 
)
virtual

Remove an entity to sound-file map record.

Parameters
[in]recordis the sound-file map record to be remove.
[in]reloadis a flag forcing currently playing sounds to be reloaded from their sound-file.
Note
Removing the record to a currently playing sound without forcing a reload will not stop the sound from continuing.
virtual void makVrv::DtSharedAudioSettings::weaponFireMapAdd ( const DtFireSoundMapRecord record,
bool  reload = false 
)
virtual

Add a new weapon-fire to sound-file map record.

Parameters
[in]recordis the new sound-file map record to be added.
[in]reloadis a flag forcing currently playing sounds to be reloaded from the new sound-file.
Note
If a record with the given entity value already exists, the record will be updated with the new information instead of adding a new record.
virtual void makVrv::DtSharedAudioSettings::weaponFireMapRemove ( const DtEntitySoundMapRecord record,
bool  reload = false 
)
virtual

Remove a weapon-fire to sound-file map record.

Parameters
[in]recordis the sound-file map record to be remove.
[in]reloadis a flag forcing currently playing sounds to be reloaded from their sound-file.
Note
Removing the record to a currently playing sound without forcing a reload will not stop the sound from continuing.
virtual void makVrv::DtSharedAudioSettings::detonationMapAdd ( const DtDetonationSoundMapRecord record,
bool  reload = false 
)
virtual

Add a new detonation to sound-file map record.

Parameters
[in]recordis the new sound-file map record to be added.
[in]reloadis a flag forcing currently playing sounds to be reloaded from the new sound-file.
Note
If a record with the given entity value and detonation result already exists, the record will be updated with the new information instead of adding a new record.
virtual void makVrv::DtSharedAudioSettings::detonationMapRemove ( const DtEntitySoundMapRecord record,
bool  reload = false 
)
virtual

Remove a detonation to sound-file map record.

Parameters
[in]recordis the sound-file map record to be remove.
[in]reloadis a flag forcing currently playing sounds to be reloaded from their sound-file.
Note
Removing the record to a currently playing sound without forcing a reload will not stop the sound from continuing.
virtual void makVrv::DtSharedAudioSettings::setFromRecord ( const DtAudioSettingsRecord rec)
virtual

Set or reset a complete audio settings and mappings state from a new audio settings record.

Parameters
[in]recis the audio settings record to copy from.
virtual void makVrv::DtSharedAudioSettings::getRecord ( DtAudioSettingsRecord rec) const
virtual

Get a copy of the current audio settings and mappings state.

Parameters
[out]recis the audio settings record to copy to.
virtual const DtAudioSettingsBackup* makVrv::DtSharedAudioSettings::settingsBackup ( ) const
virtual

Accessor for the settings backup (const).

Returns
A pointer to the settings backup object.

Reimplemented from makVrv::DtSharedSettings.

virtual DtAudioSettingsBackup* makVrv::DtSharedAudioSettings::settingsBackup ( )
virtual

Accessor for the settings backup.

Returns
A pointer to the settings backup object.

Reimplemented from makVrv::DtSharedSettings.

virtual void makVrv::DtSharedAudioSettings::backup ( )
virtual

Called to back up the settings.

Reimplemented from makVrv::DtSharedSettings.

static std::string makVrv::DtSharedAudioSettings::className ( )
static

The class name for this settings object.

Friends And Related Function Documentation

friend class DtReadSettingsLock< DtSharedAudioSettings >
friend

Use the DtReadSettingsLock to read the object.

Use the DtWriteSettingsLock to write to the object.

Member Data Documentation

int makVrv::DtSharedAudioSettings::myControllerId
protected

The audio controller ID.

DtAudioSettingsRecord makVrv::DtSharedAudioSettings::myRecord
protected

The current audio settings and sound-file mappings.

DtAudioSettingsBackup* makVrv::DtSharedAudioSettings::mySettingsBackup
protected

The settings backup object.


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

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)