Open Chinese Convert  0.4.3
A project for conversion between Traditional and Simplified Chinese
/usr/src/RPM/BUILD/opencc-0.4.3/src/converter.h
00001 /*
00002  * Open Chinese Convert
00003  *
00004  * Copyright 2010-2013 BYVoid <byvoid@byvoid.com>
00005  *
00006  * Licensed under the Apache License, Version 2.0 (the "License");
00007  * you may not use this file except in compliance with the License.
00008  * You may obtain a copy of the License at
00009  *
00010  *      http://www.apache.org/licenses/LICENSE-2.0
00011  *
00012  * Unless required by applicable law or agreed to in writing, software
00013  * distributed under the License is distributed on an "AS IS" BASIS,
00014  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015  * See the License for the specific language governing permissions and
00016  * limitations under the License.
00017  */
00018 
00019 #ifndef __CONVERTER_H_
00020 #define __CONVERTER_H_
00021 
00022 #include "common.h"
00023 #include "dict_chain.h"
00024 
00025 typedef enum {
00026   CONVERTER_ERROR_VOID,
00027   CONVERTER_ERROR_NODICT,
00028   CONVERTER_ERROR_OUTBUF,
00029 } converter_error;
00030 
00031 void converter_assign_dictionary(Converter* converter, DictChain* DictChain);
00032 
00033 Converter* converter_open(void);
00034 
00035 void converter_close(Converter* converter);
00036 
00037 size_t converter_convert(Converter* converter,
00038                          ucs4_t** inbuf,
00039                          size_t* inbuf_left,
00040                          ucs4_t** outbuf,
00041                          size_t* outbuf_left);
00042 
00043 void converter_set_conversion_mode(Converter* converter,
00044                                    opencc_conversion_mode conversion_mode);
00045 
00046 converter_error converter_errno(void);
00047 
00048 void converter_perror(const char* spec);
00049 
00050 #endif /* __CONVERTER_H_ */
 All Data Structures Files Functions Variables Defines