00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __SR_SEMANTICPROCESSOR_H
00021 #define __SR_SEMANTICPROCESSOR_H
00022
00023
00024
00025 #include "SR_SemprocPrefix.h"
00026 #include "SR_SemanticGraph.h"
00027 #include "SR_SemanticResult.h"
00028 #include "pstdio.h"
00029 #include "ptypes.h"
00030 #include "ESR_ReturnCode.h"
00031
00032
00033
00034
00038 typedef struct SR_SemanticProcessor_t
00039 {
00047 ESR_ReturnCode(*checkParse)(struct SR_SemanticProcessor_t* self, SR_SemanticGraph* semgraph, const LCHAR* transcription, SR_SemanticResult** result, size_t* resultCount);
00055 ESR_ReturnCode(*checkParseByWordID)(struct SR_SemanticProcessor_t* self, SR_SemanticGraph* semgraph, wordID* wordIDs, SR_SemanticResult** result, size_t* resultCount);
00061 ESR_ReturnCode(*destroy)(struct SR_SemanticProcessor_t* self);
00062
00070 ESR_ReturnCode(*setParam)(struct SR_SemanticProcessor_t* self, const LCHAR* key, const LCHAR* value);
00071
00077 ESR_ReturnCode(*flush)(struct SR_SemanticProcessor_t* self);
00078
00079 }
00080 SR_SemanticProcessor;
00081
00082
00088 SREC_SEMPROC_API ESR_ReturnCode SR_SemanticProcessorCreate(SR_SemanticProcessor** self);
00094 SREC_SEMPROC_API ESR_ReturnCode SR_SemanticProcessorDestroy(SR_SemanticProcessor* self);
00102 SREC_SEMPROC_API ESR_ReturnCode SR_SemanticProcessorSetParam(SR_SemanticProcessor* self, const LCHAR* key, const LCHAR* value);
00108 SREC_SEMPROC_API ESR_ReturnCode SR_SemanticProcessorFlush(SR_SemanticProcessor* self);
00109
00110
00111
00112 #endif