ICU 50.1.2  50.1.2
curramt.h
Go to the documentation of this file.
1 /*
2 **********************************************************************
3 * Copyright (c) 2004-2006, International Business Machines
4 * Corporation and others. All Rights Reserved.
5 **********************************************************************
6 * Author: Alan Liu
7 * Created: April 26, 2004
8 * Since: ICU 3.0
9 **********************************************************************
10 */
11 #ifndef __CURRENCYAMOUNT_H__
12 #define __CURRENCYAMOUNT_H__
13 
14 #include "unicode/utypes.h"
15 
16 #if !UCONFIG_NO_FORMATTING
17 
18 #include "unicode/measure.h"
19 #include "unicode/currunit.h"
20 
27 
36  public:
47  CurrencyAmount(const Formattable& amount, const UChar* isoCode,
48  UErrorCode &ec);
49 
60  CurrencyAmount(double amount, const UChar* isoCode,
61  UErrorCode &ec);
62 
67  CurrencyAmount(const CurrencyAmount& other);
68 
74 
80  virtual UObject* clone() const;
81 
86  virtual ~CurrencyAmount();
87 
96  virtual UClassID getDynamicClassID() const;
97 
104  static UClassID U_EXPORT2 getStaticClassID();
105 
110  inline const CurrencyUnit& getCurrency() const;
111 
116  inline const UChar* getISOCurrency() const;
117 };
118 
119 inline const CurrencyUnit& CurrencyAmount::getCurrency() const {
120  return (const CurrencyUnit&) getUnit();
121 }
122 
123 inline const UChar* CurrencyAmount::getISOCurrency() const {
124  return getCurrency().getISOCurrency();
125 }
126 
128 
129 #endif // !UCONFIG_NO_FORMATTING
130 #endif // __CURRENCYAMOUNT_H__
C++ API: Currency Unit Information.
An amount of a specified unit, consisting of a number and a Unit.
Definition: measure.h:45
virtual UClassID getDynamicClassID() const =0
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition: uobject.h:96
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
Definition: utypes.h:358
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
virtual UObject * clone() const =0
Return a polymorphic clone of this object.
C++ API: MeasureUnit object.
A unit of currency, such as USD (U.S.
Definition: currunit.h:35
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
Definition: umachine.h:278
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
Measure & operator=(const Measure &other)
Assignment operator.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:476
Basic definitions for ICU, for both C and C++ APIs.
Formattable objects can be passed to the Format class or its subclasses for formatting.
Definition: fmtable.h:62
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:229
A currency together with a numeric amount, such as 200 USD.
Definition: curramt.h:35