1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/intl/icu/source/tools/makeconv/makeconv.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,59 @@ 1.4 +/* 1.5 +******************************************************************************* 1.6 +* 1.7 +* Copyright (C) 2000-2010, International Business Machines 1.8 +* Corporation and others. All Rights Reserved. 1.9 +* 1.10 +******************************************************************************* 1.11 +* file name: makeconv.h 1.12 +* encoding: US-ASCII 1.13 +* tab size: 8 (not used) 1.14 +* indentation:4 1.15 +* 1.16 +* created on: 2000nov01 1.17 +* created by: Markus W. Scherer 1.18 +*/ 1.19 + 1.20 +#ifndef __MAKECONV_H__ 1.21 +#define __MAKECONV_H__ 1.22 + 1.23 +#include "unicode/utypes.h" 1.24 +#include "ucnv_bld.h" 1.25 +#include "unewdata.h" 1.26 +#include "ucm.h" 1.27 + 1.28 +/* exports from makeconv.c */ 1.29 +U_CFUNC UBool VERBOSE; 1.30 +U_CFUNC UBool SMALL; 1.31 +U_CFUNC UBool IGNORE_SISO_CHECK; 1.32 + 1.33 +/* converter table type for writing */ 1.34 +enum { 1.35 + TABLE_NONE, 1.36 + TABLE_BASE, 1.37 + TABLE_EXT, 1.38 + TABLE_BASE_AND_EXT 1.39 +}; 1.40 + 1.41 +/* abstract converter generator struct, C++ - style */ 1.42 +struct NewConverter; 1.43 +typedef struct NewConverter NewConverter; 1.44 + 1.45 +struct NewConverter { 1.46 + void 1.47 + (*close)(NewConverter *cnvData); 1.48 + 1.49 + /** is this byte sequence valid? */ 1.50 + UBool 1.51 + (*isValid)(NewConverter *cnvData, 1.52 + const uint8_t *bytes, int32_t length); 1.53 + 1.54 + UBool 1.55 + (*addTable)(NewConverter *cnvData, UCMTable *table, UConverterStaticData *staticData); 1.56 + 1.57 + uint32_t 1.58 + (*write)(NewConverter *cnvData, const UConverterStaticData *staticData, 1.59 + UNewDataMemory *pData, int32_t tableType); 1.60 +}; 1.61 + 1.62 +#endif /* __MAKECONV_H__ */