Orxonox
0.0.5 Codename: Arcturus
|
The BaseSound class is the base class for all sound file loader classes. More...
#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/orxonox/sound/BaseSound.h>
Public Member Functions | |
BaseSound () | |
bool | getLooping () const |
float | getPitch () const |
virtual const std::string & | getSource () const |
float | getVolume () const |
bool | isPaused () const |
bool | isPlaying () const |
bool | isStopped () const |
virtual void | pause () |
virtual void | play () |
void | setLooping (bool val) |
void | setPitch (float pitch) |
virtual void | setSource (const std::string &source) |
void | setVolume (float vol) |
virtual bool | stop () |
void | updateVolume () |
void | XMLPortExtern (Element &xmlelement, XMLPort::Mode mode) |
Public Member Functions inherited from orxonox::Listable | |
Listable () | |
Constructor: Allocates space in the element list. More... | |
Listable (Context *context) | |
Constructor: Allocates space in the element list and assigns the context. More... | |
virtual | ~Listable () |
Destructor: Removes the object from the object-lists. More... | |
Context * | getContext () const |
void | setContext (Context *context) |
Changes the context. More... | |
void | unregisterObject () |
Removes this object from the object-lists. More... | |
Public Member Functions inherited from orxonox::Identifiable | |
Identifiable () | |
Constructor: Sets the default values. More... | |
virtual | ~Identifiable () |
ORX_FORCEINLINE void * | getDerivedPointer (unsigned int classID) |
Returns a valid pointer of any derived type that is registered in the class hierarchy. More... | |
template<class T > | |
ORX_FORCEINLINE T * | getDerivedPointer (unsigned int classID) |
Version of getDerivedPointer with template. More... | |
template<class T > | |
ORX_FORCEINLINE const T * | getDerivedPointer (unsigned int classID) const |
Const version of getDerivedPointer with template. More... | |
Identifier * | getIdentifier () const |
Returns the Identifier of the object. More... | |
bool | isA (const Identifier *identifier) |
Returns true if the object's class is of the given type or a derivative. More... | |
template<class B > | |
bool | isA (const SubclassIdentifier< B > *identifier) |
Returns true if the object's class is of the given type or a derivative. More... | |
bool | isA (const Identifiable *object) |
Returns true if the object's class is of the given type or a derivative. More... | |
bool | isChildOf (const Identifier *identifier) |
Returns true if the object's class is a child of the given type. More... | |
template<class B > | |
bool | isChildOf (const SubclassIdentifier< B > *identifier) |
Returns true if the object's class is a child of the given type. More... | |
bool | isChildOf (const Identifiable *object) |
Returns true if the object's class is a child of the given type. More... | |
bool | isDirectChildOf (const Identifier *identifier) |
Returns true if the object's class is a direct child of the given type. More... | |
template<class B > | |
bool | isDirectChildOf (const SubclassIdentifier< B > *identifier) |
Returns true if the object's class is a direct child of the given type. More... | |
bool | isDirectChildOf (const Identifiable *object) |
Returns true if the object's class is a direct child of the given type. More... | |
bool | isDirectParentOf (const Identifier *identifier) |
Returns true if the object's class is a direct parent of the given type. More... | |
template<class B > | |
bool | isDirectParentOf (const SubclassIdentifier< B > *identifier) |
Returns true if the object's class is a direct parent of the given type. More... | |
bool | isDirectParentOf (const Identifiable *object) |
Returns true if the object's class is a direct child of the given type. More... | |
bool | isExactlyA (const Identifier *identifier) |
Returns true if the object's class is exactly of the given type. More... | |
template<class B > | |
bool | isExactlyA (const SubclassIdentifier< B > *identifier) |
Returns true if the object's class is exactly of the given type. More... | |
bool | isExactlyA (const Identifiable *object) |
Returns true if the object's class is exactly of the given type. More... | |
bool | isParentOf (const Identifier *identifier) |
Returns true if the object's class is a parent of the given type. More... | |
template<class B > | |
bool | isParentOf (const SubclassIdentifier< B > *identifier) |
Returns true if the object's class is a parent of the given type. More... | |
bool | isParentOf (const Identifiable *object) |
Returns true if the object's class is a parent of the given type. More... | |
Protected Types | |
enum | State { State::Stopped, State::Playing, State::Paused } |
Protected Member Functions | |
virtual | ~BaseSound () |
void | doPause () |
void | doPlay () |
bool | doStop () |
virtual float | getRealVolume ()=0 |
ALint | getSourceState () const |
virtual void | initialiseSource () |
void | loopingChanged () |
void | pitchChanged () |
void | sourceChanged () |
void | stateChanged () |
void | volumeChanged () |
Protected Attributes | |
ALuint | audioSource_ |
bool | bLooping_ |
bool | bPooling_ |
float | pitch_ |
std::shared_ptr< SoundBuffer > | soundBuffer_ |
std::string | source_ |
State | state_ |
float | volume_ |
Private Attributes | |
DataStreamPtr | dataStream_ |
The BaseSound class is the base class for all sound file loader classes.
It serves as main interface to the OpenAL library.
|
strongprotected |
orxonox::BaseSound::BaseSound | ( | ) |
|
protectedvirtual |
|
protected |
|
protected |
|
protected |
|
inline |
|
inline |
|
protectedpure virtual |
Implemented in orxonox::AmbientSound, and orxonox::WorldSound.
|
inlinevirtual |
|
protected |
|
inline |
|
protectedvirtual |
Reimplemented in orxonox::WorldSound.
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
inlinevirtual |
Reimplemented in orxonox::AmbientSound.
|
inlineprotected |
|
inlinevirtual |
Reimplemented in orxonox::AmbientSound.
void orxonox::BaseSound::setLooping | ( | bool | val | ) |
void orxonox::BaseSound::setPitch | ( | float | pitch | ) |
|
virtual |
void orxonox::BaseSound::setVolume | ( | float | vol | ) |
|
inlineprotected |
|
protected |
|
inlinevirtual |
Reimplemented in orxonox::AmbientSound.
void orxonox::BaseSound::updateVolume | ( | ) |
|
inlineprotected |
void orxonox::BaseSound::XMLPortExtern | ( | Element & | xmlelement, |
XMLPort::Mode | mode | ||
) |
|
protected |
|
protected |
|
protected |
|
private |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |