00001 // © 2016 and later: Unicode, Inc. and others. 00002 // License & terms of use: http://www.unicode.org/copyright.html 00003 /* 00004 ********************************************************************** 00005 * Copyright (c) 2004-2014, International Business Machines 00006 * Corporation and others. All Rights Reserved. 00007 ********************************************************************** 00008 * Author: Alan Liu 00009 * Created: April 26, 2004 00010 * Since: ICU 3.0 00011 ********************************************************************** 00012 */ 00013 #ifndef __CURRENCYUNIT_H__ 00014 #define __CURRENCYUNIT_H__ 00015 00016 #include "unicode/utypes.h" 00017 00018 #if !UCONFIG_NO_FORMATTING 00019 00020 #include "unicode/measunit.h" 00021 00027 U_NAMESPACE_BEGIN 00028 00037 class U_I18N_API CurrencyUnit: public MeasureUnit { 00038 public: 00043 CurrencyUnit(); 00044 00055 CurrencyUnit(ConstChar16Ptr isoCode, UErrorCode &ec); 00056 00057 #ifndef U_HIDE_DRAFT_API 00058 00067 CurrencyUnit(StringPiece isoCode, UErrorCode &ec); 00068 #endif /* U_HIDE_DRAFT_API */ 00069 00074 CurrencyUnit(const CurrencyUnit& other); 00075 00084 CurrencyUnit(const MeasureUnit& measureUnit, UErrorCode &ec); 00085 00090 CurrencyUnit& operator=(const CurrencyUnit& other); 00091 00097 virtual UObject* clone() const; 00098 00103 virtual ~CurrencyUnit(); 00104 00113 virtual UClassID getDynamicClassID() const; 00114 00121 static UClassID U_EXPORT2 getStaticClassID(); 00122 00127 inline const char16_t* getISOCurrency() const; 00128 00129 private: 00133 char16_t isoCode[4]; 00134 }; 00135 00136 inline const char16_t* CurrencyUnit::getISOCurrency() const { 00137 return isoCode; 00138 } 00139 00140 U_NAMESPACE_END 00141 00142 #endif // !UCONFIG_NO_FORMATTING 00143 #endif // __CURRENCYUNIT_H__
1.6.1