00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef __SR_ACOUSTICMODELS_H
00021 #define __SR_ACOUSTICMODELS_H
00022 
00023 
00024 
00025 
00026 #include <stddef.h>
00027 #include <stdlib.h>
00028 #include "SR_AcousticModelsPrefix.h"
00029 #include "pstdio.h"
00030 #include "ptypes.h"
00031 #include "ESR_ReturnCode.h"
00032 
00036 typedef asr_uint8_t SR_AcousticModelID;
00037 
00048 typedef struct SR_AcousticModels_t
00049 {
00055   ESR_ReturnCode(*destroy)(struct SR_AcousticModels_t* self);
00063   ESR_ReturnCode(*save)(struct SR_AcousticModels_t* self, const LCHAR* filename);
00071   ESR_ReturnCode(*setParameter)(struct SR_AcousticModels_t* self, const LCHAR* key, LCHAR* value);
00081   ESR_ReturnCode(*getParameter)(struct SR_AcousticModels_t* self, const LCHAR* key, LCHAR* value, size_t* len);
00088   ESR_ReturnCode(*getCount)(struct SR_AcousticModels_t* self, size_t* size);
00098   ESR_ReturnCode(*getID)(struct SR_AcousticModels_t* self, size_t index, SR_AcousticModelID* id, size_t* size);
00106   ESR_ReturnCode(*setID)(struct SR_AcousticModels_t* self, size_t index, SR_AcousticModelID* id);
00112   void* (*getArbdata)(struct SR_AcousticModels_t* self);
00113 
00114 }
00115 SR_AcousticModels;
00116 
00128 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsDestroy(SR_AcousticModels* self);
00135 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsLoad(const LCHAR* filename, 
00136                                                              SR_AcousticModels** self);
00143 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsSave(SR_AcousticModels* self, const LCHAR* filename);
00151 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsSetParameter(SR_AcousticModels* self, const LCHAR* key, LCHAR* value);
00161 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsGetParameter(SR_AcousticModels* self, const LCHAR* key, LCHAR* value, size_t* len);
00168 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsGetCount(SR_AcousticModels* self, size_t* size);
00178 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsGetID(SR_AcousticModels* self, size_t index, SR_AcousticModelID* id,  size_t* idLen);
00186 SREC_ACOUSTICMODELS_API ESR_ReturnCode SR_AcousticModelsSetID(SR_AcousticModels* self, size_t index, SR_AcousticModelID* id);
00187 
00197 #endif