ICU 74.1  74.1
measunit.h
Go to the documentation of this file.
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 **********************************************************************
5 * Copyright (c) 2004-2016, International Business Machines
6 * Corporation and others. All Rights Reserved.
7 **********************************************************************
8 * Author: Alan Liu
9 * Created: April 26, 2004
10 * Since: ICU 3.0
11 **********************************************************************
12 */
13 #ifndef __MEASUREUNIT_H__
14 #define __MEASUREUNIT_H__
15 
16 #include "unicode/utypes.h"
17 
18 #if U_SHOW_CPLUSPLUS_API
19 
20 #if !UCONFIG_NO_FORMATTING
21 
22 #include <utility>
23 #include "unicode/unistr.h"
24 #include "unicode/localpointer.h"
25 
31 U_NAMESPACE_BEGIN
32 
33 class StringEnumeration;
34 class MeasureUnitImpl;
35 
36 namespace number {
37 namespace impl {
38 class LongNameHandler;
39 }
40 } // namespace number
41 
64 
71 
78 };
79 
80 
91 typedef enum UMeasurePrefix {
102 
109 
110 #ifndef U_HIDE_INTERNAL_API
117 #endif /* U_HIDE_INTERNAL_API */
118 
125 
132 
139 
146 
153 
160 
167 
174 
181 
188 
195 
202 
209 
216 
223 
230 
237 
244 
251 
252 #ifndef U_HIDE_INTERNAL_API
259 #endif // U_HIDE_INTERNAL_API
260 
261  // Cannot conditionalize the following with #ifndef U_HIDE_INTERNAL_API,
262  // used in definitions of non-internal enum values
269 
276 
277 #ifndef U_HIDE_INTERNAL_API
284 #endif // U_HIDE_INTERNAL_API
285 
292 
299 
306 
313 
320 
327 
334 
335 #ifndef U_HIDE_INTERNAL_API
342 #endif // U_HIDE_INTERNAL_API
344 
352 U_CAPI int32_t U_EXPORT2 umeas_getPrefixBase(UMeasurePrefix unitPrefix);
353 
360 U_CAPI int32_t U_EXPORT2 umeas_getPrefixPower(UMeasurePrefix unitPrefix);
361 
370  public:
371 
379 
384  MeasureUnit(const MeasureUnit &other);
385 
390  MeasureUnit(MeasureUnit &&other) noexcept;
391 
405  static MeasureUnit forIdentifier(StringPiece identifier, UErrorCode& status);
406 
412 
417  MeasureUnit &operator=(MeasureUnit &&other) noexcept;
418 
424  virtual MeasureUnit* clone() const;
425 
430  virtual ~MeasureUnit();
431 
437  virtual bool operator==(const UObject& other) const;
438 
444  bool operator!=(const UObject& other) const {
445  return !(*this == other);
446  }
447 
455  const char *getType() const;
456 
464  const char *getSubtype() const;
465 
472  const char* getIdentifier() const;
473 
482 
498 
514 
529  MeasureUnit withDimensionality(int32_t dimensionality, UErrorCode& status) const;
530 
544  int32_t getDimensionality(UErrorCode& status) const;
545 
559 
577  MeasureUnit product(const MeasureUnit& other, UErrorCode& status) const;
578 
594  inline std::pair<LocalArray<MeasureUnit>, int32_t> splitToSingleUnits(UErrorCode& status) const;
595 
607  static int32_t getAvailable(
608  MeasureUnit *destArray,
609  int32_t destCapacity,
610  UErrorCode &errorCode);
611 
624  static int32_t getAvailable(
625  const char *type,
626  MeasureUnit *destArray,
627  int32_t destCapacity,
628  UErrorCode &errorCode);
629 
639 
651  static UClassID U_EXPORT2 getStaticClassID(void);
652 
664  virtual UClassID getDynamicClassID(void) const override;
665 
666 #ifndef U_HIDE_INTERNAL_API
672  int32_t getOffset() const;
673 #endif /* U_HIDE_INTERNAL_API */
674 
675 // All code between the "Start generated createXXX methods" comment and
676 // the "End generated createXXX methods" comment is auto generated code
677 // and must not be edited manually. For instructions on how to correctly
678 // update this code, refer to:
679 // docs/processes/release/tasks/updating-measure-unit.md
680 //
681 // Start generated createXXX methods
682 
691 
698 
707 
714 
723 
730 
739 
746 
755 
762 
771 
778 
787 
794 
803 
810 
819 
826 
835 
842 
851 
858 
867 
874 
883 
890 
899 
906 
915 
922 
931 
938 
947 
954 
963 
970 
979 
986 
995 
1002 
1011 
1018 
1027 
1034 
1043 
1050 
1059 
1066 
1075 
1082 
1091 
1098 
1107 
1114 
1123 
1130 
1139 
1146 
1155 
1162 
1171 
1178 
1187 
1194 
1203 
1210 
1219 
1226 
1235 
1242 
1251 
1258 
1267 
1274 
1283 
1290 
1299 
1306 
1315 
1322 
1331 
1338 
1347 
1354 
1363 
1370 
1379 
1386 
1395 
1402 
1411 
1418 
1427 
1434 
1443 
1450 
1459 
1466 
1475 
1482 
1491 
1498 
1507 
1514 
1523 
1530 
1539 
1546 
1555 
1562 
1571 
1578 
1587 
1594 
1603 
1610 
1619 
1626 
1635 
1642 
1651 
1658 
1667 
1674 
1683 
1690 
1699 
1706 
1715 
1722 
1731 
1738 
1747 
1754 
1763 
1770 
1779 
1786 
1795 
1802 
1811 
1818 
1827 
1834 
1843 
1850 
1859 
1866 
1875 
1882 
1891 
1898 
1907 
1914 
1923 
1930 
1939 
1946 
1955 
1962 
1971 
1978 
1987 
1994 
2002  static MeasureUnit *createEm(UErrorCode &status);
2003 
2009  static MeasureUnit getEm();
2010 
2019 
2026 
2035 
2042 
2051 
2058 
2067 
2074 
2083 
2090 
2099 
2106 
2115 
2122 
2131 
2138 
2147 
2154 
2163 
2170 
2179 
2186 
2195 
2202 
2211 
2218 
2227 
2234 
2243 
2250 
2259 
2266 
2275 
2282 
2291 
2298 
2307 
2314 
2323 
2330 
2339 
2346 
2355 
2362 
2371 
2378 
2387 
2394 
2403 
2410 
2419 
2426 
2435 
2442 
2451 
2458 
2467 
2474 
2483 
2490 
2499 
2506 
2515 
2522 
2531 
2538 
2547 
2554 
2563 
2570 
2579 
2586 
2599 
2610 
2619 
2626 
2635 
2642 
2651 
2658 
2667 
2674 
2683 
2690 
2699 
2706 
2715 
2722 
2731 
2738 
2747 
2754 
2763 
2770 
2779 
2786 
2795 
2802 
2811 
2818 
2827 
2834 
2843 
2850 
2859 
2866 
2875 
2882 
2883 #ifndef U_HIDE_DRAFT_API
2892 
2899 #endif /* U_HIDE_DRAFT_API */
2900 
2909 
2916 
2925 
2932 
2941 
2948 
2957 
2964 
2973 
2980 
2989 
2996 
3005 
3012 
3021 
3028 
3029 #ifndef U_HIDE_DRAFT_API
3038 
3045 #endif /* U_HIDE_DRAFT_API */
3046 
3055 
3062 
3071 
3078 
3087 
3094 
3103 
3110 
3119 
3126 
3135 
3142 
3151 
3158 
3167 
3174 
3183 
3190 
3199 
3206 
3215 
3222 
3231 
3238 
3247 
3254 
3263 
3270 
3279 
3286 
3295 
3302 
3311 
3318 
3327 
3334 
3343 
3350 
3359 
3366 
3375 
3382 
3391 
3398 
3407 
3414 
3423 
3430 
3439 
3446 
3455 
3462 
3471 
3478 
3487 
3494 
3503 
3510 
3519 
3526 
3535 
3542 
3551 
3558 
3567 
3574 
3583 
3590 
3599 
3606 
3615 
3622 
3631 
3638 
3647 
3654 
3663 
3670 
3679 
3686 
3695 
3702 
3711 
3718 
3727 
3734 
3743 
3750 
3751 // End generated createXXX methods
3752 
3753  protected:
3754 
3755 #ifndef U_HIDE_INTERNAL_API
3760  void initTime(const char *timeId);
3761 
3766  void initCurrency(StringPiece isoCurrency);
3767 
3768 #endif /* U_HIDE_INTERNAL_API */
3769 
3770 private:
3771 
3772  // Used by new draft APIs in ICU 67. If non-null, fImpl is owned by the
3773  // MeasureUnit.
3774  MeasureUnitImpl* fImpl;
3775 
3776  // An index into a static string list in measunit.cpp. If set to -1, fImpl
3777  // is in use instead of fTypeId and fSubTypeId.
3778  int16_t fSubTypeId;
3779  // An index into a static string list in measunit.cpp. If set to -1, fImpl
3780  // is in use instead of fTypeId and fSubTypeId.
3781  int8_t fTypeId;
3782 
3783  MeasureUnit(int32_t typeId, int32_t subTypeId);
3784  MeasureUnit(MeasureUnitImpl&& impl);
3785  void setTo(int32_t typeId, int32_t subTypeId);
3786  static MeasureUnit *create(int typeId, int subTypeId, UErrorCode &status);
3787 
3795  static bool findBySubType(StringPiece subType, MeasureUnit* output);
3796 
3798  LocalArray<MeasureUnit> splitToSingleUnitsImpl(int32_t& outCount, UErrorCode& status) const;
3799 
3800  friend class MeasureUnitImpl;
3801 
3802  // For access to findBySubType
3803  friend class number::impl::LongNameHandler;
3804 };
3805 
3806 // inline impl of @stable ICU 68 method
3807 inline std::pair<LocalArray<MeasureUnit>, int32_t>
3808 MeasureUnit::splitToSingleUnits(UErrorCode& status) const {
3809  int32_t length;
3810  auto array = splitToSingleUnitsImpl(length, status);
3811  return std::make_pair(std::move(array), length);
3812 }
3813 
3814 U_NAMESPACE_END
3815 
3816 #endif // !UNCONFIG_NO_FORMATTING
3817 
3818 #endif /* U_SHOW_CPLUSPLUS_API */
3819 
3820 #endif // __MEASUREUNIT_H__
"Smart pointer" class, deletes objects via the C++ array delete[] operator.
Definition: localpointer.h:366
A unit such as length, mass, volume, currency, etc.
Definition: measunit.h:369
static MeasureUnit * createGasolineEnergyDensity(UErrorCode &status)
Returns by pointer, unit of pressure: gasoline-energy-density.
static MeasureUnit * createArcSecond(UErrorCode &status)
Returns by pointer, unit of angle: arc-second.
static MeasureUnit getBritishThermalUnit()
Returns by value, unit of energy: british-thermal-unit.
static MeasureUnit getInch()
Returns by value, unit of length: inch.
static MeasureUnit * createNewton(UErrorCode &status)
Returns by pointer, unit of force: newton.
static MeasureUnit * createOhm(UErrorCode &status)
Returns by pointer, unit of electric: ohm.
static MeasureUnit getMilligramPerDeciliter()
Returns by value, unit of concentr: milligram-per-deciliter.
static MeasureUnit * createMegabyte(UErrorCode &status)
Returns by pointer, unit of digital: megabyte.
static MeasureUnit * createCubicFoot(UErrorCode &status)
Returns by pointer, unit of volume: cubic-foot.
static MeasureUnit * createMillimeter(UErrorCode &status)
Returns by pointer, unit of length: millimeter.
static int32_t getAvailable(const char *type, MeasureUnit *destArray, int32_t destCapacity, UErrorCode &errorCode)
getAvailable gets all of the available units for a specific type.
static MeasureUnit getKilobit()
Returns by value, unit of digital: kilobit.
static MeasureUnit getLiterPerKilometer()
Returns by value, unit of consumption: liter-per-kilometer.
static MeasureUnit * createGigabyte(UErrorCode &status)
Returns by pointer, unit of digital: gigabyte.
static MeasureUnit getMillimolePerLiter()
Returns by value, unit of concentr: millimole-per-liter.
static MeasureUnit getDegree()
Returns by value, unit of angle: degree.
static MeasureUnit getMilePerGallon()
Returns by value, unit of consumption: mile-per-gallon.
static MeasureUnit getKilohertz()
Returns by value, unit of frequency: kilohertz.
static MeasureUnit * createAcreFoot(UErrorCode &status)
Returns by pointer, unit of volume: acre-foot.
static MeasureUnit getMinute()
Returns by value, unit of duration: minute.
static MeasureUnit getTerabyte()
Returns by value, unit of digital: terabyte.
static MeasureUnit * createCubicMile(UErrorCode &status)
Returns by pointer, unit of volume: cubic-mile.
static MeasureUnit getMillimeterOfMercury()
Returns by value, unit of pressure: millimeter-ofhg.
static MeasureUnit getCubicYard()
Returns by value, unit of volume: cubic-yard.
void initCurrency(StringPiece isoCurrency)
For ICU use only.
static MeasureUnit getGenericTemperature()
Returns by value, unit of temperature: generic.
static MeasureUnit getKilowattHour()
Returns by value, unit of energy: kilowatt-hour.
static MeasureUnit getBit()
Returns by value, unit of digital: bit.
static MeasureUnit * createLiterPerKilometer(UErrorCode &status)
Returns by pointer, unit of consumption: liter-per-kilometer.
static MeasureUnit getStone()
Returns by value, unit of mass: stone.
static MeasureUnit getParsec()
Returns by value, unit of length: parsec.
static MeasureUnit getKilopascal()
Returns by value, unit of pressure: kilopascal.
static MeasureUnit getHour()
Returns by value, unit of duration: hour.
static MeasureUnit getPoundFoot()
Returns by value, unit of torque: pound-force-foot.
static MeasureUnit * createAstronomicalUnit(UErrorCode &status)
Returns by pointer, unit of length: astronomical-unit.
static MeasureUnit * createJigger(UErrorCode &status)
Returns by pointer, unit of volume: jigger.
static MeasureUnit getPixelPerCentimeter()
Returns by value, unit of graphics: pixel-per-centimeter.
static MeasureUnit * createCubicMeter(UErrorCode &status)
Returns by pointer, unit of volume: cubic-meter.
static MeasureUnit getMegabyte()
Returns by value, unit of digital: megabyte.
static MeasureUnit * createAtmosphere(UErrorCode &status)
Returns by pointer, unit of pressure: atmosphere.
static MeasureUnit * createCup(UErrorCode &status)
Returns by pointer, unit of volume: cup.
static MeasureUnit getMile()
Returns by value, unit of length: mile.
static MeasureUnit getPermyriad()
Returns by value, unit of concentr: permyriad.
static MeasureUnit * createPint(UErrorCode &status)
Returns by pointer, unit of volume: pint.
static MeasureUnit * createKilocalorie(UErrorCode &status)
Returns by pointer, unit of energy: kilocalorie.
static MeasureUnit * createMegabit(UErrorCode &status)
Returns by pointer, unit of digital: megabit.
static MeasureUnit * createMeter(UErrorCode &status)
Returns by pointer, unit of length: meter.
static MeasureUnit getAstronomicalUnit()
Returns by value, unit of length: astronomical-unit.
static MeasureUnit getBarrel()
Returns by value, unit of volume: barrel.
static MeasureUnit * createCentury(UErrorCode &status)
Returns by pointer, unit of duration: century.
static MeasureUnit getDalton()
Returns by value, unit of mass: dalton.
static MeasureUnit * createPicometer(UErrorCode &status)
Returns by pointer, unit of length: picometer.
static MeasureUnit getMilePerHour()
Returns by value, unit of speed: mile-per-hour.
static MeasureUnit getTerabit()
Returns by value, unit of digital: terabit.
static MeasureUnit getDotPerCentimeter()
Returns by value, unit of graphics: dot-per-centimeter.
static MeasureUnit * createSquareInch(UErrorCode &status)
Returns by pointer, unit of area: square-inch.
static MeasureUnit * createLiter(UErrorCode &status)
Returns by pointer, unit of volume: liter.
int32_t getDimensionality(UErrorCode &status) const
Gets the dimensionality (power) of this MeasureUnit.
static MeasureUnit getCalorie()
Returns by value, unit of energy: calorie.
static UClassID getStaticClassID(void)
Return the class ID for this class.
static MeasureUnit * createMinute(UErrorCode &status)
Returns by pointer, unit of duration: minute.
static MeasureUnit getCentimeter()
Returns by value, unit of length: centimeter.
static MeasureUnit getJigger()
Returns by value, unit of volume: jigger.
static MeasureUnit * createBit(UErrorCode &status)
Returns by pointer, unit of digital: bit.
static MeasureUnit * createDeciliter(UErrorCode &status)
Returns by pointer, unit of volume: deciliter.
static MeasureUnit getGigahertz()
Returns by value, unit of frequency: gigahertz.
static MeasureUnit getPixelPerInch()
Returns by value, unit of graphics: pixel-per-inch.
static MeasureUnit * createBar(UErrorCode &status)
Returns by pointer, unit of pressure: bar.
static MeasureUnit getFoodcalorie()
Returns by value, unit of energy: foodcalorie.
static MeasureUnit * createCandela(UErrorCode &status)
Returns by pointer, unit of light: candela.
static MeasureUnit * createMicrometer(UErrorCode &status)
Returns by pointer, unit of length: micrometer.
static MeasureUnit getMicrogram()
Returns by value, unit of mass: microgram.
static MeasureUnit * createKelvin(UErrorCode &status)
Returns by pointer, unit of temperature: kelvin.
static MeasureUnit getSquareKilometer()
Returns by value, unit of area: square-kilometer.
static MeasureUnit getKilometer()
Returns by value, unit of length: kilometer.
static MeasureUnit * createMilligramOfglucosePerDeciliter(UErrorCode &status)
Returns by pointer, unit of concentr: milligram-ofglucose-per-deciliter.
static MeasureUnit getGigabyte()
Returns by value, unit of digital: gigabyte.
static MeasureUnit * createFluidOunce(UErrorCode &status)
Returns by pointer, unit of volume: fluid-ounce.
static MeasureUnit getMilligram()
Returns by value, unit of mass: milligram.
static MeasureUnit getPascal()
Returns by value, unit of pressure: pascal.
static MeasureUnit * createCelsius(UErrorCode &status)
Returns by pointer, unit of temperature: celsius.
static MeasureUnit getRadian()
Returns by value, unit of angle: radian.
static MeasureUnit getPoint()
Returns by value, unit of length: point.
static MeasureUnit getPoundForce()
Returns by value, unit of force: pound-force.
static MeasureUnit * createGram(UErrorCode &status)
Returns by pointer, unit of mass: gram.
static MeasureUnit * createMonth(UErrorCode &status)
Returns by pointer, unit of duration: month.
MeasureUnit product(const MeasureUnit &other, UErrorCode &status) const
Gets the product of this unit with another unit.
static MeasureUnit * createPercent(UErrorCode &status)
Returns by pointer, unit of concentr: percent.
static MeasureUnit getKilocalorie()
Returns by value, unit of energy: kilocalorie.
static MeasureUnit * createThermUs(UErrorCode &status)
Returns by pointer, unit of energy: therm-us.
static MeasureUnit getMicrosecond()
Returns by value, unit of duration: microsecond.
static MeasureUnit * createTablespoon(UErrorCode &status)
Returns by pointer, unit of volume: tablespoon.
static MeasureUnit getBushel()
Returns by value, unit of volume: bushel.
static MeasureUnit * createMegawatt(UErrorCode &status)
Returns by pointer, unit of power: megawatt.
static MeasureUnit * createFoot(UErrorCode &status)
Returns by pointer, unit of length: foot.
static MeasureUnit * createHectopascal(UErrorCode &status)
Returns by pointer, unit of pressure: hectopascal.
virtual UClassID getDynamicClassID(void) const override
Returns a unique class ID POLYMORPHICALLY.
static MeasureUnit * createBushel(UErrorCode &status)
Returns by pointer, unit of volume: bushel.
static MeasureUnit getFluidOunce()
Returns by value, unit of volume: fluid-ounce.
static MeasureUnit getHectoliter()
Returns by value, unit of volume: hectoliter.
static MeasureUnit * createFurlong(UErrorCode &status)
Returns by pointer, unit of length: furlong.
static MeasureUnit * createDot(UErrorCode &status)
Returns by pointer, unit of graphics: dot.
static MeasureUnit getCarat()
Returns by value, unit of mass: carat.
static MeasureUnit * createFahrenheit(UErrorCode &status)
Returns by pointer, unit of temperature: fahrenheit.
static MeasureUnit * createCarat(UErrorCode &status)
Returns by pointer, unit of mass: carat.
static MeasureUnit * createOunceTroy(UErrorCode &status)
Returns by pointer, unit of mass: ounce-troy.
static MeasureUnit getVolt()
Returns by value, unit of electric: volt.
static MeasureUnit * createMillisecond(UErrorCode &status)
Returns by pointer, unit of duration: millisecond.
static MeasureUnit getOunce()
Returns by value, unit of mass: ounce.
static MeasureUnit getHectare()
Returns by value, unit of area: hectare.
static MeasureUnit * createKilobyte(UErrorCode &status)
Returns by pointer, unit of digital: kilobyte.
static MeasureUnit getNanosecond()
Returns by value, unit of duration: nanosecond.
static MeasureUnit * createHour(UErrorCode &status)
Returns by pointer, unit of duration: hour.
static MeasureUnit getEarthMass()
Returns by value, unit of mass: earth-mass.
static MeasureUnit getFahrenheit()
Returns by value, unit of temperature: fahrenheit.
static int32_t getAvailable(MeasureUnit *destArray, int32_t destCapacity, UErrorCode &errorCode)
getAvailable gets all of the available units.
static MeasureUnit getMileScandinavian()
Returns by value, unit of length: mile-scandinavian.
static MeasureUnit * createGallonImperial(UErrorCode &status)
Returns by pointer, unit of volume: gallon-imperial.
static MeasureUnit getMegapascal()
Returns by value, unit of pressure: megapascal.
static MeasureUnit * createRadian(UErrorCode &status)
Returns by pointer, unit of angle: radian.
static MeasureUnit getDeciliter()
Returns by value, unit of volume: deciliter.
static MeasureUnit * createSquareMeter(UErrorCode &status)
Returns by pointer, unit of area: square-meter.
static MeasureUnit getPixel()
Returns by value, unit of graphics: pixel.
MeasureUnit(const MeasureUnit &other)
Copy constructor.
static MeasureUnit getSolarLuminosity()
Returns by value, unit of light: solar-luminosity.
static MeasureUnit getMonthPerson()
Returns by value, unit of duration: month-person.
static MeasureUnit * createDecade(UErrorCode &status)
Returns by pointer, unit of duration: decade.
static MeasureUnit * createKilowatt(UErrorCode &status)
Returns by pointer, unit of power: kilowatt.
static MeasureUnit getCentiliter()
Returns by value, unit of volume: centiliter.
static MeasureUnit * createMeterPerSecondSquared(UErrorCode &status)
Returns by pointer, unit of acceleration: meter-per-square-second.
static MeasureUnit * createMole(UErrorCode &status)
Returns by pointer, unit of concentr: mole.
static MeasureUnit * createDessertSpoonImperial(UErrorCode &status)
Returns by pointer, unit of volume: dessert-spoon-imperial.
static MeasureUnit getPartPerMillion()
Returns by value, unit of concentr: permillion.
static MeasureUnit getMegawatt()
Returns by value, unit of power: megawatt.
static MeasureUnit * createGrain(UErrorCode &status)
Returns by pointer, unit of mass: grain.
UMeasureUnitComplexity getComplexity(UErrorCode &status) const
Compute the complexity of the unit.
static MeasureUnit * createNauticalMile(UErrorCode &status)
Returns by pointer, unit of length: nautical-mile.
static MeasureUnit getGigabit()
Returns by value, unit of digital: gigabit.
static MeasureUnit getTon()
Returns by value, unit of mass: ton.
static MeasureUnit * createHectare(UErrorCode &status)
Returns by pointer, unit of area: hectare.
static MeasureUnit getBeaufort()
Returns by value, unit of speed: beaufort.
static MeasureUnit * createMile(UErrorCode &status)
Returns by pointer, unit of length: mile.
static MeasureUnit getFurlong()
Returns by value, unit of length: furlong.
static MeasureUnit getLightYear()
Returns by value, unit of length: light-year.
static MeasureUnit getJoule()
Returns by value, unit of energy: joule.
static MeasureUnit * createCubicYard(UErrorCode &status)
Returns by pointer, unit of volume: cubic-yard.
static MeasureUnit getTeaspoon()
Returns by value, unit of volume: teaspoon.
static MeasureUnit getWeekPerson()
Returns by value, unit of duration: week-person.
static MeasureUnit * createTerabit(UErrorCode &status)
Returns by pointer, unit of digital: terabit.
static MeasureUnit getLiter()
Returns by value, unit of volume: liter.
static MeasureUnit getPermille()
Returns by value, unit of concentr: permille.
static MeasureUnit * createDegree(UErrorCode &status)
Returns by pointer, unit of angle: degree.
static MeasureUnit * createLumen(UErrorCode &status)
Returns by pointer, unit of light: lumen.
static MeasureUnit getYard()
Returns by value, unit of length: yard.
static MeasureUnit getByte()
Returns by value, unit of digital: byte.
static MeasureUnit getKilogram()
Returns by value, unit of mass: kilogram.
static MeasureUnit * createSolarMass(UErrorCode &status)
Returns by pointer, unit of mass: solar-mass.
static MeasureUnit * createMegahertz(UErrorCode &status)
Returns by pointer, unit of frequency: megahertz.
static MeasureUnit * createMicrosecond(UErrorCode &status)
Returns by pointer, unit of duration: microsecond.
static MeasureUnit getDessertSpoon()
Returns by value, unit of volume: dessert-spoon.
static MeasureUnit getDrop()
Returns by value, unit of volume: drop.
static MeasureUnit * createQuart(UErrorCode &status)
Returns by pointer, unit of volume: quart.
static MeasureUnit * createDayPerson(UErrorCode &status)
Returns by pointer, unit of duration: day-person.
UMeasurePrefix getPrefix(UErrorCode &status) const
Returns the current SI or binary prefix of this SINGLE unit.
static MeasureUnit * createWeek(UErrorCode &status)
Returns by pointer, unit of duration: week.
const char * getSubtype() const
Get the sub type.
static MeasureUnit * createYearPerson(UErrorCode &status)
Returns by pointer, unit of duration: year-person.
static MeasureUnit * createKilometerPerHour(UErrorCode &status)
Returns by pointer, unit of speed: kilometer-per-hour.
static MeasureUnit * createPintMetric(UErrorCode &status)
Returns by pointer, unit of volume: pint-metric.
static MeasureUnit getSquareYard()
Returns by value, unit of area: square-yard.
static MeasureUnit * createHectoliter(UErrorCode &status)
Returns by pointer, unit of volume: hectoliter.
static MeasureUnit * createPartPerMillion(UErrorCode &status)
Returns by pointer, unit of concentr: permillion.
static MeasureUnit * createPixel(UErrorCode &status)
Returns by pointer, unit of graphics: pixel.
static MeasureUnit getDot()
Returns by value, unit of graphics: dot.
static MeasureUnit * createCupMetric(UErrorCode &status)
Returns by pointer, unit of volume: cup-metric.
static MeasureUnit getDunam()
Returns by value, unit of area: dunam.
static MeasureUnit getDessertSpoonImperial()
Returns by value, unit of volume: dessert-spoon-imperial.
static MeasureUnit * createTerabyte(UErrorCode &status)
Returns by pointer, unit of digital: terabyte.
static MeasureUnit getKilowatt()
Returns by value, unit of power: kilowatt.
static MeasureUnit getSolarRadius()
Returns by value, unit of length: solar-radius.
static MeasureUnit getMegapixel()
Returns by value, unit of graphics: megapixel.
static MeasureUnit getLux()
Returns by value, unit of light: lux.
static MeasureUnit getMillimeter()
Returns by value, unit of length: millimeter.
static MeasureUnit * createMonthPerson(UErrorCode &status)
Returns by pointer, unit of duration: month-person.
static MeasureUnit * createNanometer(UErrorCode &status)
Returns by pointer, unit of length: nanometer.
static MeasureUnit * createMileScandinavian(UErrorCode &status)
Returns by pointer, unit of length: mile-scandinavian.
static MeasureUnit * createSquareMile(UErrorCode &status)
Returns by pointer, unit of area: square-mile.
static MeasureUnit * createDunam(UErrorCode &status)
Returns by pointer, unit of area: dunam.
static MeasureUnit getMilliwatt()
Returns by value, unit of power: milliwatt.
static MeasureUnit * createStone(UErrorCode &status)
Returns by pointer, unit of mass: stone.
static MeasureUnit getOunceTroy()
Returns by value, unit of mass: ounce-troy.
static MeasureUnit * createKilowattHour(UErrorCode &status)
Returns by pointer, unit of energy: kilowatt-hour.
static MeasureUnit * createDecimeter(UErrorCode &status)
Returns by pointer, unit of length: decimeter.
static MeasureUnit getNewtonMeter()
Returns by value, unit of torque: newton-meter.
static MeasureUnit * createDay(UErrorCode &status)
Returns by pointer, unit of duration: day.
static MeasureUnit getAcreFoot()
Returns by value, unit of volume: acre-foot.
static MeasureUnit * createMillimolePerLiter(UErrorCode &status)
Returns by pointer, unit of concentr: millimole-per-liter.
static MeasureUnit * createRevolutionAngle(UErrorCode &status)
Returns by pointer, unit of angle: revolution.
static MeasureUnit * createInch(UErrorCode &status)
Returns by pointer, unit of length: inch.
static MeasureUnit getCandela()
Returns by value, unit of light: candela.
static MeasureUnit getNauticalMile()
Returns by value, unit of length: nautical-mile.
static MeasureUnit * createPixelPerInch(UErrorCode &status)
Returns by pointer, unit of graphics: pixel-per-inch.
static MeasureUnit * createKilopascal(UErrorCode &status)
Returns by pointer, unit of pressure: kilopascal.
static MeasureUnit getMegaliter()
Returns by value, unit of volume: megaliter.
static MeasureUnit * createSecond(UErrorCode &status)
Returns by pointer, unit of duration: second.
static MeasureUnit * createCentiliter(UErrorCode &status)
Returns by pointer, unit of volume: centiliter.
static MeasureUnit getWatt()
Returns by value, unit of power: watt.
static MeasureUnit * createCentimeter(UErrorCode &status)
Returns by pointer, unit of length: centimeter.
static MeasureUnit getFluidOunceImperial()
Returns by value, unit of volume: fluid-ounce-imperial.
static MeasureUnit getPintMetric()
Returns by value, unit of volume: pint-metric.
static MeasureUnit getSquareFoot()
Returns by value, unit of area: square-foot.
static MeasureUnit getGigawatt()
Returns by value, unit of power: gigawatt.
static MeasureUnit * createSolarLuminosity(UErrorCode &status)
Returns by pointer, unit of light: solar-luminosity.
static MeasureUnit * createElectronvolt(UErrorCode &status)
Returns by pointer, unit of energy: electronvolt.
static MeasureUnit * createCubicCentimeter(UErrorCode &status)
Returns by pointer, unit of volume: cubic-centimeter.
static MeasureUnit * createMegapascal(UErrorCode &status)
Returns by pointer, unit of pressure: megapascal.
static MeasureUnit * createKilogram(UErrorCode &status)
Returns by pointer, unit of mass: kilogram.
static MeasureUnit getMilliampere()
Returns by value, unit of electric: milliampere.
static MeasureUnit getDram()
Returns by value, unit of volume: dram.
static MeasureUnit * createGigahertz(UErrorCode &status)
Returns by pointer, unit of frequency: gigahertz.
static MeasureUnit * createSquareYard(UErrorCode &status)
Returns by pointer, unit of area: square-yard.
static MeasureUnit getHectopascal()
Returns by value, unit of pressure: hectopascal.
static MeasureUnit * createDotPerCentimeter(UErrorCode &status)
Returns by pointer, unit of graphics: dot-per-centimeter.
static MeasureUnit * createDessertSpoon(UErrorCode &status)
Returns by pointer, unit of volume: dessert-spoon.
static MeasureUnit getSquareMeter()
Returns by value, unit of area: square-meter.
static MeasureUnit getKilowattHourPer100Kilometer()
Returns by value, unit of force: kilowatt-hour-per-100-kilometer.
virtual MeasureUnit * clone() const
Returns a polymorphic clone of this object.
static MeasureUnit * createAcre(UErrorCode &status)
Returns by pointer, unit of area: acre.
static MeasureUnit getCupMetric()
Returns by value, unit of volume: cup-metric.
static MeasureUnit * createDalton(UErrorCode &status)
Returns by pointer, unit of mass: dalton.
static MeasureUnit * createKarat(UErrorCode &status)
Returns by pointer, unit of concentr: karat.
static MeasureUnit getMillisecond()
Returns by value, unit of duration: millisecond.
static MeasureUnit * createYard(UErrorCode &status)
Returns by pointer, unit of length: yard.
static MeasureUnit * createBritishThermalUnit(UErrorCode &status)
Returns by pointer, unit of energy: british-thermal-unit.
static MeasureUnit * createKilobit(UErrorCode &status)
Returns by pointer, unit of digital: kilobit.
static MeasureUnit * createTon(UErrorCode &status)
Returns by pointer, unit of mass: ton.
static MeasureUnit * createDrop(UErrorCode &status)
Returns by pointer, unit of volume: drop.
static MeasureUnit * createMilePerHour(UErrorCode &status)
Returns by pointer, unit of speed: mile-per-hour.
static MeasureUnit * createMilliwatt(UErrorCode &status)
Returns by pointer, unit of power: milliwatt.
static MeasureUnit * createMillibar(UErrorCode &status)
Returns by pointer, unit of pressure: millibar.
static MeasureUnit * createItem(UErrorCode &status)
Returns by pointer, unit of concentr: item.
static MeasureUnit * createPoundPerSquareInch(UErrorCode &status)
Returns by pointer, unit of pressure: pound-force-per-square-inch.
static MeasureUnit getArcMinute()
Returns by value, unit of angle: arc-minute.
MeasureUnit(MeasureUnit &&other) noexcept
Move constructor.
static MeasureUnit forIdentifier(StringPiece identifier, UErrorCode &status)
Construct a MeasureUnit from a CLDR Core Unit Identifier, defined in UTS.
static MeasureUnit getItem()
Returns by value, unit of concentr: item.
MeasureUnit & operator=(const MeasureUnit &other)
Copy assignment operator.
static MeasureUnit * createGallon(UErrorCode &status)
Returns by pointer, unit of volume: gallon.
static MeasureUnit getMillibar()
Returns by value, unit of pressure: millibar.
static MeasureUnit getPetabyte()
Returns by value, unit of digital: petabyte.
static MeasureUnit getYearPerson()
Returns by value, unit of duration: year-person.
static MeasureUnit getGrain()
Returns by value, unit of mass: grain.
MeasureUnit()
Default constructor.
static MeasureUnit getDayPerson()
Returns by value, unit of duration: day-person.
static MeasureUnit * createMilePerGallon(UErrorCode &status)
Returns by pointer, unit of consumption: mile-per-gallon.
static MeasureUnit * createMicrogram(UErrorCode &status)
Returns by pointer, unit of mass: microgram.
const char * getIdentifier() const
Get CLDR Unit Identifier for this MeasureUnit, as defined in UTS 35.
static MeasureUnit getNanometer()
Returns by value, unit of length: nanometer.
static MeasureUnit getGram()
Returns by value, unit of mass: gram.
static MeasureUnit getSquareInch()
Returns by value, unit of area: square-inch.
static MeasureUnit * createBarrel(UErrorCode &status)
Returns by pointer, unit of volume: barrel.
static MeasureUnit getAtmosphere()
Returns by value, unit of pressure: atmosphere.
static MeasureUnit getKarat()
Returns by value, unit of concentr: karat.
static MeasureUnit * createMilligramPerDeciliter(UErrorCode &status)
Returns by pointer, unit of concentr: milligram-per-deciliter.
static MeasureUnit getEarthRadius()
Returns by value, unit of length: earth-radius.
static MeasureUnit getMole()
Returns by value, unit of concentr: mole.
static MeasureUnit getMilePerGallonImperial()
Returns by value, unit of consumption: mile-per-gallon-imperial.
static MeasureUnit getMegahertz()
Returns by value, unit of frequency: megahertz.
static MeasureUnit * createPoint(UErrorCode &status)
Returns by pointer, unit of length: point.
static MeasureUnit * createHorsepower(UErrorCode &status)
Returns by pointer, unit of power: horsepower.
const char * getType() const
Get the type.
static MeasureUnit * createSquareCentimeter(UErrorCode &status)
Returns by pointer, unit of area: square-centimeter.
static MeasureUnit getQuartImperial()
Returns by value, unit of volume: quart-imperial.
static MeasureUnit * createGigabit(UErrorCode &status)
Returns by pointer, unit of digital: gigabit.
static MeasureUnit * createWeekPerson(UErrorCode &status)
Returns by pointer, unit of duration: week-person.
static MeasureUnit getMegabit()
Returns by value, unit of digital: megabit.
static MeasureUnit * createEm(UErrorCode &status)
Returns by pointer, unit of graphics: em.
static MeasureUnit * createInchHg(UErrorCode &status)
Returns by pointer, unit of pressure: inch-ofhg.
static MeasureUnit * createPermille(UErrorCode &status)
Returns by pointer, unit of concentr: permille.
static MeasureUnit getHertz()
Returns by value, unit of frequency: hertz.
static MeasureUnit * createLiterPer100Kilometers(UErrorCode &status)
Returns by pointer, unit of consumption: liter-per-100-kilometer.
static MeasureUnit getTonne()
Returns by value, unit of mass: tonne.
static MeasureUnit getKilobyte()
Returns by value, unit of digital: kilobyte.
static MeasureUnit * createPoundFoot(UErrorCode &status)
Returns by pointer, unit of torque: pound-force-foot.
static MeasureUnit getMeterPerSecond()
Returns by value, unit of speed: meter-per-second.
virtual ~MeasureUnit()
Destructor.
static MeasureUnit getMilliliter()
Returns by value, unit of volume: milliliter.
static MeasureUnit getDay()
Returns by value, unit of duration: day.
static MeasureUnit * createMilligram(UErrorCode &status)
Returns by pointer, unit of mass: milligram.
MeasureUnit reciprocal(UErrorCode &status) const
Gets the reciprocal of this MeasureUnit, with the numerator and denominator flipped.
static MeasureUnit getQuarter()
Returns by value, unit of duration: quarter.
static MeasureUnit * createGForce(UErrorCode &status)
Returns by pointer, unit of acceleration: g-force.
static StringEnumeration * getAvailableTypes(UErrorCode &errorCode)
getAvailableTypes gets all of the available types.
static MeasureUnit * createQuartImperial(UErrorCode &status)
Returns by pointer, unit of volume: quart-imperial.
static MeasureUnit * createMegaliter(UErrorCode &status)
Returns by pointer, unit of volume: megaliter.
static MeasureUnit getCubicFoot()
Returns by value, unit of volume: cubic-foot.
static MeasureUnit * createKilojoule(UErrorCode &status)
Returns by pointer, unit of energy: kilojoule.
static MeasureUnit * createHertz(UErrorCode &status)
Returns by pointer, unit of frequency: hertz.
int32_t getOffset() const
ICU use only.
static MeasureUnit getPound()
Returns by value, unit of mass: pound.
static MeasureUnit * createPixelPerCentimeter(UErrorCode &status)
Returns by pointer, unit of graphics: pixel-per-centimeter.
static MeasureUnit * createNewtonMeter(UErrorCode &status)
Returns by pointer, unit of torque: newton-meter.
static MeasureUnit getCubicMile()
Returns by value, unit of volume: cubic-mile.
bool operator!=(const UObject &other) const
Inequality operator.
Definition: measunit.h:444
static MeasureUnit getOhm()
Returns by value, unit of electric: ohm.
static MeasureUnit getGasolineEnergyDensity()
Returns by value, unit of pressure: gasoline-energy-density.
static MeasureUnit * createBeaufort(UErrorCode &status)
Returns by pointer, unit of speed: beaufort.
static MeasureUnit * createMegapixel(UErrorCode &status)
Returns by pointer, unit of graphics: megapixel.
static MeasureUnit getPicometer()
Returns by value, unit of length: picometer.
static MeasureUnit getFathom()
Returns by value, unit of length: fathom.
static MeasureUnit getMonth()
Returns by value, unit of duration: month.
static MeasureUnit getCentury()
Returns by value, unit of duration: century.
static MeasureUnit * createMilliampere(UErrorCode &status)
Returns by pointer, unit of electric: milliampere.
static MeasureUnit * createAmpere(UErrorCode &status)
Returns by pointer, unit of electric: ampere.
static MeasureUnit getCubicInch()
Returns by value, unit of volume: cubic-inch.
static MeasureUnit * createParsec(UErrorCode &status)
Returns by pointer, unit of length: parsec.
static MeasureUnit * createYear(UErrorCode &status)
Returns by pointer, unit of duration: year.
static MeasureUnit * createCalorie(UErrorCode &status)
Returns by pointer, unit of energy: calorie.
static MeasureUnit * createFluidOunceImperial(UErrorCode &status)
Returns by pointer, unit of volume: fluid-ounce-imperial.
static MeasureUnit getYear()
Returns by value, unit of duration: year.
static MeasureUnit * createPinch(UErrorCode &status)
Returns by pointer, unit of volume: pinch.
static MeasureUnit * createMillimeterOfMercury(UErrorCode &status)
Returns by pointer, unit of pressure: millimeter-ofhg.
static MeasureUnit * createEarthRadius(UErrorCode &status)
Returns by pointer, unit of length: earth-radius.
static MeasureUnit * createDotPerInch(UErrorCode &status)
Returns by pointer, unit of graphics: dot-per-inch.
static MeasureUnit * createPound(UErrorCode &status)
Returns by pointer, unit of mass: pound.
static MeasureUnit getPoundPerSquareInch()
Returns by value, unit of pressure: pound-force-per-square-inch.
static MeasureUnit getInchHg()
Returns by value, unit of pressure: inch-ofhg.
static MeasureUnit getLiterPer100Kilometers()
Returns by value, unit of consumption: liter-per-100-kilometer.
static MeasureUnit getAmpere()
Returns by value, unit of electric: ampere.
static MeasureUnit * createKilowattHourPer100Kilometer(UErrorCode &status)
Returns by pointer, unit of force: kilowatt-hour-per-100-kilometer.
static MeasureUnit * createKilometer(UErrorCode &status)
Returns by pointer, unit of length: kilometer.
static MeasureUnit getTablespoon()
Returns by value, unit of volume: tablespoon.
static MeasureUnit * createPermyriad(UErrorCode &status)
Returns by pointer, unit of concentr: permyriad.
static MeasureUnit getCup()
Returns by value, unit of volume: cup.
static MeasureUnit * createPetabyte(UErrorCode &status)
Returns by pointer, unit of digital: petabyte.
MeasureUnit withPrefix(UMeasurePrefix prefix, UErrorCode &status) const
Creates a MeasureUnit which is this SINGLE unit augmented with the specified prefix.
static MeasureUnit * createEarthMass(UErrorCode &status)
Returns by pointer, unit of mass: earth-mass.
static MeasureUnit * createFoodcalorie(UErrorCode &status)
Returns by pointer, unit of energy: foodcalorie.
static MeasureUnit * createFathom(UErrorCode &status)
Returns by pointer, unit of length: fathom.
static MeasureUnit getPercent()
Returns by value, unit of concentr: percent.
static MeasureUnit getRevolutionAngle()
Returns by value, unit of angle: revolution.
static MeasureUnit getSecond()
Returns by value, unit of duration: second.
static MeasureUnit * createWatt(UErrorCode &status)
Returns by pointer, unit of power: watt.
static MeasureUnit * createMetricTon(UErrorCode &status)
Returns by pointer, unit of mass: metric-ton (renamed to tonne in CLDR 42 / ICU 72).
static MeasureUnit * createByte(UErrorCode &status)
Returns by pointer, unit of digital: byte.
static MeasureUnit * createMilliliter(UErrorCode &status)
Returns by pointer, unit of volume: milliliter.
static MeasureUnit * createArcMinute(UErrorCode &status)
Returns by pointer, unit of angle: arc-minute.
static MeasureUnit * createLightYear(UErrorCode &status)
Returns by pointer, unit of length: light-year.
static MeasureUnit getQuart()
Returns by value, unit of volume: quart.
static MeasureUnit getBar()
Returns by value, unit of pressure: bar.
static MeasureUnit getElectronvolt()
Returns by value, unit of energy: electronvolt.
static MeasureUnit getKelvin()
Returns by value, unit of temperature: kelvin.
static MeasureUnit getEm()
Returns by value, unit of graphics: em.
static MeasureUnit * createJoule(UErrorCode &status)
Returns by pointer, unit of energy: joule.
static MeasureUnit * createSquareFoot(UErrorCode &status)
Returns by pointer, unit of area: square-foot.
static MeasureUnit * createPoundForce(UErrorCode &status)
Returns by pointer, unit of force: pound-force.
static MeasureUnit * createMilePerGallonImperial(UErrorCode &status)
Returns by pointer, unit of consumption: mile-per-gallon-imperial.
static MeasureUnit * createGigawatt(UErrorCode &status)
Returns by pointer, unit of power: gigawatt.
static MeasureUnit getKilometerPerHour()
Returns by value, unit of speed: kilometer-per-hour.
static MeasureUnit getCubicMeter()
Returns by value, unit of volume: cubic-meter.
static MeasureUnit getCubicCentimeter()
Returns by value, unit of volume: cubic-centimeter.
static MeasureUnit getGallon()
Returns by value, unit of volume: gallon.
void initTime(const char *timeId)
For ICU use only.
MeasureUnit & operator=(MeasureUnit &&other) noexcept
Move assignment operator.
static MeasureUnit * createPascal(UErrorCode &status)
Returns by pointer, unit of pressure: pascal.
static MeasureUnit getKnot()
Returns by value, unit of speed: knot.
static MeasureUnit getFoot()
Returns by value, unit of length: foot.
static MeasureUnit getMicrometer()
Returns by value, unit of length: micrometer.
static MeasureUnit * createVolt(UErrorCode &status)
Returns by pointer, unit of electric: volt.
static MeasureUnit * createMeterPerSecond(UErrorCode &status)
Returns by pointer, unit of speed: meter-per-second.
static MeasureUnit getAcre()
Returns by value, unit of area: acre.
static MeasureUnit getNewton()
Returns by value, unit of force: newton.
static MeasureUnit * createCubicKilometer(UErrorCode &status)
Returns by pointer, unit of volume: cubic-kilometer.
static MeasureUnit * createTeaspoon(UErrorCode &status)
Returns by pointer, unit of volume: teaspoon.
virtual bool operator==(const UObject &other) const
Equality operator.
static MeasureUnit getPint()
Returns by value, unit of volume: pint.
static MeasureUnit * createNanosecond(UErrorCode &status)
Returns by pointer, unit of duration: nanosecond.
static MeasureUnit * createKnot(UErrorCode &status)
Returns by pointer, unit of speed: knot.
static MeasureUnit getGForce()
Returns by value, unit of acceleration: g-force.
static MeasureUnit * createDram(UErrorCode &status)
Returns by pointer, unit of volume: dram.
static MeasureUnit getGallonImperial()
Returns by value, unit of volume: gallon-imperial.
static MeasureUnit getArcSecond()
Returns by value, unit of angle: arc-second.
static MeasureUnit getMeter()
Returns by value, unit of length: meter.
static MeasureUnit getMeterPerSecondSquared()
Returns by value, unit of acceleration: meter-per-square-second.
static MeasureUnit * createKilohertz(UErrorCode &status)
Returns by pointer, unit of frequency: kilohertz.
static MeasureUnit * createSquareKilometer(UErrorCode &status)
Returns by pointer, unit of area: square-kilometer.
static MeasureUnit getPinch()
Returns by value, unit of volume: pinch.
static MeasureUnit getCelsius()
Returns by value, unit of temperature: celsius.
static MeasureUnit getDecimeter()
Returns by value, unit of length: decimeter.
static MeasureUnit * createTonne(UErrorCode &status)
Returns by pointer, unit of mass: tonne.
static MeasureUnit * createQuarter(UErrorCode &status)
Returns by pointer, unit of duration: quarter.
static MeasureUnit getHorsepower()
Returns by value, unit of power: horsepower.
static MeasureUnit getMetricTon()
Returns by value, unit of mass: metric-ton (renamed to tonne in CLDR 42 / ICU 72).
static MeasureUnit getSolarMass()
Returns by value, unit of mass: solar-mass.
static MeasureUnit getSquareCentimeter()
Returns by value, unit of area: square-centimeter.
static MeasureUnit getKilojoule()
Returns by value, unit of energy: kilojoule.
static MeasureUnit getThermUs()
Returns by value, unit of energy: therm-us.
static MeasureUnit * createLux(UErrorCode &status)
Returns by pointer, unit of light: lux.
static MeasureUnit getCubicKilometer()
Returns by value, unit of volume: cubic-kilometer.
static MeasureUnit getDotPerInch()
Returns by value, unit of graphics: dot-per-inch.
static MeasureUnit getWeek()
Returns by value, unit of duration: week.
static MeasureUnit getSquareMile()
Returns by value, unit of area: square-mile.
static MeasureUnit getDecade()
Returns by value, unit of duration: decade.
static MeasureUnit * createOunce(UErrorCode &status)
Returns by pointer, unit of mass: ounce.
static MeasureUnit * createGenericTemperature(UErrorCode &status)
Returns by pointer, unit of temperature: generic.
static MeasureUnit getLumen()
Returns by value, unit of light: lumen.
MeasureUnit withDimensionality(int32_t dimensionality, UErrorCode &status) const
Creates a MeasureUnit which is this SINGLE unit augmented with the specified dimensionality (power).
static MeasureUnit * createSolarRadius(UErrorCode &status)
Returns by pointer, unit of length: solar-radius.
static MeasureUnit getMilligramOfglucosePerDeciliter()
Returns by value, unit of concentr: milligram-ofglucose-per-deciliter.
static MeasureUnit * createCubicInch(UErrorCode &status)
Returns by pointer, unit of volume: cubic-inch.
Base class for 'pure' C++ implementations of uenum api.
Definition: strenum.h:61
A string-like object that points to a sized piece of memory.
Definition: stringpiece.h:60
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:223
C++ API: "Smart pointers" for use with and in ICU4C C++ code.
U_CAPI int32_t umeas_getPrefixBase(UMeasurePrefix unitPrefix)
Returns the base of the factor associated with the given unit prefix: the base is 10 for SI prefixes ...
U_CAPI int32_t umeas_getPrefixPower(UMeasurePrefix unitPrefix)
Returns the exponent of the factor associated with the given unit prefix, for example 3 for kilo,...
enum icu::UMeasurePrefix UMeasurePrefix
Enumeration for SI and binary prefixes, e.g.
UMeasurePrefix
Enumeration for SI and binary prefixes, e.g.
Definition: measunit.h:91
@ UMEASURE_PREFIX_YOBI
Binary prefix: yobi, 1024^8.
Definition: measunit.h:333
@ UMEASURE_PREFIX_GIGA
SI prefix: giga, 10^9.
Definition: measunit.h:152
@ UMEASURE_PREFIX_GIBI
Binary prefix: gibi, 1024^3.
Definition: measunit.h:298
@ UMEASURE_PREFIX_TEBI
Binary prefix: tebi, 1024^4.
Definition: measunit.h:305
@ UMEASURE_PREFIX_PICO
SI prefix: pico, 10^-12.
Definition: measunit.h:222
@ UMEASURE_PREFIX_NANO
SI prefix: nano, 10^-9.
Definition: measunit.h:215
@ UMEASURE_PREFIX_INTERNAL_MIN_SI
ICU use only.
Definition: measunit.h:258
@ UMEASURE_PREFIX_INTERNAL_MIN_BIN
ICU use only.
Definition: measunit.h:283
@ UMEASURE_PREFIX_HECTO
SI prefix: hecto, 10^2.
Definition: measunit.h:173
@ UMEASURE_PREFIX_KIBI
Binary prefix: kibi, 1024^1.
Definition: measunit.h:275
@ UMEASURE_PREFIX_INTERNAL_ONE_BIN
ICU use only.
Definition: measunit.h:268
@ UMEASURE_PREFIX_EXA
SI prefix: exa, 10^18.
Definition: measunit.h:131
@ UMEASURE_PREFIX_FEMTO
SI prefix: femto, 10^-15.
Definition: measunit.h:229
@ UMEASURE_PREFIX_MEBI
Binary prefix: mebi, 1024^2.
Definition: measunit.h:291
@ UMEASURE_PREFIX_MEGA
SI prefix: mega, 10^6.
Definition: measunit.h:159
@ UMEASURE_PREFIX_PEBI
Binary prefix: pebi, 1024^5.
Definition: measunit.h:312
@ UMEASURE_PREFIX_DECI
SI prefix: deci, 10^-1.
Definition: measunit.h:187
@ UMEASURE_PREFIX_ZEPTO
SI prefix: zepto, 10^-21.
Definition: measunit.h:243
@ UMEASURE_PREFIX_CENTI
SI prefix: centi, 10^-2.
Definition: measunit.h:194
@ UMEASURE_PREFIX_ZEBI
Binary prefix: zebi, 1024^7.
Definition: measunit.h:326
@ UMEASURE_PREFIX_KILO
SI prefix: kilo, 10^3.
Definition: measunit.h:166
@ UMEASURE_PREFIX_DEKA
SI prefix: deka, 10^1.
Definition: measunit.h:180
@ UMEASURE_PREFIX_ONE
The absence of an SI or binary prefix.
Definition: measunit.h:101
@ UMEASURE_PREFIX_YOTTA
SI prefix: yotta, 10^24.
Definition: measunit.h:108
@ UMEASURE_PREFIX_INTERNAL_MAX_BIN
ICU use only.
Definition: measunit.h:341
@ UMEASURE_PREFIX_ATTO
SI prefix: atto, 10^-18.
Definition: measunit.h:236
@ UMEASURE_PREFIX_YOCTO
SI prefix: yocto, 10^-24.
Definition: measunit.h:250
@ UMEASURE_PREFIX_ZETTA
SI prefix: zetta, 10^21.
Definition: measunit.h:124
@ UMEASURE_PREFIX_EXBI
Binary prefix: exbi, 1024^6.
Definition: measunit.h:319
@ UMEASURE_PREFIX_TERA
SI prefix: tera, 10^12.
Definition: measunit.h:145
@ UMEASURE_PREFIX_INTERNAL_MAX_SI
ICU use only.
Definition: measunit.h:116
@ UMEASURE_PREFIX_MILLI
SI prefix: milli, 10^-3.
Definition: measunit.h:201
@ UMEASURE_PREFIX_MICRO
SI prefix: micro, 10^-6.
Definition: measunit.h:208
@ UMEASURE_PREFIX_PETA
SI prefix: peta, 10^15.
Definition: measunit.h:138
UMeasureUnitComplexity
Enumeration for unit complexity.
Definition: measunit.h:57
@ UMEASURE_UNIT_MIXED
A mixed unit, like hour+minute.
Definition: measunit.h:77
@ UMEASURE_UNIT_COMPOUND
A compound unit, like meter-per-second.
Definition: measunit.h:70
@ UMEASURE_UNIT_SINGLE
A single unit, like kilojoule.
Definition: measunit.h:63
#define U_CAPI
This is used to declare a function as a public ICU C API.
Definition: umachine.h:110
C++ API: Unicode String.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition: uobject.h:96
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Definition: utypes.h:415
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.
Definition: utypes.h:301