00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef __UAPI__AUDIOSOURCE
00021 #define __UAPI__AUDIOSOURCE
00022 
00023 #include "exports.h"
00024 #include "ReturnCode.h"
00025 #include "SmartProxy.h"
00026 
00027 namespace android
00028 {
00029   namespace speech
00030   {
00031     namespace recognition
00032     {
00033       class AudioStreamProxy;
00034     }
00035   }
00036 }
00037 
00038 
00039 namespace android
00040 {
00041   namespace speech
00042   {
00043     namespace recognition
00044     {
00048       class AudioSource
00049       {
00050         public:
00051           virtual ~AudioSource()
00052           {}
00060           virtual AudioStreamProxy createAudio(ReturnCode::Type& returnCode) = 0;
00061           
00067           virtual void start(ReturnCode::Type& returnCode) = 0;
00068           
00074           virtual void stop(ReturnCode::Type& returnCode) = 0;
00075         private:
00079           AudioSource& operator=(AudioSource&);
00080       };
00081    
00082 
00083 
00084       DECLARE_SMARTPROXY(UAPI_EXPORT, AudioSourceProxy, android::speech::recognition::SmartProxy, AudioSource)
00085 
00086     }
00087   }
00088 }
00089 
00090 #endif