ICU 4.2.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ucurr.h
Go to the documentation of this file.
1 /*
2 **********************************************************************
3 * Copyright (c) 2002-2009, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 **********************************************************************
6 */
7 #ifndef _UCURR_H_
8 #define _UCURR_H_
9 
10 #include "unicode/utypes.h"
11 #include "unicode/uenum.h"
12 
18 #if !UCONFIG_NO_FORMATTING
19 
53 ucurr_forLocale(const char* locale,
54  UChar* buff,
55  int32_t buffCapacity,
56  UErrorCode* ec);
57 
64 typedef enum UCurrNameStyle {
71 
79 
80 #if !UCONFIG_NO_SERVICE
81 
84 typedef const void* UCurrRegistryKey;
85 
98 ucurr_register(const UChar* isoCode,
99  const char* locale,
100  UErrorCode* status);
114 #endif /* UCONFIG_NO_SERVICE */
115 
133 U_STABLE const UChar* U_EXPORT2
134 ucurr_getName(const UChar* currency,
135  const char* locale,
136  UCurrNameStyle nameStyle,
137  UBool* isChoiceFormat,
138  int32_t* len,
139  UErrorCode* ec);
140 
157 U_STABLE const UChar* U_EXPORT2
158 ucurr_getPluralName(const UChar* currency,
159  const char* locale,
160  UBool* isChoiceFormat,
161  const char* pluralCount,
162  int32_t* len,
163  UErrorCode* ec);
164 
175 ucurr_getDefaultFractionDigits(const UChar* currency,
176  UErrorCode* ec);
177 
187 U_STABLE double U_EXPORT2
188 ucurr_getRoundingIncrement(const UChar* currency,
189  UErrorCode* ec);
190 
197 typedef enum UCurrCurrencyType {
233 
244 ucurr_openISOCurrencies(uint32_t currType, UErrorCode *pErrorCode);
245 
261 ucurr_countCurrencies(const char* locale,
262  UDate date,
263  UErrorCode* ec);
264 
285 ucurr_forLocaleAndDate(const char* locale,
286  UDate date,
287  int32_t index,
288  UChar* buff,
289  int32_t buffCapacity,
290  UErrorCode* ec);
291 
309 ucurr_getKeywordValuesForLocale(const char* key,
310  const char* locale,
311  UBool commonlyUsed,
312  UErrorCode* status);
313 
314 #endif /* #if !UCONFIG_NO_FORMATTING */
315 
316 #endif
UCurrRegistryKey ucurr_register(const UChar *isoCode, const char *locale, UErrorCode *status)
Register an (existing) ISO 4217 currency code for the given locale.
Select all ISO-4217 currency codes.
Definition: ucurr.h:202
UCurrCurrencyType
Selector constants for ucurr_openCurrencies().
Definition: ucurr.h:197
int32_t ucurr_countCurrencies(const char *locale, UDate date, UErrorCode *ec)
Finds the number of valid currency codes for the given locale and date.
int32_t ucurr_forLocale(const char *locale, UChar *buff, int32_t buffCapacity, UErrorCode *ec)
The ucurr API encapsulates information about a currency, as defined by ISO 4217.
double UDate
Date and Time data type.
Definition: utypes.h:281
struct UEnumeration UEnumeration
structure representing an enumeration object instance
Definition: uenum.h:38
UBool ucurr_unregister(UCurrRegistryKey key, UErrorCode *status)
Unregister the previously-registered currency definitions using the URegistryKey returned from ucurr_...
unsigned int uint32_t
Define 64 bit limits.
Definition: pwin32.h:147
double ucurr_getRoundingIncrement(const UChar *currency, UErrorCode *ec)
Returns the rounding increment for the given currency, or 0.0 if no rounding is done by the currency...
int32_t ucurr_forLocaleAndDate(const char *locale, UDate date, int32_t index, UChar *buff, int32_t buffCapacity, UErrorCode *ec)
Finds a currency code for the given locale and date.
Select only ISO-4217 commonly used currency codes.
Definition: ucurr.h:211
Selector for ucurr_getName indicating a symbolic name for a currency, such as "$" for USD...
Definition: ucurr.h:70
#define U_EXPORT2
Definition: platform.h:338
const UChar * ucurr_getPluralName(const UChar *currency, const char *locale, UBool *isChoiceFormat, const char *pluralCount, int32_t *len, UErrorCode *ec)
Returns the plural name for the given currency in the given locale.
uint16_t UChar
Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned.
Definition: umachine.h:299
#define INT32_MAX
The largest value a 32 bit signed integer can hold.
Definition: umachine.h:154
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:593
UEnumeration * ucurr_getKeywordValuesForLocale(const char *key, const char *locale, UBool commonlyUsed, UErrorCode *status)
Given a key and a locale, returns an array of string values in a preferred order that would make a di...
Select only non-deprecated ISO-4217 codes.
Definition: ucurr.h:231
Select ISO-4217 uncommon currency codes.
Definition: ucurr.h:219
UEnumeration * ucurr_openISOCurrencies(uint32_t currType, UErrorCode *pErrorCode)
Provides a UEnumeration object for listing ISO-4217 codes.
C API: String Enumeration.
const UChar * ucurr_getName(const UChar *currency, const char *locale, UCurrNameStyle nameStyle, UBool *isChoiceFormat, int32_t *len, UErrorCode *ec)
Returns the display name for the given currency in the given locale.
Basic definitions for ICU, for both C and C++ APIs.
const void * UCurrRegistryKey
Definition: ucurr.h:84
UCurrNameStyle
Selector constants for ucurr_getName().
Definition: ucurr.h:64
Select only deprecated ISO-4217 codes.
Definition: ucurr.h:225
#define U_DRAFT
This is used to declare a function as a draft public ICU C API.
Definition: umachine.h:119
int32_t ucurr_getDefaultFractionDigits(const UChar *currency, UErrorCode *ec)
Returns the number of the number of fraction digits that should be displayed for the given currency...
Selector for ucurr_getName indicating the long name for a currency, such as "US Dollar" for USD...
Definition: ucurr.h:77
signed int int32_t
Define 64 bit limits.
Definition: pwin32.h:143
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition: umachine.h:117
int8_t UBool
The ICU boolean type.
Definition: umachine.h:208