This interface represents a playable sound object, which can reference a number of IBuffer objects to play back. More...
#include "murl_audio_i_playable.h"
Inherited by Murl::Audio::Al11::Playable, and Murl::Audio::Dummy::Playable.
Public Member Functions | |
virtual IObject * | GetObjectInterface ()=0 |
Get the mutable Audio::IObject interface. More... | |
virtual const IObject * | GetObjectInterface () const =0 |
Get the constant Audio::IObject interface. More... | |
virtual Bool | Play (const Matrix &worldTransform, Double time)=0 |
Trigger playback for a single frame. More... | |
virtual Bool | Stop ()=0 |
Stop playback. More... | |
virtual Bool | SetEndlessLoopEnabled (Bool enabled)=0 |
Enable/disable endless looping. More... | |
virtual Bool | IsEndlessLoopEnabled () const =0 |
Check if endless looping is enabled. More... | |
virtual Bool | SetSampleFormat (IEnums::SampleFormat format)=0 |
Set the desired output sample format. More... | |
virtual IEnums::SampleFormat | GetSampleFormat () const =0 |
Get the output sample format. More... | |
virtual Bool | SetMaxNumberOfStreamBuffers (UInt32 maxNumBuffers)=0 |
Set the maximum number of stream buffers used during playback. More... | |
virtual UInt32 | GetMaxNumberOfStreamBuffers () const =0 |
Get the maximum number of stream buffers used during playback. More... | |
virtual Bool | SetVolume (Real volume)=0 |
Set the playable's actual volume. More... | |
virtual Real | GetVolume () const =0 |
Get the playable's actual volume. More... | |
virtual Bool | SetReferenceDistance (Real referenceDistance)=0 |
Set the reference distance. More... | |
virtual Real | GetReferenceDistance () const =0 |
Get the reference distance. More... | |
virtual Bool | SetRolloffFactor (Real rolloffFactor)=0 |
Set the rolloff factor. More... | |
virtual Real | GetRolloffFactor () const =0 |
Get the rolloff factor. More... | |
virtual Bool | SetMaxDistance (Real maxDistance)=0 |
Set the maximum distance. More... | |
virtual Real | GetMaxDistance () const =0 |
Get the maximum distance. More... | |
virtual Bool | ClearBuffers ()=0 |
Detach all buffers from the playable object. More... | |
virtual Bool | AddBuffer (IBuffer *buffer)=0 |
Attach a buffer to the playable object's buffer sequence. More... | |
virtual UInt32 | GetNumberOfBuffers () const =0 |
Get the number of currently attached buffer objects. More... | |
virtual IBuffer * | GetBuffer (UInt32 index) const =0 |
Get the buffer attached at a given index. More... | |
virtual Double | GetBufferStartTime (UInt32 index) const =0 |
Get the actual start time of an attached buffer in the sequence. More... | |
virtual Bool | HasDataToPlay () const =0 |
Check if the playable actually has data to play back. More... | |
Detailed Description
This interface represents a playable sound object, which can reference a number of IBuffer objects to play back.
Used internally by Graph::AudioSequence.
Member Function Documentation
◆ GetObjectInterface() [1/2]
|
pure virtual |
Get the mutable Audio::IObject interface.
- Returns
- The IObject interface.
◆ GetObjectInterface() [2/2]
|
pure virtual |
Get the constant Audio::IObject interface.
- Returns
- The IObject interface.
◆ Play()
|
pure virtual |
Trigger playback for a single frame.
- Parameters
-
worldTransform The current transform of the object in 3D space. time The current playback time.
- Returns
- true if successful.
◆ Stop()
|
pure virtual |
Stop playback.
- Returns
- true if successful.
◆ SetEndlessLoopEnabled()
Enable/disable endless looping.
- Parameters
-
enabled If true, endless looping is enabled.
- Returns
- true if successful.
◆ IsEndlessLoopEnabled()
|
pure virtual |
Check if endless looping is enabled.
- Returns
- true if endless looping is enabled.
◆ SetSampleFormat()
|
pure virtual |
Set the desired output sample format.
- Parameters
-
format The sample format.
- Returns
- true if successful.
◆ GetSampleFormat()
|
pure virtual |
Get the output sample format.
- Returns
- The sample format.
◆ SetMaxNumberOfStreamBuffers()
|
pure virtual |
Set the maximum number of stream buffers used during playback.
- Parameters
-
maxNumBuffers The maximum number of stream buffers.
- Returns
- true if successful.
◆ GetMaxNumberOfStreamBuffers()
|
pure virtual |
Get the maximum number of stream buffers used during playback.
- Returns
- The maximum number of stream buffers.
◆ SetVolume()
Set the playable's actual volume.
- Parameters
-
volume The playback volume.
- Returns
- true if successful.
◆ GetVolume()
|
pure virtual |
Get the playable's actual volume.
- Returns
- The playback volume.
◆ SetReferenceDistance()
Set the reference distance.
See Graph::IListener for details.
- Parameters
-
referenceDistance The reference distance.
- Returns
- true if successful.
◆ GetReferenceDistance()
|
pure virtual |
Get the reference distance.
- Returns
- The reference distance.
◆ SetRolloffFactor()
Set the rolloff factor.
See Graph::IListener for details.
- Parameters
-
rolloffFactor The rolloff factor.
- Returns
- true if successful.
◆ GetRolloffFactor()
|
pure virtual |
Get the rolloff factor.
- Returns
- The rolloff factor.
◆ SetMaxDistance()
Set the maximum distance.
See Graph::IListener for details.
- Parameters
-
maxDistance The maximum distance.
- Returns
- true if successful.
◆ GetMaxDistance()
|
pure virtual |
Get the maximum distance.
- Returns
- The maximum distance.
◆ ClearBuffers()
|
pure virtual |
Detach all buffers from the playable object.
- Returns
- true if successful.
◆ AddBuffer()
Attach a buffer to the playable object's buffer sequence.
- Parameters
-
buffer The buffer to add.
- Returns
- true if successful.
◆ GetNumberOfBuffers()
|
pure virtual |
Get the number of currently attached buffer objects.
- Returns
- The number of buffers.
◆ GetBuffer()
Get the buffer attached at a given index.
- Parameters
-
index The index, from 0 to GetNumberOfBuffers()-1.
- Returns
- The buffer, or null if the index is out of range.
◆ GetBufferStartTime()
Get the actual start time of an attached buffer in the sequence.
- Parameters
-
index The index, from 0 to GetNumberOfBuffers()-1.
- Returns
- The start time, or 0.0 if the index is out of range.
◆ HasDataToPlay()
|
pure virtual |
Check if the playable actually has data to play back.
- Returns
- true if playback data is present.
The documentation for this interface was generated from the following file:
- murl_audio_i_playable.h