00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef __UAPI__MEDIAFILEREADER_
00021 #define __UAPI__MEDIAFILEREADER_
00022 
00023 #include "exports.h"
00024 #include "AudioSource.h"
00025 #include "types.h"
00026 #include "Codec.h"
00027 #include "SmartProxy.h"
00028 
00029 namespace android
00030 {
00031   namespace speech
00032   {
00033     namespace recognition
00034     {
00035       class AudioSourceListenerProxy;
00036       class MediaFileReaderProxy;
00037     }
00038   }
00039 }
00040 
00041 
00042 namespace android
00043 {
00044   namespace speech
00045   {
00046     namespace recognition
00047     {
00051       class MediaFileReader: public AudioSource
00052       {
00053         public:
00054           enum ReadingMode
00055           {
00059             REAL_TIME,
00060             
00064             ALL_AT_ONCE
00065           };
00066           
00077           UAPI_EXPORT static MediaFileReaderProxy create(const char* pszFileName,
00078               AudioSourceListenerProxy& listener,
00079               ReturnCode::Type& returnCode);
00080               
00087           virtual void setReadingMode(ReadingMode mode, ReturnCode::Type& returnCode) = 0;
00088         protected:
00092           MediaFileReader();
00096           virtual ~MediaFileReader();
00097           
00098           friend class MediaFileReaderProxy;
00099       };
00100       
00101       
00102 
00103 
00104       DECLARE_SMARTPROXY(UAPI_EXPORT, MediaFileReaderProxy, AudioSourceProxy, MediaFileReader)
00105     }
00106   }
00107 }
00108 
00109 #endif