ICU 4.8 4.8
|
00001 /* 00002 ****************************************************************************** 00003 * * 00004 * Copyright (C) 2003-2011, International Business Machines * 00005 * Corporation and others. All Rights Reserved. * 00006 * * 00007 ****************************************************************************** 00008 * file name: ulocdata.h 00009 * encoding: US-ASCII 00010 * tab size: 8 (not used) 00011 * indentation:4 00012 * 00013 * created on: 2003Oct21 00014 * created by: Ram Viswanadha 00015 */ 00016 00017 #ifndef __ULOCDATA_H__ 00018 #define __ULOCDATA_H__ 00019 00020 #include "unicode/ures.h" 00021 #include "unicode/uloc.h" 00022 #include "unicode/uset.h" 00023 #include "unicode/localpointer.h" 00024 00031 struct ULocaleData; 00032 00034 typedef struct ULocaleData ULocaleData; 00035 00036 00037 00041 typedef enum ULocaleDataExemplarSetType { 00042 ULOCDATA_ES_STANDARD=0, /* Basic set */ 00043 ULOCDATA_ES_AUXILIARY=1, /* Auxiliary set */ 00044 ULOCDATA_ES_INDEX=2, /* Index Character set */ 00045 ULOCDATA_ES_COUNT=3 00046 } ULocaleDataExemplarSetType; 00047 00051 typedef enum ULocaleDataDelimiterType { 00052 ULOCDATA_QUOTATION_START = 0, /* Quotation start */ 00053 ULOCDATA_QUOTATION_END = 1, /* Quotation end */ 00054 ULOCDATA_ALT_QUOTATION_START = 2, /* Alternate quotation start */ 00055 ULOCDATA_ALT_QUOTATION_END = 3, /* Alternate quotation end */ 00056 ULOCDATA_DELIMITER_COUNT = 4 00057 } ULocaleDataDelimiterType; 00058 00067 U_STABLE ULocaleData* U_EXPORT2 00068 ulocdata_open(const char *localeID, UErrorCode *status); 00069 00076 U_STABLE void U_EXPORT2 00077 ulocdata_close(ULocaleData *uld); 00078 00079 #if U_SHOW_CPLUSPLUS_API 00080 00081 U_NAMESPACE_BEGIN 00082 00092 U_DEFINE_LOCAL_OPEN_POINTER(LocalULocaleDataPointer, ULocaleData, ulocdata_close); 00093 00094 U_NAMESPACE_END 00095 00096 #endif 00097 00109 U_STABLE void U_EXPORT2 00110 ulocdata_setNoSubstitute(ULocaleData *uld, UBool setting); 00111 00123 U_STABLE UBool U_EXPORT2 00124 ulocdata_getNoSubstitute(ULocaleData *uld); 00125 00153 U_STABLE USet* U_EXPORT2 00154 ulocdata_getExemplarSet(ULocaleData *uld, USet *fillIn, 00155 uint32_t options, ULocaleDataExemplarSetType extype, UErrorCode *status); 00156 00170 U_STABLE int32_t U_EXPORT2 00171 ulocdata_getDelimiter(ULocaleData *uld, ULocaleDataDelimiterType type, UChar *result, int32_t resultLength, UErrorCode *status); 00172 00177 typedef enum UMeasurementSystem { 00178 UMS_SI, 00179 UMS_US, 00180 UMS_LIMIT 00181 } UMeasurementSystem; 00182 00193 U_STABLE UMeasurementSystem U_EXPORT2 00194 ulocdata_getMeasurementSystem(const char *localeID, UErrorCode *status); 00195 00212 U_STABLE void U_EXPORT2 00213 ulocdata_getPaperSize(const char *localeID, int32_t *height, int32_t *width, UErrorCode *status); 00214 00221 U_STABLE void U_EXPORT2 00222 ulocdata_getCLDRVersion(UVersionInfo versionArray, UErrorCode *status); 00223 00239 U_STABLE int32_t U_EXPORT2 00240 ulocdata_getLocaleDisplayPattern(ULocaleData *uld, 00241 UChar *pattern, 00242 int32_t patternCapacity, 00243 UErrorCode *status); 00244 00245 00261 U_STABLE int32_t U_EXPORT2 00262 ulocdata_getLocaleSeparator(ULocaleData *uld, 00263 UChar *separator, 00264 int32_t separatorCapacity, 00265 UErrorCode *status); 00266 #endif