00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
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
00030 struct ULocaleData;
00031
00033 typedef struct ULocaleData ULocaleData;
00034
00035
00036
00040 typedef enum ULocaleDataExemplarSetType {
00041 #ifndef U_HIDE_DRAFT_API
00042 ULOCDATA_ES_STANDARD=0,
00043 ULOCDATA_ES_AUXILIARY=1,
00044 #endif
00045 ULOCDATA_ES_COUNT=3
00046 } ULocaleDataExemplarSetType;
00047
00051 typedef enum ULocaleDataDelimiterType {
00052 #ifndef U_HIDE_DRAFT_API
00053 ULOCDATA_QUOTATION_START = 0,
00054 ULOCDATA_QUOTATION_END = 1,
00055 ULOCDATA_ALT_QUOTATION_START = 2,
00056 ULOCDATA_ALT_QUOTATION_END = 3,
00057 #endif
00058 ULOCDATA_DELIMITER_COUNT = 4
00059 } ULocaleDataDelimiterType;
00060
00069 U_DRAFT ULocaleData* U_EXPORT2
00070 ulocdata_open(const char *localeID, UErrorCode *status);
00071
00078 U_DRAFT void U_EXPORT2
00079 ulocdata_close(ULocaleData *uld);
00080
00092 U_DRAFT void U_EXPORT2
00093 ulocdata_setNoSubstitute(ULocaleData *uld, UBool setting);
00094
00106 U_DRAFT UBool U_EXPORT2
00107 ulocdata_getNoSubstitute(ULocaleData *uld);
00108
00134 U_DRAFT USet* U_EXPORT2
00135 ulocdata_getExemplarSet(ULocaleData *uld, USet *fillIn,
00136 uint32_t options, ULocaleDataExemplarSetType extype, UErrorCode *status);
00137
00151 U_DRAFT int32_t U_EXPORT2
00152 ulocdata_getDelimiter(ULocaleData *uld, ULocaleDataDelimiterType type, UChar *result, int32_t resultLength, UErrorCode *status);
00153
00158 typedef enum UMeasurementSystem {
00159 UMS_SI,
00160 UMS_US,
00161 UMS_LIMIT
00162 } UMeasurementSystem;
00163
00174 U_STABLE UMeasurementSystem U_EXPORT2
00175 ulocdata_getMeasurementSystem(const char *localeID, UErrorCode *status);
00176
00193 U_STABLE void U_EXPORT2
00194 ulocdata_getPaperSize(const char *localeID, int32_t *height, int32_t *width, UErrorCode *status);
00195
00196 #endif