ICU 77.1  77.1
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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 
114 
121 
122 #ifndef U_HIDE_INTERNAL_API
128 #ifndef U_HIDE_DRAFT_API
130 #else /* U_HIDE_DRAFT_API */
132 #endif /* U_HIDE_DRAFT_API */
133 
134 #endif /* U_HIDE_INTERNAL_API */
135 
142 
149 
156 
163 
170 
177 
184 
191 
198 
205 
212 
219 
226 
233 
240 
247 
254 
261 
268 
275 
282 
283 #ifndef U_HIDE_INTERNAL_API
289 #ifndef U_HIDE_DRAFT_API
291 #else /* U_HIDE_DRAFT_API */
293 #endif /* U_HIDE_DRAFT_API */
294 
295 #endif // U_HIDE_INTERNAL_API
296 
297  // Cannot conditionalize the following with #ifndef U_HIDE_INTERNAL_API,
298  // used in definitions of non-internal enum values
305 
312 
313 #ifndef U_HIDE_INTERNAL_API
320 #endif // U_HIDE_INTERNAL_API
321 
328 
335 
342 
349 
356 
363 
370 
371 #ifndef U_HIDE_INTERNAL_API
378 #endif // U_HIDE_INTERNAL_API
380 
388 U_CAPI int32_t U_EXPORT2 umeas_getPrefixBase(UMeasurePrefix unitPrefix);
389 
396 U_CAPI int32_t U_EXPORT2 umeas_getPrefixPower(UMeasurePrefix unitPrefix);
397 
406  public:
407 
415 
420  MeasureUnit(const MeasureUnit &other);
421 
426  MeasureUnit(MeasureUnit &&other) noexcept;
427 
444  static MeasureUnit forIdentifier(StringPiece identifier, UErrorCode& status);
445 
451 
456  MeasureUnit &operator=(MeasureUnit &&other) noexcept;
457 
463  virtual MeasureUnit* clone() const;
464 
469  virtual ~MeasureUnit();
470 
476  virtual bool operator==(const UObject& other) const;
477 
483  bool operator!=(const UObject& other) const {
484  return !(*this == other);
485  }
486 
494  const char *getType() const;
495 
503  const char *getSubtype() const;
504 
511  const char* getIdentifier() const;
512 
521 
537 
553 
554 #ifndef U_HIDE_DRAFT_API
555 
570  MeasureUnit withConstantDenominator(uint64_t denominator, UErrorCode &status) const;
571 
588  uint64_t getConstantDenominator(UErrorCode &status) const;
589 
590 #endif /* U_HIDE_DRAFT_API */
591 
606  MeasureUnit withDimensionality(int32_t dimensionality, UErrorCode& status) const;
607 
621  int32_t getDimensionality(UErrorCode& status) const;
622 
638 
656  MeasureUnit product(const MeasureUnit& other, UErrorCode& status) const;
657 
677  inline std::pair<LocalArray<MeasureUnit>, int32_t> splitToSingleUnits(UErrorCode& status) const;
678 
690  static int32_t getAvailable(
691  MeasureUnit *destArray,
692  int32_t destCapacity,
693  UErrorCode &errorCode);
694 
707  static int32_t getAvailable(
708  const char *type,
709  MeasureUnit *destArray,
710  int32_t destCapacity,
711  UErrorCode &errorCode);
712 
722 
734  static UClassID U_EXPORT2 getStaticClassID();
735 
747  virtual UClassID getDynamicClassID() const override;
748 
749 #ifndef U_HIDE_INTERNAL_API
755  int32_t getOffset() const;
756 #endif /* U_HIDE_INTERNAL_API */
757 
758 // All code between the "Start generated createXXX methods" comment and
759 // the "End generated createXXX methods" comment is auto generated code
760 // and must not be edited manually. For instructions on how to correctly
761 // update this code, refer to:
762 // docs/processes/release/tasks/updating-measure-unit.md
763 //
764 // Start generated createXXX methods
765 
774 
781 
790 
797 
806 
813 
822 
829 
838 
845 
854 
861 
870 
877 
886 
893 
902 
909 
918 
925 
934 
941 
950 
957 
966 
973 
982 
989 
998 
1005 
1014 
1021 
1030 
1037 
1046 
1053 
1062 
1069 
1078 
1085 
1094 
1101 
1110 
1117 
1126 
1133 
1142 
1149 
1158 
1165 
1174 
1181 
1190 
1197 
1198 #ifndef U_HIDE_DRAFT_API
1207 
1214 #endif /* U_HIDE_DRAFT_API */
1215 
1224 
1231 
1240 
1247 
1256 
1263 
1272 
1279 
1288 
1295 
1304 
1311 
1320 
1327 
1336 
1343 
1352 
1359 
1368 
1375 
1384 
1391 
1400 
1407 
1416 
1423 
1432 
1439 
1448 
1455 
1464 
1471 
1480 
1487 
1496 
1503 
1512 
1519 
1528 
1535 
1544 
1551 
1560 
1567 
1576 
1583 
1592 
1599 
1608 
1615 
1624 
1631 
1632 #ifndef U_HIDE_DRAFT_API
1641 
1648 #endif /* U_HIDE_DRAFT_API */
1649 
1658 
1665 
1674 
1681 
1690 
1697 
1706 
1713 
1722 
1729 
1738 
1745 
1754 
1761 
1770 
1777 
1786 
1793 
1802 
1809 
1818 
1825 
1834 
1841 
1850 
1857 
1866 
1873 
1882 
1889 
1898 
1905 
1914 
1921 
1930 
1937 
1946 
1953 
1962 
1969 
1978 
1985 
1994 
2001 
2010 
2017 
2026 
2033 
2042 
2049 
2058 
2065 
2074 
2081 
2090 
2097 
2106 
2113 
2121  static MeasureUnit *createEm(UErrorCode &status);
2122 
2128  static MeasureUnit getEm();
2129 
2138 
2145 
2154 
2161 
2170 
2177 
2186 
2193 
2202 
2209 
2218 
2225 
2234 
2241 
2250 
2257 
2266 
2273 
2282 
2289 
2298 
2305 
2314 
2321 
2330 
2337 
2346 
2353 
2362 
2369 
2378 
2385 
2394 
2401 
2410 
2417 
2426 
2433 
2442 
2449 
2458 
2465 
2474 
2481 
2490 
2497 
2506 
2513 
2522 
2529 
2538 
2545 
2554 
2561 
2570 
2577 
2586 
2593 
2602 
2609 
2618 
2625 
2634 
2641 
2650 
2657 
2666 
2673 
2682 
2689 
2698 
2705 
2714 
2721 
2730 
2737 
2746 
2753 
2762 
2769 
2778 
2785 
2794 
2801 
2810 
2817 
2826 
2833 
2842 
2849 
2862 
2873 
2882 
2889 
2898 
2905 
2914 
2921 
2930 
2937 
2946 
2953 
2962 
2969 
2978 
2985 
2994 
3001 
3010 
3017 
3026 
3033 
3042 
3049 
3058 
3065 
3074 
3081 
3090 
3097 
3106 
3113 
3122 
3129 
3138 
3145 
3154 
3161 
3170 
3177 
3186 
3193 
3194 #ifndef U_HIDE_DRAFT_API
3203 
3210 #endif /* U_HIDE_DRAFT_API */
3211 
3220 
3227 
3236 
3243 
3252 
3259 
3268 
3275 
3284 
3291 
3300 
3307 
3316 
3323 
3332 
3339 
3348 
3355 
3364 
3371 
3380 
3387 
3396 
3403 
3412 
3419 
3428 
3435 
3444 
3451 
3460 
3467 
3476 
3483 
3492 
3499 
3508 
3515 
3524 
3531 
3540 
3547 
3556 
3563 
3572 
3579 
3588 
3595 
3604 
3611 
3620 
3627 
3636 
3643 
3652 
3659 
3668 
3675 
3684 
3691 
3700 
3707 
3716 
3723 
3732 
3739 
3748 
3755 
3764 
3771 
3780 
3787 
3796 
3803 
3812 
3819 
3828 
3835 
3844 
3851 
3860 
3867 
3876 
3883 
3884 // End generated createXXX methods
3885 
3886  protected:
3887 
3888 #ifndef U_HIDE_INTERNAL_API
3893  void initTime(const char *timeId);
3894 
3899  void initCurrency(StringPiece isoCurrency);
3900 
3901 #endif /* U_HIDE_INTERNAL_API */
3902 
3903 private:
3904 
3905  // Used by new draft APIs in ICU 67. If non-null, fImpl is owned by the
3906  // MeasureUnit.
3907  MeasureUnitImpl* fImpl;
3908 
3909  // An index into a static string list in measunit.cpp. If set to -1, fImpl
3910  // is in use instead of fTypeId and fSubTypeId.
3911  int16_t fSubTypeId;
3912  // An index into a static string list in measunit.cpp. If set to -1, fImpl
3913  // is in use instead of fTypeId and fSubTypeId.
3914  int8_t fTypeId;
3915 
3916  MeasureUnit(int32_t typeId, int32_t subTypeId);
3917  MeasureUnit(MeasureUnitImpl&& impl);
3918  void setTo(int32_t typeId, int32_t subTypeId);
3919  static MeasureUnit *create(int typeId, int subTypeId, UErrorCode &status);
3920 
3928  static bool findBySubType(StringPiece subType, MeasureUnit* output);
3929 
3931  LocalArray<MeasureUnit> splitToSingleUnitsImpl(int32_t& outCount, UErrorCode& status) const;
3932 
3933  friend class MeasureUnitImpl;
3934 
3935  // For access to findBySubType
3936  friend class number::impl::LongNameHandler;
3937 };
3938 
3939 // inline impl of @stable ICU 68 method
3940 inline std::pair<LocalArray<MeasureUnit>, int32_t>
3941 MeasureUnit::splitToSingleUnits(UErrorCode& status) const {
3942  int32_t length;
3943  auto array = splitToSingleUnitsImpl(length, status);
3944  return std::make_pair(std::move(array), length);
3945 }
3946 
3947 U_NAMESPACE_END
3948 
3949 #endif // !UNCONFIG_NO_FORMATTING
3950 
3951 #endif /* U_SHOW_CPLUSPLUS_API */
3952 
3953 #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:405
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 getNight()
Returns by value, unit of duration: night.
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 getLightSpeed()
Returns by value, unit of speed: light-speed.
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 * createPortionPer1E9(UErrorCode &status)
Returns by pointer, unit of concentr: portion-per-1e9.
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.
uint64_t getConstantDenominator(UErrorCode &status) const
Retrieves the constant denominator for this COMPOUND unit.
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 getPortionPer1E9()
Returns by value, unit of concentr: portion-per-1e9.
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 * createNight(UErrorCode &status)
Returns by pointer, unit of duration: night.
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)
Constructs a MeasureUnit from a CLDR Core Unit Identifier, as defined in UTS 35.
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.
MeasureUnit withConstantDenominator(uint64_t denominator, UErrorCode &status) const
Creates a new MeasureUnit with a specified constant denominator.
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:483
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 * createLightSpeed(UErrorCode &status)
Returns by pointer, unit of speed: light-speed.
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:61
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:281
@ UMEASURE_PREFIX_YOBI
Binary prefix: yobi, 1024^8.
Definition: measunit.h:369
@ UMEASURE_PREFIX_GIGA
SI prefix: giga, 10^9.
Definition: measunit.h:169
@ UMEASURE_PREFIX_GIBI
Binary prefix: gibi, 1024^3.
Definition: measunit.h:334
@ UMEASURE_PREFIX_TEBI
Binary prefix: tebi, 1024^4.
Definition: measunit.h:341
@ UMEASURE_PREFIX_PICO
SI prefix: pico, 10^-12.
Definition: measunit.h:239
@ UMEASURE_PREFIX_NANO
SI prefix: nano, 10^-9.
Definition: measunit.h:232
@ UMEASURE_PREFIX_INTERNAL_MIN_SI
ICU use only.
Definition: measunit.h:290
@ UMEASURE_PREFIX_QUETTA
SI prefix: quetta, 10^30.
Definition: measunit.h:120
@ UMEASURE_PREFIX_INTERNAL_MIN_BIN
ICU use only.
Definition: measunit.h:319
@ UMEASURE_PREFIX_HECTO
SI prefix: hecto, 10^2.
Definition: measunit.h:190
@ UMEASURE_PREFIX_KIBI
Binary prefix: kibi, 1024^1.
Definition: measunit.h:311
@ UMEASURE_PREFIX_INTERNAL_ONE_BIN
ICU use only.
Definition: measunit.h:304
@ UMEASURE_PREFIX_EXA
SI prefix: exa, 10^18.
Definition: measunit.h:148
@ UMEASURE_PREFIX_FEMTO
SI prefix: femto, 10^-15.
Definition: measunit.h:246
@ UMEASURE_PREFIX_MEBI
Binary prefix: mebi, 1024^2.
Definition: measunit.h:327
@ UMEASURE_PREFIX_MEGA
SI prefix: mega, 10^6.
Definition: measunit.h:176
@ UMEASURE_PREFIX_RONNA
SI prefix: ronna, 10^27.
Definition: measunit.h:113
@ UMEASURE_PREFIX_PEBI
Binary prefix: pebi, 1024^5.
Definition: measunit.h:348
@ UMEASURE_PREFIX_RONTO
SI prefix: ronto, 10^-27.
Definition: measunit.h:274
@ UMEASURE_PREFIX_DECI
SI prefix: deci, 10^-1.
Definition: measunit.h:204
@ UMEASURE_PREFIX_ZEPTO
SI prefix: zepto, 10^-21.
Definition: measunit.h:260
@ UMEASURE_PREFIX_CENTI
SI prefix: centi, 10^-2.
Definition: measunit.h:211
@ UMEASURE_PREFIX_ZEBI
Binary prefix: zebi, 1024^7.
Definition: measunit.h:362
@ UMEASURE_PREFIX_KILO
SI prefix: kilo, 10^3.
Definition: measunit.h:183
@ UMEASURE_PREFIX_DEKA
SI prefix: deka, 10^1.
Definition: measunit.h:197
@ 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:377
@ UMEASURE_PREFIX_ATTO
SI prefix: atto, 10^-18.
Definition: measunit.h:253
@ UMEASURE_PREFIX_YOCTO
SI prefix: yocto, 10^-24.
Definition: measunit.h:267
@ UMEASURE_PREFIX_ZETTA
SI prefix: zetta, 10^21.
Definition: measunit.h:141
@ UMEASURE_PREFIX_EXBI
Binary prefix: exbi, 1024^6.
Definition: measunit.h:355
@ UMEASURE_PREFIX_TERA
SI prefix: tera, 10^12.
Definition: measunit.h:162
@ UMEASURE_PREFIX_INTERNAL_MAX_SI
ICU use only.
Definition: measunit.h:129
@ UMEASURE_PREFIX_MILLI
SI prefix: milli, 10^-3.
Definition: measunit.h:218
@ UMEASURE_PREFIX_MICRO
SI prefix: micro, 10^-6.
Definition: measunit.h:225
@ UMEASURE_PREFIX_PETA
SI prefix: peta, 10^15.
Definition: measunit.h:155
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:430
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.
Definition: utypes.h:316