Drag[en]gine Game Engine
1.21
|
Sound level meter Resource. More...
#include <deSoundLevelMeter.h>
Classes | |
class | cAudibleSpeaker |
Audible speaker. More... | |
Public Types | |
enum | eMeterTypes { emtPoint , emtDirected } |
Meter type. More... | |
typedef deTObjectReference< deSoundLevelMeter > | Ref |
Type holding strong reference. More... | |
Public Types inherited from deResource | |
typedef deTObjectReference< deResource > | Ref |
Type holding strong reference. More... | |
Public Types inherited from deObject | |
typedef deTObjectReference< deObject > | Ref |
Type holding strong reference. More... | |
Public Member Functions | |
Management | |
eMeterTypes | GetType () const |
Type. More... | |
void | SetType (eMeterTypes type) |
Set type. More... | |
const decDVector & | GetPosition () const |
Position. More... | |
void | SetPosition (const decDVector &position) |
Set position. More... | |
const decQuaternion & | GetOrientation () const |
Orientation. More... | |
void | SetOrientation (const decQuaternion &orientation) |
Set orientation. More... | |
float | GetConeAngle () const |
Cone angle in radians measured from cone center to outer hull. More... | |
void | SetConeAngle (float angle) |
Set cone angle in radians measured from cone center to outer hull. More... | |
float | GetAudibleDistance () const |
Audible distance in meters. More... | |
void | SetAudibleDistance (float audibleDistance) |
Set audible distance in meters. More... | |
const decLayerMask & | GetLayerMask () const |
Layer mask. More... | |
void | SetLayerMask (const decLayerMask &layerMask) |
Set layer mask. More... | |
bool | GetEnabled () const |
Measuring is enabled. More... | |
void | SetEnabled (bool enabled) |
Set if measuring is enabled. More... | |
Measuring | |
int | GetAudibleSpeakerCount () const |
Number of audible speakers. More... | |
const cAudibleSpeaker & | GetAudibleSpeakerAt (int index) const |
Audible speaker at index. More... | |
void | NotifySpeakerAudible (const cAudibleSpeaker &speaker) |
Notify scripting module speaker became audible. More... | |
void | NotifySpeakerInaudible (deSpeaker *speaker) |
Notify scripting module speaker became inaudible. More... | |
System Peers | |
deBaseAudioSoundLevelMeter * | GetPeerAudio () const |
Audio system peer. More... | |
void | SetPeerAudio (deBaseAudioSoundLevelMeter *peer) |
Set audio system peer. More... | |
deBaseScriptingSoundLevelMeter * | GetPeerScripting () const |
Scripting system peer. More... | |
void | SetPeerScripting (deBaseScriptingSoundLevelMeter *peer) |
Set scripting system peer. More... | |
Linked List | |
deWorld * | GetParentWorld () const |
Parent world or NULL. More... | |
void | SetParentWorld (deWorld *world) |
Set parent world or NULL. More... | |
deSoundLevelMeter * | GetLLWorldPrev () const |
Previous lumimeter in the parent world linked list. More... | |
void | SetLLWorldPrev (deSoundLevelMeter *lumimeter) |
Set next lumimeter in the parent world linked list. More... | |
deSoundLevelMeter * | GetLLWorldNext () const |
Next lumimeter in the parent world linked list. More... | |
void | SetLLWorldNext (deSoundLevelMeter *lumimeter) |
Set next lumimeter in the parent world linked list. More... | |
Public Member Functions inherited from deResource | |
deResourceManager * | GetResourceManager () const |
Resource manager or NULL if resource is leaking. More... | |
deEngine * | GetEngine () const |
Game engine object from resource manager. More... | |
deResource * | GetLLManagerPrev () const |
Previous resource in the resource manager linked list. More... | |
void | SetLLManagerPrev (deResource *resource) |
Set next resource in the resource manager linked list. More... | |
deResource * | GetLLManagerNext () const |
Next resource in the resource manager linked list. More... | |
void | SetLLManagerNext (deResource *resource) |
Set next resource in the resource manager linked list. More... | |
void | MarkLeaking () |
Marks the resource leaking. More... | |
deResource (deResourceManager *resourceManager) | |
Create resource. More... | |
Public Member Functions inherited from deObject | |
int | GetRefCount () const |
Reference count. More... | |
void | AddReference () |
Add reference increasing reference count by 1. More... | |
void | FreeReference () |
Decrease reference count by one and delete object if count reaches 0. More... | |
deObject () | |
Create object with reference count of 1. More... | |
Constructors and Destructors | |
deSoundLevelMeter (deSoundLevelMeterManager *manager) | |
Create new lumimeter. More... | |
virtual | ~deSoundLevelMeter () |
Clean up lumimeter. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from deResource | |
virtual | ~deResource () |
Clean up resource. More... | |
Protected Member Functions inherited from deObject | |
virtual | ~deObject () |
Clean up object. More... | |
Sound level meter Resource.
Sound level meters are sensors to measure the sound level present in a specific spot in the game world. The meter also stores a list of all speakers contributing to the sound level. Sound level meters allow adding sound sensing capabilities to game entities.
To use a sound level meter place the resource in the game world and set the desired audible range and directivity. The audio module updates the metering results as soon as possible. This can happen the next frame or a couple of frames later depending on how the audio module operates internally.
Sound level meters are only affected by speakers and components matching the layer mask set in the meter. Furthermore meters can be enabled and disabled to stop measuring while not in use without needing to remove and add the meter from the game all the time.
Type holding strong reference.
deSoundLevelMeter::deSoundLevelMeter | ( | deSoundLevelMeterManager * | manager | ) |
Create new lumimeter.
|
protectedvirtual |
Clean up lumimeter.
|
inline |
Audible distance in meters.
const cAudibleSpeaker& deSoundLevelMeter::GetAudibleSpeakerAt | ( | int | index | ) | const |
Audible speaker at index.
int deSoundLevelMeter::GetAudibleSpeakerCount | ( | ) | const |
Number of audible speakers.
|
inline |
Cone angle in radians measured from cone center to outer hull.
|
inline |
Measuring is enabled.
|
inline |
Layer mask.
|
inline |
Next lumimeter in the parent world linked list.
|
inline |
Previous lumimeter in the parent world linked list.
|
inline |
Orientation.
|
inline |
Parent world or NULL.
|
inline |
Audio system peer.
|
inline |
Scripting system peer.
|
inline |
Position.
|
inline |
Type.
void deSoundLevelMeter::NotifySpeakerAudible | ( | const cAudibleSpeaker & | speaker | ) |
Notify scripting module speaker became audible.
void deSoundLevelMeter::NotifySpeakerInaudible | ( | deSpeaker * | speaker | ) |
Notify scripting module speaker became inaudible.
void deSoundLevelMeter::SetAudibleDistance | ( | float | audibleDistance | ) |
Set audible distance in meters.
void deSoundLevelMeter::SetConeAngle | ( | float | angle | ) |
Set cone angle in radians measured from cone center to outer hull.
void deSoundLevelMeter::SetEnabled | ( | bool | enabled | ) |
Set if measuring is enabled.
void deSoundLevelMeter::SetLayerMask | ( | const decLayerMask & | layerMask | ) |
Set layer mask.
void deSoundLevelMeter::SetLLWorldNext | ( | deSoundLevelMeter * | lumimeter | ) |
Set next lumimeter in the parent world linked list.
void deSoundLevelMeter::SetLLWorldPrev | ( | deSoundLevelMeter * | lumimeter | ) |
Set next lumimeter in the parent world linked list.
void deSoundLevelMeter::SetOrientation | ( | const decQuaternion & | orientation | ) |
Set orientation.
void deSoundLevelMeter::SetParentWorld | ( | deWorld * | world | ) |
Set parent world or NULL.
void deSoundLevelMeter::SetPeerAudio | ( | deBaseAudioSoundLevelMeter * | peer | ) |
Set audio system peer.
void deSoundLevelMeter::SetPeerScripting | ( | deBaseScriptingSoundLevelMeter * | peer | ) |
Set scripting system peer.
void deSoundLevelMeter::SetPosition | ( | const decDVector & | position | ) |
Set position.
void deSoundLevelMeter::SetType | ( | eMeterTypes | type | ) |
Set type.