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
00033 typedef struct ULocaleData {
00037 UBool noSubstitute;
00038
00042 UResourceBundle *bundle;
00043 } ULocaleData;
00044
00048 typedef enum ULocaleDataExemplarSetType {
00049 ULOCDATA_ES_STANDARD,
00050 ULOCDATA_ES_AUXILIARY,
00051 ULOCDATA_ES_COUNT
00052 } ULocaleDataExemplarSetType;
00053
00057 typedef enum ULocaleDataDelimiterType {
00058 ULOCDATA_QUOTATION_START,
00059 ULOCDATA_QUOTATION_END,
00060 ULOCDATA_ALT_QUOTATION_START,
00061 ULOCDATA_ALT_QUOTATION_END,
00062 ULOCDATA_DELIMITER_COUNT
00063 } ULocaleDataDelimiterType;
00064
00073 U_DRAFT ULocaleData* U_EXPORT2
00074 ulocdata_open(const char *localeID, UErrorCode *status);
00075
00082 U_DRAFT void U_EXPORT2
00083 ulocdata_close(ULocaleData *uld);
00084
00096 U_DRAFT void U_EXPORT2
00097 ulocdata_setNoSubstitute(ULocaleData *uld, UBool setting);
00098
00110 U_DRAFT UBool U_EXPORT2
00111 ulocdata_getNoSubstitute(ULocaleData *uld);
00112
00138 U_DRAFT USet* U_EXPORT2
00139 ulocdata_getExemplarSet(ULocaleData *uld, USet *fillIn,
00140 uint32_t options, ULocaleDataExemplarSetType extype, UErrorCode *status);
00141
00155 U_DRAFT int32_t U_EXPORT2
00156 ulocdata_getDelimiter(ULocaleData *uld, ULocaleDataDelimiterType type, UChar *result, int32_t resultLength, UErrorCode *status);
00157
00158 #ifndef U_HIDE_DRAFT_API
00159
00163 typedef enum UMeasurementSystem {
00164 UMS_SI,
00165 UMS_US,
00166 UMS_LIMIT
00167 } UMeasurementSystem;
00168 #endif
00169
00180 U_DRAFT UMeasurementSystem U_EXPORT2
00181 ulocdata_getMeasurementSystem(const char *localeID, UErrorCode *status);
00182
00199 U_DRAFT void U_EXPORT2
00200 ulocdata_getPaperSize(const char *localeID, int32_t *height, int32_t *width, UErrorCode *status);
00201
00202 #endif