ICU 4.8 4.8
ulocdata.h
Go to the documentation of this file.
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
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines