ICU 75.1  75.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::impl {
37 class LongNameHandler;
38 } // namespace number::impl
39 
62 
69 
76 };
77 
78 
89 typedef enum UMeasurePrefix {
100 
107 
108 #ifndef U_HIDE_DRAFT_API
115 
122 #endif /* U_HIDE_DRAFT_API */
123 
124 #ifndef U_HIDE_INTERNAL_API
130 #ifndef U_HIDE_DRAFT_API
132 #else /* U_HIDE_DRAFT_API */
134 #endif /* U_HIDE_DRAFT_API */
135 
136 #endif /* U_HIDE_INTERNAL_API */
137 
144 
151 
158 
165 
172 
179 
186 
193 
200 
207 
214 
221 
228 
235 
242 
249 
256 
263 
270 
271 #ifndef U_HIDE_DRAFT_API
278 
285 #endif /* U_HIDE_DRAFT_API */
286 
287 #ifndef U_HIDE_INTERNAL_API
293 #ifndef U_HIDE_DRAFT_API
295 #else /* U_HIDE_DRAFT_API */
297 #endif /* U_HIDE_DRAFT_API */
298 
299 #endif // U_HIDE_INTERNAL_API
300 
301  // Cannot conditionalize the following with #ifndef U_HIDE_INTERNAL_API,
302  // used in definitions of non-internal enum values
309 
316 
317 #ifndef U_HIDE_INTERNAL_API
324 #endif // U_HIDE_INTERNAL_API
325 
332 
339 
346 
353 
360 
367 
374 
375 #ifndef U_HIDE_INTERNAL_API
382 #endif // U_HIDE_INTERNAL_API
384 
392 U_CAPI int32_t U_EXPORT2 umeas_getPrefixBase(UMeasurePrefix unitPrefix);
393 
400 U_CAPI int32_t U_EXPORT2 umeas_getPrefixPower(UMeasurePrefix unitPrefix);
401 
410  public:
411 
419 
424  MeasureUnit(const MeasureUnit &other);
425 
430  MeasureUnit(MeasureUnit &&other) noexcept;
431 
445  static MeasureUnit forIdentifier(StringPiece identifier, UErrorCode& status);
446 
452 
457  MeasureUnit &operator=(MeasureUnit &&other) noexcept;
458 
464  virtual MeasureUnit* clone() const;
465 
470  virtual ~MeasureUnit();
471 
477  virtual bool operator==(const UObject& other) const;
478 
484  bool operator!=(const UObject& other) const {
485  return !(*this == other);
486  }
487 
495  const char *getType() const;
496 
504  const char *getSubtype() const;
505 
512  const char* getIdentifier() const;
513 
522 
538 
554 
569  MeasureUnit withDimensionality(int32_t dimensionality, UErrorCode& status) const;
570 
584  int32_t getDimensionality(UErrorCode& status) const;
585 
599 
617  MeasureUnit product(const MeasureUnit& other, UErrorCode& status) const;
618 
634  inline std::pair<LocalArray<MeasureUnit>, int32_t> splitToSingleUnits(UErrorCode& status) const;
635 
647  static int32_t getAvailable(
648  MeasureUnit *destArray,
649  int32_t destCapacity,
650  UErrorCode &errorCode);
651 
664  static int32_t getAvailable(
665  const char *type,
666  MeasureUnit *destArray,
667  int32_t destCapacity,
668  UErrorCode &errorCode);
669 
679 
691  static UClassID U_EXPORT2 getStaticClassID();
692 
704  virtual UClassID getDynamicClassID() const override;
705 
706 #ifndef U_HIDE_INTERNAL_API
712  int32_t getOffset() const;
713 #endif /* U_HIDE_INTERNAL_API */
714 
715 // All code between the "Start generated createXXX methods" comment and
716 // the "End generated createXXX methods" comment is auto generated code
717 // and must not be edited manually. For instructions on how to correctly
718 // update this code, refer to:
719 // docs/processes/release/tasks/updating-measure-unit.md
720 //
721 // Start generated createXXX methods
722 
731 
738 
747 
754 
763 
770 
779 
786 
795 
802 
811 
818 
827 
834 
843 
850 
859 
866 
875 
882 
891 
898 
907 
914 
923 
930 
939 
946 
955 
962 
971 
978 
987 
994 
1003 
1010 
1019 
1026 
1035 
1042 
1051 
1058 
1067 
1074 
1083 
1090 
1099 
1106 
1115 
1122 
1131 
1138 
1147 
1154 
1163 
1170 
1179 
1186 
1195 
1202 
1211 
1218 
1227 
1234 
1243 
1250 
1259 
1266 
1275 
1282 
1291 
1298 
1307 
1314 
1323 
1330 
1339 
1346 
1355 
1362 
1371 
1378 
1387 
1394 
1403 
1410 
1419 
1426 
1435 
1442 
1451 
1458 
1467 
1474 
1483 
1490 
1499 
1506 
1515 
1522 
1531 
1538 
1547 
1554 
1563 
1570 
1579 
1586 
1595 
1602 
1611 
1618 
1627 
1634 
1643 
1650 
1659 
1666 
1675 
1682 
1691 
1698 
1707 
1714 
1723 
1730 
1739 
1746 
1755 
1762 
1771 
1778 
1787 
1794 
1803 
1810 
1819 
1826 
1835 
1842 
1851 
1858 
1867 
1874 
1883 
1890 
1899 
1906 
1915 
1922 
1931 
1938 
1947 
1954 
1963 
1970 
1979 
1986 
1995 
2002 
2011 
2018 
2027 
2034 
2042  static MeasureUnit *createEm(UErrorCode &status);
2043 
2049  static MeasureUnit getEm();
2050 
2059 
2066 
2075 
2082 
2091 
2098 
2107 
2114 
2123 
2130 
2139 
2146 
2155 
2162 
2171 
2178 
2187 
2194 
2203 
2210 
2219 
2226 
2235 
2242 
2251 
2258 
2267 
2274 
2283 
2290 
2299 
2306 
2315 
2322 
2331 
2338 
2347 
2354 
2363 
2370 
2379 
2386 
2395 
2402 
2411 
2418 
2427 
2434 
2443 
2450 
2459 
2466 
2475 
2482 
2491 
2498 
2507 
2514 
2523 
2530 
2539 
2546 
2555 
2562 
2571 
2578 
2587 
2594 
2603 
2610 
2619 
2626 
2639 
2650 
2659 
2666 
2675 
2682 
2691 
2698 
2707 
2714 
2723 
2730 
2739 
2746 
2755 
2762 
2771 
2778 
2787 
2794 
2803 
2810 
2819 
2826 
2835 
2842 
2851 
2858 
2867 
2874 
2883 
2890 
2899 
2906 
2915 
2922 
2923 #ifndef U_HIDE_DRAFT_API
2932 
2939 #endif /* U_HIDE_DRAFT_API */
2940 
2949 
2956 
2965 
2972 
2981 
2988 
2997 
3004 
3013 
3020 
3029 
3036 
3045 
3052 
3061 
3068 
3077 
3084 
3093 
3100 
3109 
3116 
3125 
3132 
3141 
3148 
3157 
3164 
3173 
3180 
3189 
3196 
3205 
3212 
3221 
3228 
3237 
3244 
3253 
3260 
3269 
3276 
3285 
3292 
3301 
3308 
3317 
3324 
3333 
3340 
3349 
3356 
3365 
3372 
3381 
3388 
3397 
3404 
3413 
3420 
3429 
3436 
3445 
3452 
3461 
3468 
3477 
3484 
3493 
3500 
3509 
3516 
3525 
3532 
3541 
3548 
3557 
3564 
3573 
3580 
3589 
3596 
3605 
3612 
3621 
3628 
3637 
3644 
3653 
3660 
3669 
3676 
3685 
3692 
3701 
3708 
3717 
3724 
3733 
3740 
3749 
3756 
3765 
3772 
3781 
3788 
3789 // End generated createXXX methods
3790 
3791  protected:
3792 
3793 #ifndef U_HIDE_INTERNAL_API
3798  void initTime(const char *timeId);
3799 
3804  void initCurrency(StringPiece isoCurrency);
3805 
3806 #endif /* U_HIDE_INTERNAL_API */
3807 
3808 private:
3809 
3810  // Used by new draft APIs in ICU 67. If non-null, fImpl is owned by the
3811  // MeasureUnit.
3812  MeasureUnitImpl* fImpl;
3813 
3814  // An index into a static string list in measunit.cpp. If set to -1, fImpl
3815  // is in use instead of fTypeId and fSubTypeId.
3816  int16_t fSubTypeId;
3817  // An index into a static string list in measunit.cpp. If set to -1, fImpl
3818  // is in use instead of fTypeId and fSubTypeId.
3819  int8_t fTypeId;
3820 
3821  MeasureUnit(int32_t typeId, int32_t subTypeId);
3822  MeasureUnit(MeasureUnitImpl&& impl);
3823  void setTo(int32_t typeId, int32_t subTypeId);
3824  static MeasureUnit *create(int typeId, int subTypeId, UErrorCode &status);
3825 
3833  static bool findBySubType(StringPiece subType, MeasureUnit* output);
3834 
3836  LocalArray<MeasureUnit> splitToSingleUnitsImpl(int32_t& outCount, UErrorCode& status) const;
3837 
3838  friend class MeasureUnitImpl;
3839 
3840  // For access to findBySubType
3841  friend class number::impl::LongNameHandler;
3842 };
3843 
3844 // inline impl of @stable ICU 68 method
3845 inline std::pair<LocalArray<MeasureUnit>, int32_t>
3846 MeasureUnit::splitToSingleUnits(UErrorCode& status) const {
3847  int32_t length;
3848  auto array = splitToSingleUnitsImpl(length, status);
3849  return std::make_pair(std::move(array), length);
3850 }
3851 
3852 U_NAMESPACE_END
3853 
3854 #endif // !UNCONFIG_NO_FORMATTING
3855 
3856 #endif /* U_SHOW_CPLUSPLUS_API */
3857 
3858 #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:409
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 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.
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.
virtual UClassID getDynamicClassID() const override
Returns a unique class ID POLYMORPHICALLY.
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 UClassID getStaticClassID()
Return the class ID for this class.
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:484
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:89
@ UMEASURE_PREFIX_QUECTO
SI prefix: quecto, 10^-30.
Definition: measunit.h:284
@ UMEASURE_PREFIX_YOBI
Binary prefix: yobi, 1024^8.
Definition: measunit.h:373
@ UMEASURE_PREFIX_GIGA
SI prefix: giga, 10^9.
Definition: measunit.h:171
@ UMEASURE_PREFIX_GIBI
Binary prefix: gibi, 1024^3.
Definition: measunit.h:338
@ UMEASURE_PREFIX_TEBI
Binary prefix: tebi, 1024^4.
Definition: measunit.h:345
@ UMEASURE_PREFIX_PICO
SI prefix: pico, 10^-12.
Definition: measunit.h:241
@ UMEASURE_PREFIX_NANO
SI prefix: nano, 10^-9.
Definition: measunit.h:234
@ UMEASURE_PREFIX_INTERNAL_MIN_SI
ICU use only.
Definition: measunit.h:294
@ UMEASURE_PREFIX_QUETTA
SI prefix: quetta, 10^30.
Definition: measunit.h:121
@ UMEASURE_PREFIX_INTERNAL_MIN_BIN
ICU use only.
Definition: measunit.h:323
@ UMEASURE_PREFIX_HECTO
SI prefix: hecto, 10^2.
Definition: measunit.h:192
@ UMEASURE_PREFIX_KIBI
Binary prefix: kibi, 1024^1.
Definition: measunit.h:315
@ UMEASURE_PREFIX_INTERNAL_ONE_BIN
ICU use only.
Definition: measunit.h:308
@ UMEASURE_PREFIX_EXA
SI prefix: exa, 10^18.
Definition: measunit.h:150
@ UMEASURE_PREFIX_FEMTO
SI prefix: femto, 10^-15.
Definition: measunit.h:248
@ UMEASURE_PREFIX_MEBI
Binary prefix: mebi, 1024^2.
Definition: measunit.h:331
@ UMEASURE_PREFIX_MEGA
SI prefix: mega, 10^6.
Definition: measunit.h:178
@ UMEASURE_PREFIX_RONNA
SI prefix: ronna, 10^27.
Definition: measunit.h:114
@ UMEASURE_PREFIX_PEBI
Binary prefix: pebi, 1024^5.
Definition: measunit.h:352
@ UMEASURE_PREFIX_RONTO
SI prefix: ronto, 10^-27.
Definition: measunit.h:277
@ UMEASURE_PREFIX_DECI
SI prefix: deci, 10^-1.
Definition: measunit.h:206
@ UMEASURE_PREFIX_ZEPTO
SI prefix: zepto, 10^-21.
Definition: measunit.h:262
@ UMEASURE_PREFIX_CENTI
SI prefix: centi, 10^-2.
Definition: measunit.h:213
@ UMEASURE_PREFIX_ZEBI
Binary prefix: zebi, 1024^7.
Definition: measunit.h:366
@ UMEASURE_PREFIX_KILO
SI prefix: kilo, 10^3.
Definition: measunit.h:185
@ UMEASURE_PREFIX_DEKA
SI prefix: deka, 10^1.
Definition: measunit.h:199
@ UMEASURE_PREFIX_ONE
The absence of an SI or binary prefix.
Definition: measunit.h:99
@ UMEASURE_PREFIX_YOTTA
SI prefix: yotta, 10^24.
Definition: measunit.h:106
@ UMEASURE_PREFIX_INTERNAL_MAX_BIN
ICU use only.
Definition: measunit.h:381
@ UMEASURE_PREFIX_ATTO
SI prefix: atto, 10^-18.
Definition: measunit.h:255
@ UMEASURE_PREFIX_YOCTO
SI prefix: yocto, 10^-24.
Definition: measunit.h:269
@ UMEASURE_PREFIX_ZETTA
SI prefix: zetta, 10^21.
Definition: measunit.h:143
@ UMEASURE_PREFIX_EXBI
Binary prefix: exbi, 1024^6.
Definition: measunit.h:359
@ UMEASURE_PREFIX_TERA
SI prefix: tera, 10^12.
Definition: measunit.h:164
@ UMEASURE_PREFIX_INTERNAL_MAX_SI
ICU use only.
Definition: measunit.h:131
@ UMEASURE_PREFIX_MILLI
SI prefix: milli, 10^-3.
Definition: measunit.h:220
@ UMEASURE_PREFIX_MICRO
SI prefix: micro, 10^-6.
Definition: measunit.h:227
@ UMEASURE_PREFIX_PETA
SI prefix: peta, 10^15.
Definition: measunit.h:157
UMeasureUnitComplexity
Enumeration for unit complexity.
Definition: measunit.h:55
@ UMEASURE_UNIT_MIXED
A mixed unit, like hour+minute.
Definition: measunit.h:75
@ UMEASURE_UNIT_COMPOUND
A compound unit, like meter-per-second.
Definition: measunit.h:68
@ UMEASURE_UNIT_SINGLE
A single unit, like kilojoule.
Definition: measunit.h:61
#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