OSDL::Audio::AudioModule Class Reference

Root module for all audio services. More...

#include <OSDLAudio.h>

Collaboration diagram for OSDL::Audio::AudioModule:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Ceylan::Uint16 ChannelNumber
 Allows to store the number (identifier) of a mixing channel.

Public Member Functions

virtual void setMode (Ceylan::Maths::Hertz outputFrequency, SampleFormat outputSampleFormat, ChannelFormat outputChannel, ChunkSize outputBufferSize, ChannelNumber mixingChannelNumber=16)
 Tries to sets up an audio mode with the specified output sampling frequency, output sample format, number of sound channels in output and bytes used per output sample.
virtual Ceylan::System::Millisecond getObtainedMode (Ceylan::Maths::Hertz &actualOutputFrequency, SampleFormat &actualOutputSampleFormat, ChannelNumber &actualOutputChannelNumber)
 Returns in specified parameters the actual settings of the mixer.
virtual void unsetMode ()
 Unsets an audio mode previously set.
virtual void setPanning (Ceylan::Maths::Percentage leftPercentage)
 Activates stereo panning and sets the specified distribution between left/right output channels for the overall mixing output.
virtual void unsetPanning ()
 Deactivates stereo panning effect.
virtual void setReverseStereo (bool reverse=true)
 Activates or deactivates reverse stereo: if activated, swaps left and right channel output channels.
virtual void setDistanceAttenuation (ListenerDistance distance)
 Activates distance attenuation for the overall mixing output.
virtual void unsetDistanceAttenuation ()
 Deactivates distance attenuation effect for the overall mixing output.
virtual void setPositionAttenuation (ListenerDistance distance, ListenerAngle angle)
 Activates attenuation based on distance and angle for the overall mixing output.
virtual void unsetPositionAttenuation ()
 Deactivates position attenuation effect for the overall mixing output.
virtual bool isGUIEnabled () const
 Tells whether a GUI (Graphical User Interface) is to be supported by this audio module.
virtual void setGUIEnableStatus (bool newStatus)
 Determines whether a GUI (Graphical User Interface) should be supported by this audio module.
virtual ChannelNumber getMixingChannelCount () const
 Returns the number of input mixing channels.
virtual AudioChannelgetMixingChannelAt (ChannelNumber index) const
 Returns the specified input mixing channel.
virtual void setVolumeForAllMixingChannels (Volume newVolume)
 Sets the volume for all the input mixing channels at once.
virtual ChannelNumber getPlayingChannelCount () const
 Returns the number of channels being currently playing (including those which are paused).
virtual ChannelNumber getPausedChannelCount () const
 Returns the number of channels being currently paused (including those which were paused and halted afterwards).
virtual void pauseAllChannels ()
 Pauses all mixing channels being actively playing.
virtual void resumeAllChannels ()
 Resumes the playing on all paused mixing channels.
virtual void haltAllChannels ()
 Halts the playing on all mixing channels.
virtual ChannelNumber expireAllChannelsIn (Ceylan::System::Millisecond expireDuration)
 Makes all mixing channels stop after the specified duration is elapsed.
virtual ChannelNumber fadeOutAllChannelsDuring (Ceylan::System::Millisecond fadeOutDuration)
 Makes all mixing channels fade-out during the specified duration elapsed.
virtual MusicType getTypeOfCurrentMusic () const
 Returns the type of the music currently played (if any), otherwise returns NoMusic.
virtual bool isMusicPlaying () const
 Returns whether music is actively playing.
virtual bool isMusicPaused () const
 Returns whether music is paused.
virtual FadingStatus getMusicFadingStatus () const
 Returns whether music is fading in, out, or not at all.
virtual std::string getDriverName () const
 Returns the name of the audio driver being currently used (example: 'dsp').
virtual const std::string toString (Ceylan::VerbosityLevels level=Ceylan::high) const
 Returns an user-friendly description of the state of this object.

Static Public Member Functions

static std::string DescribeEnvironmentVariables ()
 Returns a summary about the possible use of audio-related environment variables, for the selected back-end, expressed in specified format.
static bool IsAudioInitialized ()
 Tells whether audio has already been initialized.
static std::string GetDriverName ()
 Returns the name of the audio driver being currently used (example: 'dsp').

Static Public Attributes

static const SampleFormat Uint8SampleFormat = 0x0008
 Unsigned 8-bit sample.
static const SampleFormat Sint8SampleFormat = 0x8008
 Signed 8-bit sample.
static const SampleFormat LittleUint16SampleFormat = 0x0010
 Unsigned 16-bit sample, little-endian byte order.
static const SampleFormat LittleSint16SampleFormat = 0x8010
 Signed 16-bit sample, little-endian byte order.
static const SampleFormat BigUint16SampleFormat = 0x1010
 Unsigned 16-bit sample, big-endian byte order.
static const SampleFormat BigSint16SampleFormat = 0x9010
 Signed 16-bit sample, big-endian byte order.
static const SampleFormat NativeUint16SampleFormat = 0x1010
 Unsigned 16-bit sample, native byte order (big or little).
static const SampleFormat NativeSint16SampleFormat = 0x9010
 Signed 16-bit sample, native byte order (big or little).
static const SampleFormat IMAADPCMSampleFormat = 0x0012
 IMA ADPCM (not Microsoft) sample.
static const ChannelFormat Mono = 1
 Monophonic (one channel).
static const ChannelFormat Stereo = 2
 Stereophonic (two channels).
static const Volume MinVolume = 0
 The smallest volume possible (mute).
static const Volume MaxVolume = 128
 The highest volume possible (full throttle).
static std::string AudioPathEnvironmentVariable = "AUDIO_PATH"
 The name of the environment variable that may contain directory names that should contain audio files.
static Ceylan::System::FileLocator AudioFileLocator
 Allows to keep track of audio directories.
static const Ceylan::Uint16 DriverNameMaximumLength = 50
 The maximum length for the name of the audio driver.

Protected Member Functions

virtual void onMusicPlaybackFinished ()
 This method will be automatically called as soon as the music playback stops.

Static Protected Member Functions

static ChannelNumber GetChannelCountFor (ChannelFormat format)
 Returns the number of channels corresponding to the specified channel format.
static ChunkSize GetSampleSizeFor (SampleFormat format)
 Returns the number of bytes corresponding a sample in specified sample format.

Protected Attributes

bool _mixerInitialized
 Tells whether the internal mixer is set.
ChunkSize _chunkSize
 The number of bytes of a mixing chunk.
bool _controlMusicManager
 Tells whether the audio module controls the overall music manager.
std::vector< AudioChannel * > _inputChannels
 The input mixing channels.
bool _isGuiEnabled
 Tells whether a graphical user interface is to be managed.

Static Protected Attributes

static bool _AudioInitialized = false
 Keeps tracks of audio initialization calls.

Private Member Functions

 AudioModule ()
 Private constructor to be sure it will not be implicitly called.
virtual ~AudioModule () throw ()
 Virtual destructor ensuring correct audio clean-up.
 AudioModule (const AudioModule &source)
 Copy constructor made private to ensure that it will be never called.
AudioModuleoperator= (const AudioModule &source)
 Assignment operator made private to ensure that it will be never called.

Static Private Member Functions

static void HandleMusicPlaybackFinishedCallback ()
 Callback to catch the end of the music playback.

Static Private Attributes

static const std::string SDLEnvironmentVariables [] = {}
 Array of all known environment variables related to audio, for SDL back-end.

Friends

class OSDL::CommonModule
class CommonModule
OSDL_DLL friend AudioModulegetExistingAudioModule ()
 This friend function is intended to be the usual means of getting a reference to the audio module, which must already exist.

Detailed Description

Root module for all audio services.

The audio module will manage as well the music manager.

See also:
OSDL site for more information on sound: add main/documentation/rendering/SDL-audio.html to the base URL (http://osdl.sourceforge.net).

Definition at line 93 of file OSDLAudio.h.


Member Typedef Documentation

Allows to store the number (identifier) of a mixing channel.

Definition at line 200 of file OSDLAudio.h.


Constructor & Destructor Documentation

AudioModule::AudioModule (  )  [private]

Private constructor to be sure it will not be implicitly called.

Called by the CommonModule when audio is requested.

Exceptions:
AudioException if the audio subsystem initialization failed.

Definition at line 322 of file OSDLAudio.cc.

References _AudioInitialized, _controlMusicManager, OSDL::Audio::MusicManager::_CurrentMusicManager, OSDL::CommonModule::BackendSuccess, OSDL::Utils::getBackendLastError(), HandleMusicPlaybackFinishedCallback(), and OSDL::CommonModule::UseAudio.

AudioModule::~AudioModule (  )  throw () [private, virtual]

Virtual destructor ensuring correct audio clean-up.

Definition at line 420 of file OSDLAudio.cc.

References _AudioInitialized, _controlMusicManager, OSDL::Audio::MusicManager::_CurrentMusicManager, _mixerInitialized, unsetMode(), and OSDL::CommonModule::UseAudio.

OSDL::Audio::AudioModule::AudioModule ( const AudioModule source  )  [explicit, private]

Copy constructor made private to ensure that it will be never called.

The compiler should complain whenever this undefined constructor is called, implicitly or not.


Member Function Documentation

string AudioModule::DescribeEnvironmentVariables (  )  [static]

Returns a summary about the possible use of audio-related environment variables, for the selected back-end, expressed in specified format.

Note:
The SDL back-end can be partly driven by a set of environment variables.

Definition at line 1135 of file OSDLAudio.cc.

References SDLEnvironmentVariables, and toString().

ChannelNumber AudioModule::expireAllChannelsIn ( Ceylan::System::Millisecond  expireDuration  )  [virtual]

Makes all mixing channels stop after the specified duration is elapsed.

Parameters:
expireDuration the duration, in milliseconds, until the channels are stopped.
Returns:
the number of channels set to expire, whether or not they are active.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 980 of file OSDLAudio.cc.

ChannelNumber AudioModule::fadeOutAllChannelsDuring ( Ceylan::System::Millisecond  fadeOutDuration  )  [virtual]

Makes all mixing channels fade-out during the specified duration elapsed.

Parameters:
fadeOutDuration the duration, in milliseconds, of the fade-out, which will start immediately.
Returns:
the number of channels set to fade-out, whether or not they are active.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 999 of file OSDLAudio.cc.

ChannelNumber AudioModule::GetChannelCountFor ( ChannelFormat  format  )  [static, protected]

Returns the number of channels corresponding to the specified channel format.

Parameters:
format the channel format whose number of channels is to be determined.
Returns:
the corresponding number of channels.
Exceptions:
AudioException if the operation failed.

Definition at line 1251 of file OSDLAudio.cc.

References Mono, Stereo, and OSDL::Video::Pixels::toString().

string AudioModule::GetDriverName (  )  [static]

Returns the name of the audio driver being currently used (example: 'dsp').

See also:
getDriverName.
Exceptions:
AudioException if the operation failed, including if the audio driver is not initialized or used by another application.

Definition at line 1204 of file OSDLAudio.cc.

References DriverNameMaximumLength.

Referenced by getDriverName().

std::string AudioModule::getDriverName (  )  const [virtual]

Returns the name of the audio driver being currently used (example: 'dsp').

See also:
GetDriverName
Exceptions:
AudioException if the operation failed, including if the audio driver is not initialized or used by another application.

Definition at line 1093 of file OSDLAudio.cc.

References GetDriverName().

AudioChannel & AudioModule::getMixingChannelAt ( ChannelNumber  index  )  const [virtual]

Returns the specified input mixing channel.

Parameters:
index the number of the target channel.
Exceptions:
AudioException if the operation failed, including if index is out of bounds.

Definition at line 852 of file OSDLAudio.cc.

References _inputChannels.

Referenced by OSDL::Audio::AudioChannel::HandleFinishedPlaybackCallback().

ChannelNumber AudioModule::getMixingChannelCount (  )  const [virtual]

Returns the number of input mixing channels.

Exceptions:
AudioException if the operation failed.

Definition at line 824 of file OSDLAudio.cc.

References _inputChannels.

FadingStatus AudioModule::getMusicFadingStatus (  )  const [virtual]

Returns whether music is fading in, out, or not at all.

Note:
Does not tell if the channel is playing anything, or paused, so that must be tested separately.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 1054 of file OSDLAudio.cc.

References OSDL::Audio::In, OSDL::Audio::None, and OSDL::Audio::Out.

virtual Ceylan::System::Millisecond OSDL::Audio::AudioModule::getObtainedMode ( Ceylan::Maths::Hertz &  actualOutputFrequency,
SampleFormat actualOutputSampleFormat,
ChannelNumber actualOutputChannelNumber 
) [virtual]

Returns in specified parameters the actual settings of the mixer.

Parameters:
actualOutputFrequency will be set to the output sampling frequency, in samples per second (Hz).
actualOutputSampleFormat will be set to the sample format that will be output.
actualOutputChannelNumber will be set to the number of output channels obtained, usually one, for mono, or two, for stereo (note that is not the channel format).
Returns:
the mean latency, in milliseconds, that corresponds to the actual settings and to the chunk size.
Exceptions:
AudioException if the operation failed.
ChannelNumber AudioModule::getPausedChannelCount (  )  const [virtual]

Returns the number of channels being currently paused (including those which were paused and halted afterwards).

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 908 of file OSDLAudio.cc.

ChannelNumber AudioModule::getPlayingChannelCount (  )  const [virtual]

Returns the number of channels being currently playing (including those which are paused).

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 890 of file OSDLAudio.cc.

ChunkSize AudioModule::GetSampleSizeFor ( SampleFormat  format  )  [static, protected]

Returns the number of bytes corresponding a sample in specified sample format.

Parameters:
format the sample format whose size in bytes is to be determined.
Returns:
the corresponding number of bytes.
Exceptions:
AudioException if the operation failed.

Definition at line 1277 of file OSDLAudio.cc.

References BigSint16SampleFormat, BigUint16SampleFormat, LittleSint16SampleFormat, LittleUint16SampleFormat, Sint8SampleFormat, OSDL::Video::Pixels::toString(), and Uint8SampleFormat.

MusicType AudioModule::getTypeOfCurrentMusic (  )  const [virtual]

Returns the type of the music currently played (if any), otherwise returns NoMusic.

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 798 of file OSDLAudio.cc.

References OSDL::Audio::Music::GetTypeOf().

void AudioModule::haltAllChannels (  )  [virtual]

Halts the playing on all mixing channels.

Note:
AudioChannel::onPlaybackFinished will be automatically called on halted channels.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 962 of file OSDLAudio.cc.

void AudioModule::HandleMusicPlaybackFinishedCallback (  )  [static, private]

Callback to catch the end of the music playback.

This signature is mandatory.

Definition at line 1313 of file OSDLAudio.cc.

References getExistingAudioModule, and onMusicPlaybackFinished().

Referenced by AudioModule().

bool AudioModule::IsAudioInitialized (  )  [static]

Tells whether audio has already been initialized.

Note:
This method is static so that calling it is convenient: no need to explicitly retrieve the common module, then audio module before knowing the result.

The need to retrieve the right module from scratch at each call is rather inefficient though.

Definition at line 1195 of file OSDLAudio.cc.

References _AudioInitialized.

Referenced by OSDL::Audio::Music::Music(), and OSDL::Audio::Sound::Sound().

bool AudioModule::isGUIEnabled (  )  const [virtual]

Tells whether a GUI (Graphical User Interface) is to be supported by this audio module.

Definition at line 780 of file OSDLAudio.cc.

References _isGuiEnabled.

bool AudioModule::isMusicPaused (  )  const [virtual]

Returns whether music is paused.

Note:
Does not check if the music has been halted after it was paused.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 1036 of file OSDLAudio.cc.

bool AudioModule::isMusicPlaying (  )  const [virtual]

Returns whether music is actively playing.

Note:
Does not check if the music has been paused.
Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 1018 of file OSDLAudio.cc.

void AudioModule::onMusicPlaybackFinished (  )  [protected, virtual]

This method will be automatically called as soon as the music playback stops.

This method is meant to be overriden, in order to be able to react when this event occurs (like a call-back).

Note:
Never call back-end functions (ex: SDL or SDL_mixer) from the callback.

This default implementation is do-nothing.

Exceptions:
AudioException if the operation failed.

Definition at line 1228 of file OSDLAudio.cc.

Referenced by HandleMusicPlaybackFinishedCallback().

AudioModule& OSDL::Audio::AudioModule::operator= ( const AudioModule source  )  [private]

Assignment operator made private to ensure that it will be never called.

The compiler should complain whenever this undefined operator is called, implicitly or not.

void AudioModule::pauseAllChannels (  )  [virtual]

Pauses all mixing channels being actively playing.

A paused channel can still be halted.

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 926 of file OSDLAudio.cc.

void AudioModule::resumeAllChannels (  )  [virtual]

Resumes the playing on all paused mixing channels.

Exceptions:
AudioException if the operation failed or is not supported.

Definition at line 944 of file OSDLAudio.cc.

void AudioModule::setDistanceAttenuation ( ListenerDistance  distance  )  [virtual]

Activates distance attenuation for the overall mixing output.

All input mixing channels and the music output will be therefore attenuated that same way.

Parameters:
distance corresponds to the distance between the audio sources (deemed all at the same location) and the listener. It ranges for 0 (closest possible) to 255 (far). A distance of 0 unregisters this effect (volume continuity is then ensured).
Exceptions:
AudioException if the operation failed, including if not supported.
See also:
ListenerDistance

Definition at line 697 of file OSDLAudio.cc.

void AudioModule::setGUIEnableStatus ( bool  newStatus  )  [virtual]

Determines whether a GUI (Graphical User Interface) should be supported by this audio module.

Parameters:
newStatus the new enable status of the GUI.

Definition at line 789 of file OSDLAudio.cc.

References _isGuiEnabled.

Referenced by OSDL::CommonModule::enableGUI().

virtual void OSDL::Audio::AudioModule::setMode ( Ceylan::Maths::Hertz  outputFrequency,
SampleFormat  outputSampleFormat,
ChannelFormat  outputChannel,
ChunkSize  outputBufferSize,
ChannelNumber  mixingChannelNumber = 16 
) [virtual]

Tries to sets up an audio mode with the specified output sampling frequency, output sample format, number of sound channels in output and bytes used per output sample.

Initializes the internal mixer.

The specified settings may or may not be obtained.

See also:
getObtainedMode to know the actual settings having been set.
Note:
This specifies how the overall final mixed sound will be output to the audio card. This does not imply that the mixed channels have to follow the same settings (even if it would be generally interesting to do so to avoid conversions).
Parameters:
outputFrequency the output sampling frequency, in samples per second (Hz). A common frequency is 22 050 Hz, usually a good choice for games. 44 100 Hz (i.e. 44.1 kHz, the CD audio rate) requires a lot of CPU power and bus bandwidth.
outputSampleFormat the sample format to output, i.e. the encoding of the final samples sent to the audio card (ex: 16-bit little endian unsigned samples, i.e. LittleUint16SampleFormat).
outputChannel the channel output format, i.e. the number and role of the output streams to target (ex: stereo).
outputBufferSize the size, in bytes, of the resulting mixed buffer. Divide this size by the size of a sample (corresponding to the specified sample format), and you obtain the number of samples in the output buffer. Choosing the right buffer size is a tricky trade-off: if too small, the callback for sound mixing may be called too frequently for the running platform to catch the pace, and sound may skip. If too big, latency might become noticeable: sound effects will lag behind the action more. For music output only, the buffer may be chosen quite big (say, 2048 samples at 22 050 Hz for each channel).
mixingChannelNumber the number of mixer (input) channels that must be created.
Exceptions:
AudioException if the setting of the new mode failed, including if the operation is not supported.
void AudioModule::setPanning ( Ceylan::Maths::Percentage  leftPercentage  )  [virtual]

Activates stereo panning and sets the specified distribution between left/right output channels for the overall mixing output.

All input mixing channels and the music output will be therefore panned that same way.

Note:
This effect will only work on stereo audio output. On mono audio device, nothing will be done.
Parameters:
leftPercentage,between 0 and 100 (%). Right percentage will be equal to 100 - leftPercentage.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 631 of file OSDLAudio.cc.

void AudioModule::setPositionAttenuation ( ListenerDistance  distance,
ListenerAngle  angle 
) [virtual]

Activates attenuation based on distance and angle for the overall mixing output.

All input mixing channels and the music output will be therefore attenuated that same way.

Parameters:
distance corresponds to the distance between the audio sources (deemed all at the same location) and the listener. It ranges for 0 (closest possible) to 255 (far).
angle corresponds to the angle between the audio sources (deemed all at the same location) and the listener. Larger angles will be reduced to the [0..360[ range using the 'modulo 360' (angle % 360 ) operator.
Exceptions:
AudioException if the operation failed, including if not supported.
See also:
ListenerDistance, ListenerAngle

Definition at line 738 of file OSDLAudio.cc.

void AudioModule::setReverseStereo ( bool  reverse = true  )  [virtual]

Activates or deactivates reverse stereo: if activated, swaps left and right channel output channels.

Note:
This effect will only work on stereo audio output. On mono audio device, nothing will be done.
Parameters:
reverse if true, left channel will be output into right one, and right channel into left one.
Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 676 of file OSDLAudio.cc.

void AudioModule::setVolumeForAllMixingChannels ( Volume  newVolume  )  [virtual]

Sets the volume for all the input mixing channels at once.

Parameters:
newVolume the volume to set all channels to.
Exceptions:
AudioException if the operation failed.

Definition at line 872 of file OSDLAudio.cc.

const string AudioModule::toString ( Ceylan::VerbosityLevels  level = Ceylan::high  )  const [virtual]

Returns an user-friendly description of the state of this object.

Parameters:
level the requested verbosity level.
Note:
Text output format is determined from overall settings.
See also:
Ceylan::TextDisplayable

Definition at line 1102 of file OSDLAudio.cc.

References _chunkSize, _inputChannels, and _mixerInitialized.

Referenced by DescribeEnvironmentVariables().

void AudioModule::unsetDistanceAttenuation (  )  [virtual]

Deactivates distance attenuation effect for the overall mixing output.

Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 718 of file OSDLAudio.cc.

void AudioModule::unsetMode (  )  [virtual]

Unsets an audio mode previously set.

Stops the internal mixer.

Exceptions:
AudioException of the operation failed.

Definition at line 589 of file OSDLAudio.cc.

References _chunkSize, _inputChannels, _mixerInitialized, and LOG_WARNING_AUDIO.

Referenced by ~AudioModule().

void AudioModule::unsetPanning (  )  [virtual]

Deactivates stereo panning effect.

Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 655 of file OSDLAudio.cc.

void AudioModule::unsetPositionAttenuation (  )  [virtual]

Deactivates position attenuation effect for the overall mixing output.

Exceptions:
AudioException if the operation failed, including if not supported.

Definition at line 760 of file OSDLAudio.cc.


Friends And Related Function Documentation

friend class CommonModule [friend]

Definition at line 936 of file OSDLAudio.h.

OSDL_DLL friend AudioModule& getExistingAudioModule (  )  [friend]

This friend function is intended to be the usual means of getting a reference to the audio module, which must already exist.

It is called in contexts where this module has to exist.

If not, a fatal error will be triggered (not an exception to avoid handling it in all user methods).

Note:
This function is mainly useful for the OSDL internals, for example for channel callbacks.
This method is not static to avoid pitfalls of static initializer ordering.

If not, an exception will be thrown.

Note:
This function is mainly useful for the OSDL internals, if sub-modules, such as the event module, needed access to the common module.
See also:
hasCommonModule()
Note:
This method is not static to avoid pitfalls of static initializer ordering.

Referenced by HandleMusicPlaybackFinishedCallback().

friend class OSDL::CommonModule [friend]

Definition at line 99 of file OSDLAudio.h.


Member Data Documentation

bool AudioModule::_AudioInitialized = false [static, protected]

Keeps tracks of audio initialization calls.

Note:
This is for the audio subsystem, not for the mixer.

The mixer to be set needs this audio subsystem to be on.

Definition at line 866 of file OSDLAudio.h.

Referenced by AudioModule(), IsAudioInitialized(), and ~AudioModule().

The number of bytes of a mixing chunk.

Definition at line 772 of file OSDLAudio.h.

Referenced by toString(), and unsetMode().

Tells whether the audio module controls the overall music manager.

Definition at line 780 of file OSDLAudio.h.

Referenced by AudioModule(), and ~AudioModule().

The input mixing channels.

Definition at line 795 of file OSDLAudio.h.

Referenced by getMixingChannelAt(), getMixingChannelCount(), toString(), and unsetMode().

Tells whether a graphical user interface is to be managed.

Definition at line 804 of file OSDLAudio.h.

Referenced by isGUIEnabled(), and setGUIEnableStatus().

Tells whether the internal mixer is set.

Definition at line 768 of file OSDLAudio.h.

Referenced by toString(), unsetMode(), and ~AudioModule().

Ceylan::System::FileLocator OSDL::Audio::AudioModule::AudioFileLocator [static]

Allows to keep track of audio directories.

Automatically gathers the list of directories specified as the value of the environment variable named as specified in AudioPathEnvironmentVariable (AUDIO_PATH).

Definition at line 710 of file OSDLAudio.h.

Referenced by OSDL::Audio::Audible::FindAudiblePath().

The name of the environment variable that may contain directory names that should contain audio files.

Definition at line 697 of file OSDLAudio.h.

Referenced by OSDL::Audio::Audible::FindAudiblePath().

Signed 16-bit sample, big-endian byte order.

Definition at line 157 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), and OSDL::Audio::sampleFormatToString().

Unsigned 16-bit sample, big-endian byte order.

Definition at line 153 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), and OSDL::Audio::sampleFormatToString().

const Ceylan::Uint16 AudioModule::DriverNameMaximumLength = 50 [static]

The maximum length for the name of the audio driver.

Definition at line 758 of file OSDLAudio.h.

Referenced by GetDriverName().

IMA ADPCM (not Microsoft) sample.

Definition at line 171 of file OSDLAudio.h.

Referenced by OSDL::Audio::Sound::load(), and OSDL::Audio::sampleFormatToString().

Signed 16-bit sample, little-endian byte order.

Definition at line 148 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), OSDL::Audio::Sound::load(), and OSDL::Audio::sampleFormatToString().

Unsigned 16-bit sample, little-endian byte order.

Definition at line 144 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), and OSDL::Audio::sampleFormatToString().

const Volume AudioModule::MaxVolume = 128 [static]

The highest volume possible (full throttle).

Definition at line 195 of file OSDLAudio.h.

Referenced by OSDL::Audio::Sound::toString(), and OSDL::Audio::Music::toString().

const Volume AudioModule::MinVolume = 0 [static]

The smallest volume possible (mute).

Definition at line 191 of file OSDLAudio.h.

Referenced by OSDL::Audio::Sound::toString(), and OSDL::Audio::Music::toString().

const ChannelFormat AudioModule::Mono = 1 [static]

Monophonic (one channel).

Definition at line 182 of file OSDLAudio.h.

Referenced by OSDL::Audio::channelFormatToString(), GetChannelCountFor(), and OSDL::Audio::Sound::load().

Signed 16-bit sample, native byte order (big or little).

Definition at line 166 of file OSDLAudio.h.

Unsigned 16-bit sample, native byte order (big or little).

Definition at line 162 of file OSDLAudio.h.

const string AudioModule::SDLEnvironmentVariables = {} [static, private]

Array of all known environment variables related to audio, for SDL back-end.

Definition at line 932 of file OSDLAudio.h.

Referenced by DescribeEnvironmentVariables().

Signed 8-bit sample.

Definition at line 139 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), OSDL::Audio::Sound::load(), and OSDL::Audio::sampleFormatToString().

const ChannelFormat AudioModule::Stereo = 2 [static]

Stereophonic (two channels).

Definition at line 186 of file OSDLAudio.h.

Referenced by OSDL::Audio::channelFormatToString(), GetChannelCountFor(), and OSDL::Audio::Sound::load().

Unsigned 8-bit sample.

Definition at line 135 of file OSDLAudio.h.

Referenced by GetSampleSizeFor(), and OSDL::Audio::sampleFormatToString().


The documentation for this class was generated from the following files:
Generated on Mon Nov 29 14:05:29 2010 for OSDL by  doxygen 1.6.3