Nymph Game Engine
Chaiscript based Game Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Sound::SoundInstance Class Reference

#include <sound_instance.h>

Inheritance diagram for Sound::SoundInstance:
Component Events::Subject Events::Observer

Public Member Functions

 SoundInstance ()=delete
 
virtual ~SoundInstance ()=default
 
void play ()
 
bool isPlaying () const noexcept
 
void stop ()
 
bool isStopped () const noexcept
 
void setLooping (const bool looping)
 
bool isLooping () const noexcept
 
virtual void onStart () override
 Called when the engine starts and when a new scene is loaded. More...
 
virtual bool onUpdate (const double delta) override
 Called every engine loop. More...
 
virtual void onDestroy () override
 Called when the engine is shutting down. More...
 
virtual void onNotifyNow (std::shared_ptr< Events::Event > event) override
 When receiving an event that is immediate, onNotifyNow is used. It acts as an interrupt to make sure the object is notified before another engine loop. This is pure virtual and is implemented on a case by case basis in derived classes. More...
 
virtual void handleQueuedEvent (std::shared_ptr< Events::Event > event) override
 HandleQueuedEvent allows derived classes to define behaviour for when queuedEvents are received. More...
 
virtual unsigned long long getValueForSorting () const noexceptoverride
 Gets the value for sorting. More...
 
- Public Member Functions inherited from Component
 Component ()
 Component constructor. More...
 
void setTransform (std::shared_ptr< Transform > transform)
 Sets the transform. More...
 
std::shared_ptr< TransformgetTransform () const noexcept
 Gets the transform. More...
 
void setActive (const bool active) noexcept
 Sets the component active or inactive. More...
 
bool isActive () const noexcept
 Determines if active. More...
 
unsigned int getId () const noexcept
 Gets the identifier. More...
 
virtual std::string to_string () const noexcept
 Returns a string representation of the object. More...
 
virtual std::string className () const noexcept
 Returns a string representing the class name. More...
 
bool operator< (Component &other) noexcept
 Operator < using getValueForSorting. More...
 
virtual void log (el::base::type::ostream_t &os) const override
 
virtual ~Component ()
 Destroys the object. More...
 
- Public Member Functions inherited from Events::Subject
virtual ~Subject ()=default
 
virtual void notify (std::shared_ptr< Event > event)
 notify is used to tell observers of an event. More...
 
virtual void notifyNow (std::shared_ptr< Event > event)
 notifyNow is used to tell observers of an event as an interrupt. More...
 
virtual void addObserver (std::shared_ptr< Observer > observer)
 Adds an observer. More...
 
virtual void removeObserver (std::shared_ptr< Observer > observer)
 Removes an observer. More...
 
- Public Member Functions inherited from Events::Observer
virtual ~Observer ()
 
void onNotify (std::shared_ptr< Event > event)
 When receiving an event that is non-immediate, onNotify is used. The event is added to the event queue that is processed when processEventQueue is called. More...
 
void processEventQueue ()
 This should be called once ever loop for every Observer to properly use queued events. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Events::Observer
std::shared_ptr< EventgetEvent ()
 
bool eventsWaiting () const noexcept
 
- Protected Attributes inherited from Component
std::weak_ptr< Entityentity
 
std::shared_ptr< Transformtransform
 
bool active
 
unsigned int id
 
- Static Protected Attributes inherited from Component
static unsigned int next_id = 0
 

Constructor & Destructor Documentation

Sound::SoundInstance::SoundInstance ( )
delete
virtual Sound::SoundInstance::~SoundInstance ( )
virtualdefault

Member Function Documentation

virtual unsigned long long Sound::SoundInstance::getValueForSorting ( ) const
overridevirtualnoexcept

Gets the value for sorting.

Returns
The value for sorting.

Implements Component.

virtual void Sound::SoundInstance::handleQueuedEvent ( std::shared_ptr< Events::Event event)
overridevirtual

HandleQueuedEvent allows derived classes to define behaviour for when queuedEvents are received.

Parameters
[in]eventThe event

Reimplemented from Component.

bool Sound::SoundInstance::isLooping ( ) const
noexcept
bool Sound::SoundInstance::isPlaying ( ) const
noexcept
bool Sound::SoundInstance::isStopped ( ) const
noexcept
virtual void Sound::SoundInstance::onDestroy ( )
overridevirtual

Called when the engine is shutting down.

Implements Component.

virtual void Sound::SoundInstance::onNotifyNow ( std::shared_ptr< Events::Event event)
overridevirtual

When receiving an event that is immediate, onNotifyNow is used. It acts as an interrupt to make sure the object is notified before another engine loop. This is pure virtual and is implemented on a case by case basis in derived classes.

Parameters
[in]eventThe event

Reimplemented from Component.

virtual void Sound::SoundInstance::onStart ( )
overridevirtual

Called when the engine starts and when a new scene is loaded.

Implements Component.

virtual bool Sound::SoundInstance::onUpdate ( const double  delta)
overridevirtual

Called every engine loop.

Parameters
[in]deltaThe delta
Returns
true if active

Implements Component.

void Sound::SoundInstance::play ( )
void Sound::SoundInstance::setLooping ( const bool  looping)
void Sound::SoundInstance::stop ( )

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