diff options
Diffstat (limited to 'src/uscxml/plugins/invoker/miles/SpatialAudio.h.old')
-rw-r--r-- | src/uscxml/plugins/invoker/miles/SpatialAudio.h.old | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/uscxml/plugins/invoker/miles/SpatialAudio.h.old b/src/uscxml/plugins/invoker/miles/SpatialAudio.h.old new file mode 100644 index 0000000..e7ab830 --- /dev/null +++ b/src/uscxml/plugins/invoker/miles/SpatialAudio.h.old @@ -0,0 +1,57 @@ +#ifndef SPATIALAUDIO_H_EH11SAQC +#define SPATIALAUDIO_H_EH11SAQC + +#include <map> +#include <uscxml/Interpreter.h> + +extern "C" { +#include "miles/audio_device.h" +#include "miles/audio_codec.h" +#include "miles/audio_io.h" +#include "miles/miles.h" +} + +namespace uscxml { + +class SpatialAudio : public InvokerImpl { +public: + SpatialAudio(); + virtual ~SpatialAudio(); + virtual boost::shared_ptr<InvokerImpl> create(InterpreterImpl* interpreter); + + virtual std::set<std::string> getNames() { + std::set<std::string> names; + names.insert("spatial-audio"); + names.insert("audio"); + names.insert("http://www.smartvortex.eu/mmi/spatial-audio"); + names.insert("http://www.smartvortex.eu/mmi/spatial-audio/"); + return names; + } + + virtual Data getDataModelVariables(); + virtual void send(const SendRequest& req); + virtual void cancel(const std::string sendId); + virtual void invoke(const InvokeRequest& req); + virtual void sendToParent(SendRequest& req); + + void getPosFromParams(const std::multimap<std::string, Data>& params, float* position); + static float posToRadian(const std::string& position); + +protected: + std::string _invokeId; + Interpreter* _invokedInterpreter; + + std::stringstream _dataStream; + + float* _pos; + float* _listener; + float* _maxPos; + bool _audioDevOpen; + int _audioDevIndex; + struct miles_audio_device* _audioDev; + +}; + +} + +#endif /* end of include guard: SPATIALAUDIO_H_EH11SAQC */ |