00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef AUDIOOUTPUTAGENT_H
00024 #define AUDIOOUTPUTAGENT_H
00025
00026 #include <assert.h>
00027 #include <SpatialAudio.h>
00028 #include "micolelib.h"
00029 #include "MicoleAgent.h"
00030
00031 static const char* PAUSE_ALL = "PAUSE_ALL";
00032 static const char* STOP_ALL = "STOP_ALL";
00033 static const char* RESUME_ALL = "RESUME_ALL";
00034
00035 enum MICOLELIB_API SoundType {
00036
00037 PLAY=1,
00038 PLAY_INTERRUPT,
00039 PLAY_INTERRUPT_ALL,
00040 LOOP,
00041 LOOP_INTERRUPT,
00042 LOOP_INTERRUPT_ALL,
00043 PAUSE,
00044 STOP,
00045 RESUME,
00046
00047 };
00048
00071 class MICOLELIB_API AudioOutputAgent:public MicoleAgent{
00072
00073
00074
00075 public:
00076 void handleAudioMessage( MicoleBus *app, int argc, const char **argv);
00077 void handleStopPauseAllMessage(MicoleBus *app, int argc, const char **argv);
00078 AudioOutputAgent(const string baseDir);
00079 ~AudioOutputAgent();
00080
00081 protected:
00082 AudioDevice* device;
00083 string soundBase;
00084 bool stopped;
00085
00086 };
00087
00088 #endif