Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2008-11-15 19:24:55 +0000
committerStijn Buys <ingar@osirion.org>2008-11-15 19:24:55 +0000
commit28ba97bdd8fb6ca352dc49dba01a66bd155ad523 (patch)
treeeb4abd0505eb842e15201783529814bda1ae6e76 /src/client/soundext.h
parent1f0dbeeabdffff096908473168898c5fa63bcff0 (diff)
entity extensions
Diffstat (limited to 'src/client/soundext.h')
-rw-r--r--src/client/soundext.h49
1 files changed, 49 insertions, 0 deletions
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__
+