13 #ifndef __MEASUREUNIT_H__
14 #define __MEASUREUNIT_H__
18 #if !UCONFIG_NO_FORMATTING
29 class StringEnumeration;
86 return !(*
this == other);
93 const char *getType()
const;
99 const char *getSubtype()
const;
112 static int32_t getAvailable(
114 int32_t destCapacity,
129 static int32_t getAvailable(
132 int32_t destCapacity,
156 static UClassID U_EXPORT2 getStaticClassID(
void);
171 #ifndef U_HIDE_INTERNAL_API
178 int32_t getIndex()
const;
185 static int32_t getIndexCount();
193 static int32_t internalGetIndexForTypeAndSubtype(
const char *type,
const char *subtype);
220 #ifndef U_HIDE_DRAFT_API
238 #ifndef U_HIDE_DRAFT_API
256 #ifndef U_HIDE_DRAFT_API
274 #ifndef U_HIDE_DRAFT_API
292 #ifndef U_HIDE_DRAFT_API
310 #ifndef U_HIDE_DRAFT_API
328 #ifndef U_HIDE_DRAFT_API
346 #ifndef U_HIDE_DRAFT_API
355 #ifndef U_HIDE_DRAFT_API
382 #ifndef U_HIDE_DRAFT_API
400 #ifndef U_HIDE_DRAFT_API
418 #ifndef U_HIDE_DRAFT_API
436 #ifndef U_HIDE_DRAFT_API
454 #ifndef U_HIDE_DRAFT_API
472 #ifndef U_HIDE_DRAFT_API
490 #ifndef U_HIDE_DRAFT_API
508 #ifndef U_HIDE_DRAFT_API
526 #ifndef U_HIDE_DRAFT_API
544 #ifndef U_HIDE_DRAFT_API
562 #ifndef U_HIDE_DRAFT_API
571 #ifndef U_HIDE_DRAFT_API
598 #ifndef U_HIDE_DRAFT_API
607 #ifndef U_HIDE_DRAFT_API
618 #ifndef U_HIDE_DRAFT_API
627 #ifndef U_HIDE_DRAFT_API
638 #ifndef U_HIDE_DRAFT_API
647 #ifndef U_HIDE_DRAFT_API
674 #ifndef U_HIDE_DRAFT_API
692 #ifndef U_HIDE_DRAFT_API
710 #ifndef U_HIDE_DRAFT_API
728 #ifndef U_HIDE_DRAFT_API
746 #ifndef U_HIDE_DRAFT_API
764 #ifndef U_HIDE_DRAFT_API
782 #ifndef U_HIDE_DRAFT_API
800 #ifndef U_HIDE_DRAFT_API
818 #ifndef U_HIDE_DRAFT_API
836 #ifndef U_HIDE_DRAFT_API
854 #ifndef U_HIDE_DRAFT_API
872 #ifndef U_HIDE_DRAFT_API
881 #ifndef U_HIDE_DRAFT_API
892 #ifndef U_HIDE_DRAFT_API
910 #ifndef U_HIDE_DRAFT_API
928 #ifndef U_HIDE_DRAFT_API
946 #ifndef U_HIDE_DRAFT_API
964 #ifndef U_HIDE_DRAFT_API
973 #ifndef U_HIDE_DRAFT_API
984 #ifndef U_HIDE_DRAFT_API
1002 #ifndef U_HIDE_DRAFT_API
1020 #ifndef U_HIDE_DRAFT_API
1038 #ifndef U_HIDE_DRAFT_API
1056 #ifndef U_HIDE_DRAFT_API
1074 #ifndef U_HIDE_DRAFT_API
1083 #ifndef U_HIDE_DRAFT_API
1094 #ifndef U_HIDE_DRAFT_API
1112 #ifndef U_HIDE_DRAFT_API
1130 #ifndef U_HIDE_DRAFT_API
1148 #ifndef U_HIDE_DRAFT_API
1157 #ifndef U_HIDE_DRAFT_API
1168 #ifndef U_HIDE_DRAFT_API
1186 #ifndef U_HIDE_DRAFT_API
1195 #ifndef U_HIDE_DRAFT_API
1206 #ifndef U_HIDE_DRAFT_API
1224 #ifndef U_HIDE_DRAFT_API
1242 #ifndef U_HIDE_DRAFT_API
1260 #ifndef U_HIDE_DRAFT_API
1278 #ifndef U_HIDE_DRAFT_API
1287 #ifndef U_HIDE_DRAFT_API
1314 #ifndef U_HIDE_DRAFT_API
1323 #ifndef U_HIDE_DRAFT_API
1350 #ifndef U_HIDE_DRAFT_API
1368 #ifndef U_HIDE_DRAFT_API
1386 #ifndef U_HIDE_DRAFT_API
1404 #ifndef U_HIDE_DRAFT_API
1422 #ifndef U_HIDE_DRAFT_API
1431 #ifndef U_HIDE_DRAFT_API
1449 #ifndef U_HIDE_DRAFT_API
1476 #ifndef U_HIDE_DRAFT_API
1494 #ifndef U_HIDE_DRAFT_API
1512 #ifndef U_HIDE_DRAFT_API
1530 #ifndef U_HIDE_DRAFT_API
1548 #ifndef U_HIDE_DRAFT_API
1566 #ifndef U_HIDE_DRAFT_API
1584 #ifndef U_HIDE_DRAFT_API
1602 #ifndef U_HIDE_DRAFT_API
1620 #ifndef U_HIDE_DRAFT_API
1638 #ifndef U_HIDE_DRAFT_API
1656 #ifndef U_HIDE_DRAFT_API
1674 #ifndef U_HIDE_DRAFT_API
1692 #ifndef U_HIDE_DRAFT_API
1710 #ifndef U_HIDE_DRAFT_API
1728 #ifndef U_HIDE_DRAFT_API
1746 #ifndef U_HIDE_DRAFT_API
1764 #ifndef U_HIDE_DRAFT_API
1782 #ifndef U_HIDE_DRAFT_API
1800 #ifndef U_HIDE_DRAFT_API
1818 #ifndef U_HIDE_DRAFT_API
1836 #ifndef U_HIDE_DRAFT_API
1854 #ifndef U_HIDE_DRAFT_API
1872 #ifndef U_HIDE_DRAFT_API
1881 #ifndef U_HIDE_DRAFT_API
1908 #ifndef U_HIDE_DRAFT_API
1926 #ifndef U_HIDE_DRAFT_API
1935 #ifndef U_HIDE_DRAFT_API
1962 #ifndef U_HIDE_DRAFT_API
1971 #ifndef U_HIDE_DRAFT_API
1989 #ifndef U_HIDE_DRAFT_API
2016 #ifndef U_HIDE_DRAFT_API
2034 #ifndef U_HIDE_DRAFT_API
2052 #ifndef U_HIDE_DRAFT_API
2070 #ifndef U_HIDE_DRAFT_API
2088 #ifndef U_HIDE_DRAFT_API
2106 #ifndef U_HIDE_DRAFT_API
2124 #ifndef U_HIDE_DRAFT_API
2142 #ifndef U_HIDE_DRAFT_API
2151 #ifndef U_HIDE_DRAFT_API
2178 #ifndef U_HIDE_DRAFT_API
2196 #ifndef U_HIDE_DRAFT_API
2214 #ifndef U_HIDE_DRAFT_API
2232 #ifndef U_HIDE_DRAFT_API
2250 #ifndef U_HIDE_DRAFT_API
2268 #ifndef U_HIDE_DRAFT_API
2286 #ifndef U_HIDE_DRAFT_API
2304 #ifndef U_HIDE_DRAFT_API
2313 #ifndef U_HIDE_DRAFT_API
2324 #ifndef U_HIDE_DRAFT_API
2342 #ifndef U_HIDE_DRAFT_API
2360 #ifndef U_HIDE_DRAFT_API
2369 #ifndef U_HIDE_DRAFT_API
2387 #ifndef U_HIDE_DRAFT_API
2414 #ifndef U_HIDE_DRAFT_API
2432 #ifndef U_HIDE_DRAFT_API
2450 #ifndef U_HIDE_DRAFT_API
2468 #ifndef U_HIDE_DRAFT_API
2486 #ifndef U_HIDE_DRAFT_API
2504 #ifndef U_HIDE_DRAFT_API
2522 #ifndef U_HIDE_DRAFT_API
2540 #ifndef U_HIDE_DRAFT_API
2558 #ifndef U_HIDE_DRAFT_API
2576 #ifndef U_HIDE_DRAFT_API
2594 #ifndef U_HIDE_DRAFT_API
2603 #ifndef U_HIDE_DRAFT_API
2621 #ifndef U_HIDE_DRAFT_API
2648 #ifndef U_HIDE_DRAFT_API
2657 #ifndef U_HIDE_DRAFT_API
2684 #ifndef U_HIDE_DRAFT_API
2702 #ifndef U_HIDE_DRAFT_API
2720 #ifndef U_HIDE_DRAFT_API
2738 #ifndef U_HIDE_DRAFT_API
2756 #ifndef U_HIDE_DRAFT_API
2774 #ifndef U_HIDE_DRAFT_API
2792 #ifndef U_HIDE_DRAFT_API
2810 #ifndef U_HIDE_DRAFT_API
2828 #ifndef U_HIDE_DRAFT_API
2846 #ifndef U_HIDE_DRAFT_API
2864 #ifndef U_HIDE_DRAFT_API
2882 #ifndef U_HIDE_DRAFT_API
2900 #ifndef U_HIDE_DRAFT_API
2909 #ifndef U_HIDE_DRAFT_API
2936 #ifndef U_HIDE_DRAFT_API
2954 #ifndef U_HIDE_DRAFT_API
2972 #ifndef U_HIDE_DRAFT_API
2990 #ifndef U_HIDE_DRAFT_API
3008 #ifndef U_HIDE_DRAFT_API
3026 #ifndef U_HIDE_DRAFT_API
3044 #ifndef U_HIDE_DRAFT_API
3062 #ifndef U_HIDE_DRAFT_API
3080 #ifndef U_HIDE_DRAFT_API
3098 #ifndef U_HIDE_DRAFT_API
3116 #ifndef U_HIDE_DRAFT_API
3130 #ifndef U_HIDE_INTERNAL_API
3135 void initTime(
const char *timeId);
3141 void initCurrency(
const char *isoCurrency);
3147 void initNoUnit(
const char *subtype);
3156 MeasureUnit(int32_t typeId, int32_t subTypeId) : fTypeId(typeId), fSubTypeId(subTypeId) {
3159 void setTo(int32_t typeId, int32_t subTypeId);
3160 int32_t getOffset()
const;
3161 static MeasureUnit *create(
int typeId,
int subTypeId,
UErrorCode &status);
3166 #endif // !UNCONFIG_NO_FORMATTING
3167 #endif // __MEASUREUNIT_H__
UBool operator!=(const UObject &other) const
Inequality operator.
A unit such as length, mass, volume, currency, etc.
virtual UClassID getDynamicClassID() const
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Base class for 'pure' C++ implementations of uenum api.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Basic definitions for ICU, for both C and C++ APIs.
UObject is the common ICU "boilerplate" class.
int8_t UBool
The ICU boolean type.