00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef __UAPI__SRECGRAMMAR
00021 #define __UAPI__SRECGRAMMAR
00022 
00023 #include "exports.h"
00024 #include "EmbeddedGrammar.h"
00025 
00026 namespace android
00027 {
00028   namespace speech
00029   {
00030     namespace recognition
00031     {
00032       class SlotItemProxy;
00033     }
00034   }
00035 }
00036 
00037 
00038 namespace android
00039 {
00040   namespace speech
00041   {
00042     namespace recognition
00043     {
00044       class SrecGrammarProxy;
00045       
00051       class SrecGrammar: public EmbeddedGrammar
00052       {
00053         public:
00067           UAPI_EXPORT virtual void addItem(const char* slotName, const SlotItemProxy& item,
00068                                            int weight, const char* semanticMeaning,
00069                                            ReturnCode::Type& returnCode) = 0;
00070 
00081            UAPI_EXPORT virtual void addItemList(const char* slotName, 
00082                                             SlotItemProxy** items,
00083                                             int* weights,
00084                                             const char** semanticMeanings,
00085                                             ARRAY_LIMIT itemsCount,
00086                                             ReturnCode::Type& returnCode) = 0;
00087 
00088         protected:
00092           UAPI_EXPORT SrecGrammar();
00096           UAPI_EXPORT virtual ~SrecGrammar();
00097           
00098           friend class SrecGrammarProxy;
00099       };
00100       
00101       
00102 
00103 
00104       DECLARE_SMARTPROXY(UAPI_EXPORT, SrecGrammarProxy, EmbeddedGrammarProxy, SrecGrammar)
00105     }
00106   }
00107 }
00108 
00109 #endif