From 28ba97bdd8fb6ca352dc49dba01a66bd155ad523 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sat, 15 Nov 2008 19:24:55 +0000 Subject: entity extensions --- src/client/soundext.h | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/client/soundext.h (limited to 'src/client/soundext.h') diff --git a/src/client/soundext.h b/src/client/soundext.h new file mode 100644 index 0000000..d2028dd --- /dev/null +++ b/src/client/soundext.h @@ -0,0 +1,49 @@ +/* + client/soundext.h + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_CLIENT_SOUNDEXT_H__ +#define __INCLUDED_CLIENT_SOUNDEXT_H__ + +#include "core/extension.h" + +namespace client +{ + +/// the sound extension of an entity +class SoundExt :public core::Extension { +public: + SoundExt(core::Entity *Entity); + ~SoundExt(); + + virtual void frame(float elapsed); + +private: + void clear(); + + /// index of the audio buffer containing the thruster sound loop + size_t state_thusterloopbuffer; + /// index of the audio buffer containing the impulse sound loop + size_t state_impulseloopbuffer; + /// index of the audio buffer containing the impulse drive start sound + size_t state_impulsestartbuffer; + /// index of the audio buffer containing the impulse drive stop sound + size_t state_impulsestopbuffer; + + /// index of the audio buffer currently looping in enginesource + size_t state_engineloopbuffer; + /// index of the audio source used to play the engine sound loop + size_t state_engineloopsource; + /// index of the audio last played on the event source + size_t state_engineeventbuffer; + /// index of the audio source used to play engine sound events + size_t state_engineeventsource; +}; + +} + //namespace client + // +#endif // __INCLUDED_CLIENT_CLIENTEXT_H__ + -- cgit v1.2.3