File indexing completed on 2024-04-21 15:04:38
0001 /* 0002 * SPDX-FileCopyrightText: 2007-2009 Petri Damstén <damu@iki.fi> 0003 * SPDX-FileCopyrightText: 2014 John Layt <jlayt@kde.org> 0004 * 0005 * SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 #ifndef KUNITCONVERSION_UNIT_H 0009 #define KUNITCONVERSION_UNIT_H 0010 0011 #include "kunitconversion/kunitconversion_export.h" 0012 0013 #include <QExplicitlySharedDataPointer> 0014 #include <QString> 0015 0016 namespace KUnitConversion 0017 { 0018 enum CategoryId { 0019 InvalidCategory = -1, 0020 LengthCategory, 0021 AreaCategory, 0022 VolumeCategory, 0023 TemperatureCategory, 0024 VelocityCategory, 0025 MassCategory, 0026 PressureCategory, 0027 EnergyCategory, 0028 CurrencyCategory, 0029 PowerCategory, 0030 TimeCategory, 0031 FuelEfficiencyCategory, 0032 DensityCategory, 0033 AccelerationCategory, 0034 AngleCategory, 0035 FrequencyCategory, 0036 ForceCategory, 0037 /** @since 5.27 */ 0038 ThermalConductivityCategory, 0039 /** @since 5.27 */ 0040 ThermalFluxCategory, 0041 /** @since 5.27 */ 0042 ThermalGenerationCategory, 0043 /** @since 5.27 */ 0044 VoltageCategory, 0045 /** @since 5.27 */ 0046 ElectricalCurrentCategory, 0047 /** @since 5.27 */ 0048 ElectricalResistanceCategory, 0049 /** @since 5.53 */ 0050 PermeabilityCategory, 0051 /** @since 5.61 **/ 0052 BinaryDataCategory 0053 }; 0054 0055 enum UnitId { 0056 InvalidUnit = -1, 0057 NoUnit = 0, 0058 Percent = 1, 0059 0060 // Area 0061 SquareYottameter = 1000, 0062 SquareZettameter, 0063 SquareExameter, 0064 SquarePetameter, 0065 SquareTerameter, 0066 SquareGigameter, 0067 SquareMegameter, 0068 SquareKilometer, 0069 SquareHectometer, 0070 SquareDecameter, 0071 SquareMeter, 0072 SquareDecimeter, 0073 SquareCentimeter, 0074 SquareMillimeter, 0075 SquareMicrometer, 0076 SquareNanometer, 0077 SquarePicometer, 0078 SquareFemtometer, 0079 SquareAttometer, 0080 SquareZeptometer, 0081 SquareYoctometer, 0082 Acre, 0083 SquareFoot, 0084 SquareInch, 0085 SquareMile, 0086 0087 // Length 0088 Yottameter = 2000, 0089 Zettameter, 0090 Exameter, 0091 Petameter, 0092 Terameter, 0093 Gigameter, 0094 Megameter, 0095 Kilometer, 0096 Hectometer, 0097 Decameter, 0098 Meter, 0099 Decimeter, 0100 Centimeter, 0101 Millimeter, 0102 Micrometer, 0103 Nanometer, 0104 Picometer, 0105 Femtometer, 0106 Attometer, 0107 Zeptometer, 0108 Yoctometer, 0109 Inch, 0110 Foot, 0111 Yard, 0112 Mile, 0113 NauticalMile, 0114 LightYear, 0115 Parsec, 0116 AstronomicalUnit, 0117 Thou, 0118 Angstrom, 0119 0120 // Volume 0121 CubicYottameter = 3000, 0122 CubicZettameter, 0123 CubicExameter, 0124 CubicPetameter, 0125 CubicTerameter, 0126 CubicGigameter, 0127 CubicMegameter, 0128 CubicKilometer, 0129 CubicHectometer, 0130 CubicDecameter, 0131 CubicMeter, 0132 CubicDecimeter, 0133 CubicCentimeter, 0134 CubicMillimeter, 0135 CubicMicrometer, 0136 CubicNanometer, 0137 CubicPicometer, 0138 CubicFemtometer, 0139 CubicAttometer, 0140 CubicZeptometer, 0141 CubicYoctometer, 0142 Yottaliter, 0143 Zettaliter, 0144 Exaliter, 0145 Petaliter, 0146 Teraliter, 0147 Gigaliter, 0148 Megaliter, 0149 Kiloliter, 0150 Hectoliter, 0151 Decaliter, 0152 Liter, 0153 Deciliter, 0154 Centiliter, 0155 Milliliter, 0156 Microliter, 0157 Nanoliter, 0158 Picoliter, 0159 Femtoliter, 0160 Attoliter, 0161 Zeptoliter, 0162 Yoctoliter, 0163 CubicFoot, 0164 CubicInch, 0165 CubicMile, 0166 FluidOunce, 0167 Cup, 0168 Teaspoon, 0169 Tablespoon, 0170 GallonUS, 0171 PintImperial, 0172 /** @since 5.53 */ 0173 OilBarrel, 0174 /** @since 5.70 */ 0175 GallonImperial, 0176 PintUS, 0177 0178 // Mass 0179 Yottagram = 4000, 0180 Zettagram, 0181 Exagram, 0182 Petagram, 0183 Teragram, 0184 Gigagram, 0185 Megagram, 0186 Kilogram, 0187 Hectogram, 0188 Decagram, 0189 Gram, 0190 Decigram, 0191 Centigram, 0192 Milligram, 0193 Microgram, 0194 Nanogram, 0195 Picogram, 0196 Femtogram, 0197 Attogram, 0198 Zeptogram, 0199 Yoctogram, 0200 Ton, 0201 Carat, 0202 Pound, 0203 Ounce, 0204 TroyOunce, 0205 MassNewton, 0206 Kilonewton, 0207 0208 /** @since 5.26 */ 0209 Stone, 0210 0211 // Pressure 0212 Yottapascal = 5000, 0213 Zettapascal, 0214 Exapascal, 0215 Petapascal, 0216 Terapascal, 0217 Gigapascal, 0218 Megapascal, 0219 Kilopascal, 0220 Hectopascal, 0221 Decapascal, 0222 Pascal, 0223 Decipascal, 0224 Centipascal, 0225 Millipascal, 0226 Micropascal, 0227 Nanopascal, 0228 Picopascal, 0229 Femtopascal, 0230 Attopascal, 0231 Zeptopascal, 0232 Yoctopascal, 0233 Bar, 0234 Millibar, 0235 Decibar, 0236 Torr, 0237 TechnicalAtmosphere, 0238 Atmosphere, 0239 PoundForcePerSquareInch, 0240 InchesOfMercury, 0241 MillimetersOfMercury, 0242 0243 // Temperature 0244 Kelvin = 6000, 0245 Celsius, 0246 Fahrenheit, 0247 Rankine, 0248 Delisle, 0249 TemperatureNewton, 0250 Reaumur, 0251 Romer, 0252 0253 // Energy 0254 Yottajoule = 7000, 0255 Zettajoule, 0256 Exajoule, 0257 Petajoule, 0258 Terajoule, 0259 Gigajoule, 0260 Megajoule, 0261 Kilojoule, 0262 Hectojoule, 0263 Decajoule, 0264 Joule, 0265 Decijoule, 0266 Centijoule, 0267 Millijoule, 0268 Microjoule, 0269 Nanojoule, 0270 Picojoule, 0271 Femtojoule, 0272 Attojoule, 0273 Zeptojoule, 0274 Yoctojoule, 0275 GuidelineDailyAmount, 0276 Electronvolt, 0277 Rydberg, 0278 Kilocalorie, 0279 PhotonWavelength, 0280 KiloJoulePerMole, 0281 JoulePerMole, 0282 /** @since 5.27 */ 0283 Btu, 0284 /** @since 5.27 */ 0285 Erg, 0286 0287 // Currency 0288 Eur = 8000, 0289 Ats, 0290 Bef, 0291 Nlg, 0292 Fim, 0293 Frf, 0294 Dem, 0295 Iep, 0296 Itl, 0297 Luf, 0298 Pte, 0299 Esp, 0300 Grd, 0301 Sit, 0302 Cyp, 0303 Mtl, 0304 Skk, 0305 Usd, 0306 Jpy, 0307 Bgn, 0308 Czk, 0309 Dkk, 0310 Eek, 0311 Gbp, 0312 Huf, 0313 Ltl, 0314 Lvl, 0315 Pln, 0316 Ron, 0317 Sek, 0318 Chf, 0319 Nok, 0320 Hrk, 0321 Rub, 0322 Try, 0323 Aud, 0324 Brl, 0325 Cad, 0326 Cny, 0327 Hkd, 0328 Idr, 0329 Inr, 0330 Krw, 0331 Mxn, 0332 Myr, 0333 Nzd, 0334 Php, 0335 Sgd, 0336 Thb, 0337 Zar, 0338 Ils, 0339 Isk, 0340 0341 // Velocity 0342 MeterPerSecond = 9000, 0343 KilometerPerHour, 0344 MilePerHour, 0345 FootPerSecond, 0346 InchPerSecond, 0347 Knot, 0348 Mach, 0349 SpeedOfLight, 0350 Beaufort, 0351 0352 // Power 0353 Yottawatt = 10000, 0354 Zettawatt, 0355 Exawatt, 0356 Petawatt, 0357 Terawatt, 0358 Gigawatt, 0359 Megawatt, 0360 Kilowatt, 0361 Hectowatt, 0362 Decawatt, 0363 Watt, 0364 Deciwatt, 0365 Centiwatt, 0366 Milliwatt, 0367 Microwatt, 0368 Nanowatt, 0369 Picowatt, 0370 Femtowatt, 0371 Attowatt, 0372 Zeptowatt, 0373 Yoctowatt, 0374 Horsepower, 0375 /** @since 5.62 */ 0376 DecibelKilowatt, 0377 DecibelWatt, 0378 DecibelMilliwatt, 0379 DecibelMicrowatt, 0380 0381 // Time 0382 Yottasecond = 11000, 0383 Zettasecond, 0384 Exasecond, 0385 Petasecond, 0386 Terasecond, 0387 Gigasecond, 0388 Megasecond, 0389 Kilosecond, 0390 Hectosecond, 0391 Decasecond, 0392 Second, 0393 Decisecond, 0394 Centisecond, 0395 Millisecond, 0396 Microsecond, 0397 Nanosecond, 0398 Picosecond, 0399 Femtosecond, 0400 Attosecond, 0401 Zeptosecond, 0402 Yoctosecond, 0403 Minute, 0404 Hour, 0405 Day, 0406 Week, 0407 JulianYear, 0408 LeapYear, 0409 Year, 0410 0411 // FuelEfficiency 0412 LitersPer100Kilometers = 12000, 0413 MilePerUsGallon, 0414 MilePerImperialGallon, 0415 KilometrePerLitre, 0416 0417 // Density 0418 YottakilogramsPerCubicMeter = 13000, 0419 ZettakilogramPerCubicMeter, 0420 ExakilogramPerCubicMeter, 0421 PetakilogramPerCubicMeter, 0422 TerakilogramPerCubicMeter, 0423 GigakilogramPerCubicMeter, 0424 MegakilogramPerCubicMeter, 0425 KilokilogramPerCubicMeter, 0426 HectokilogramsPerCubicMeter, 0427 DecakilogramsPerCubicMeter, 0428 KilogramsPerCubicMeter, 0429 DecikilogramsPerCubicMeter, 0430 CentikilogramsPerCubicMeter, 0431 MillikilogramsPerCubicMeter, 0432 MicrokilogramsPerCubicMeter, 0433 NanokilogramsPerCubicMeter, 0434 PicokilogramsPerCubicMeter, 0435 FemtokilogramsPerCubicMeter, 0436 AttokilogramsPerCubicMeter, 0437 ZeptokilogramsPerCubicMeter, 0438 YoctokilogramsPerCubicMeter, 0439 KilogramPerLiter, 0440 GramPerLiter, 0441 GramPerMilliliter, 0442 OuncePerCubicInch, 0443 OuncePerCubicFoot, 0444 OuncePerCubicYard, 0445 PoundPerCubicInch, 0446 PoundPerCubicFoot, 0447 PoundPerCubicYard, 0448 0449 // Acceleration 0450 MetresPerSecondSquared = 14000, 0451 FeetPerSecondSquared, 0452 StandardGravity, 0453 0454 // Force 0455 Yottanewton = 15000, 0456 Zettanewton, 0457 Exanewton, 0458 Petanewton, 0459 Teranewton, 0460 Giganewton, 0461 Meganewton, 0462 KilonewtonForce, 0463 Hectonewton, 0464 Decanewton, 0465 Newton, 0466 Decinewton, 0467 Centinewton, 0468 Millinewton, 0469 Micronewton, 0470 Nanonewton, 0471 Piconewton, 0472 Femtonewton, 0473 Attonewton, 0474 Zeptonewton, 0475 Yoctonewton, 0476 Dyne, 0477 Kilopond, 0478 PoundForce, 0479 Poundal, 0480 0481 // Angle 0482 Degree = 16000, 0483 Radian, 0484 Gradian, 0485 ArcMinute, 0486 ArcSecond, 0487 0488 // Frequency 0489 Yottahertz = 17000, 0490 Zettahertz, 0491 Exahertz, 0492 Petahertz, 0493 Terahertz, 0494 Gigahertz, 0495 Megahertz, 0496 Kilohertz, 0497 Hectohertz, 0498 Decahertz, 0499 Hertz, 0500 Decihertz, 0501 Centihertz, 0502 Millihertz, 0503 Microhertz, 0504 Nanohertz, 0505 Picohertz, 0506 Femtohertz, 0507 Attohertz, 0508 Zeptohertz, 0509 Yoctohertz, 0510 RPM, 0511 0512 // Thermal Conductivity 0513 /** @since 5.27 */ 0514 WattPerMeterKelvin = 18000, 0515 /** @since 5.27 */ 0516 BtuPerFootHourFahrenheit, 0517 /** @since 5.27 */ 0518 BtuPerSquareFootHourFahrenheitPerInch, 0519 0520 // Thermal Flux Density 0521 /** @since 5.27 */ 0522 WattPerSquareMeter = 19000, 0523 /** @since 5.27 */ 0524 BtuPerHourPerSquareFoot, 0525 0526 // Thermal Generation per volume 0527 /** @since 5.27 */ 0528 WattPerCubicMeter = 20000, 0529 /** @since 5.27 */ 0530 BtuPerHourPerCubicFoot, 0531 0532 // Voltage 0533 /** @since 5.27 */ 0534 Yottavolts = 30000, 0535 /** @since 5.27 */ 0536 Zettavolts, 0537 /** @since 5.27 */ 0538 Exavolts, 0539 /** @since 5.27 */ 0540 Petavolts, 0541 /** @since 5.27 */ 0542 Teravolts, 0543 /** @since 5.27 */ 0544 Gigavolts, 0545 /** @since 5.27 */ 0546 Megavolts, 0547 /** @since 5.27 */ 0548 Kilovolts, 0549 /** @since 5.27 */ 0550 Hectovolts, 0551 /** @since 5.27 */ 0552 Decavolts, 0553 /** @since 5.27 */ 0554 Volts, 0555 /** @since 5.27 */ 0556 Decivolts, 0557 /** @since 5.27 */ 0558 Centivolts, 0559 /** @since 5.27 */ 0560 Millivolts, 0561 /** @since 5.27 */ 0562 Microvolts, 0563 /** @since 5.27 */ 0564 Nanovolts, 0565 /** @since 5.27 */ 0566 Picovolts, 0567 /** @since 5.27 */ 0568 Femtovolts, 0569 /** @since 5.27 */ 0570 Attovolts, 0571 /** @since 5.27 */ 0572 Zeptovolts, 0573 /** @since 5.27 */ 0574 Yoctovolts, 0575 /** @since 5.27 */ 0576 Statvolts, 0577 0578 // Electrical Current 0579 /** @since 5.27 */ 0580 Yottaampere = 31000, 0581 /** @since 5.27 */ 0582 Zettaampere, 0583 /** @since 5.27 */ 0584 Exaampere, 0585 /** @since 5.27 */ 0586 Petaampere, 0587 /** @since 5.27 */ 0588 Teraampere, 0589 /** @since 5.27 */ 0590 Gigaampere, 0591 /** @since 5.27 */ 0592 Megaampere, 0593 /** @since 5.27 */ 0594 Kiloampere, 0595 /** @since 5.27 */ 0596 Hectoampere, 0597 /** @since 5.27 */ 0598 Decaampere, 0599 /** @since 5.27 */ 0600 Ampere, 0601 /** @since 5.27 */ 0602 Deciampere, 0603 /** @since 5.27 */ 0604 Centiampere, 0605 /** @since 5.27 */ 0606 Milliampere, 0607 /** @since 5.27 */ 0608 Microampere, 0609 /** @since 5.27 */ 0610 Nanoampere, 0611 /** @since 5.27 */ 0612 Picoampere, 0613 /** @since 5.27 */ 0614 Femtoampere, 0615 /** @since 5.27 */ 0616 Attoampere, 0617 /** @since 5.27 */ 0618 Zeptoampere, 0619 /** @since 5.27 */ 0620 Yoctoampere, 0621 0622 // Electrical Resistance 0623 /** @since 5.27 */ 0624 Yottaohms = 32000, 0625 /** @since 5.27 */ 0626 Zettaohms, 0627 /** @since 5.27 */ 0628 Exaohms, 0629 /** @since 5.27 */ 0630 Petaohms, 0631 /** @since 5.27 */ 0632 Teraohms, 0633 /** @since 5.27 */ 0634 Gigaohms, 0635 /** @since 5.27 */ 0636 Megaohms, 0637 /** @since 5.27 */ 0638 Kiloohms, 0639 /** @since 5.27 */ 0640 Hectoohms, 0641 /** @since 5.27 */ 0642 Decaohms, 0643 /** @since 5.27 */ 0644 Ohms, 0645 /** @since 5.27 */ 0646 Deciohms, 0647 /** @since 5.27 */ 0648 Centiohms, 0649 /** @since 5.27 */ 0650 Milliohms, 0651 /** @since 5.27 */ 0652 Microohms, 0653 /** @since 5.27 */ 0654 Nanoohms, 0655 /** @since 5.27 */ 0656 Picoohms, 0657 /** @since 5.27 */ 0658 Femtoohms, 0659 /** @since 5.27 */ 0660 Attoohms, 0661 /** @since 5.27 */ 0662 Zeptoohms, 0663 /** @since 5.27 */ 0664 Yoctoohms, 0665 0666 /** @since 5.53 */ 0667 Darcy = 33000, 0668 /** @since 5.53 */ 0669 MiliDarcy, 0670 /** @since 5.53 */ 0671 PermeabilitySquareMicrometer, 0672 0673 /** @since 5.61 */ 0674 Yobibyte = 34000, 0675 /** @since 5.61 */ 0676 Yobibit, 0677 /** @since 5.61 */ 0678 Yottabyte, 0679 /** @since 5.61 */ 0680 Yottabit, 0681 /** @since 5.61 */ 0682 Zebibyte, 0683 /** @since 5.61 */ 0684 Zebibit, 0685 /** @since 5.61 */ 0686 Zettabyte, 0687 /** @since 5.61 */ 0688 Zettabit, 0689 /** @since 5.61 */ 0690 Exbibyte, 0691 /** @since 5.61 */ 0692 Exbibit, 0693 /** @since 5.61 */ 0694 Exabyte, 0695 /** @since 5.61 */ 0696 Exabit, 0697 /** @since 5.61 */ 0698 Pebibyte, 0699 /** @since 5.61 */ 0700 Pebibit, 0701 /** @since 5.61 */ 0702 Petabyte, 0703 /** @since 5.61 */ 0704 Petabit, 0705 /** @since 5.61 */ 0706 Tebibyte, 0707 /** @since 5.61 */ 0708 Tebibit, 0709 /** @since 5.61 */ 0710 Terabyte, 0711 /** @since 5.61 */ 0712 Terabit, 0713 /** @since 5.61 */ 0714 Gibibyte, 0715 /** @since 5.61 */ 0716 Gibibit, 0717 /** @since 5.61 */ 0718 Gigabyte, 0719 /** @since 5.61 */ 0720 Gigabit, 0721 /** @since 5.61 */ 0722 Mebibyte, 0723 /** @since 5.61 */ 0724 Mebibit, 0725 /** @since 5.61 */ 0726 Megabyte, 0727 /** @since 5.61 */ 0728 Megabit, 0729 /** @since 5.61 */ 0730 Kibibyte, 0731 /** @since 5.61 */ 0732 Kibibit, 0733 /** @since 5.61 */ 0734 Kilobyte, 0735 /** @since 5.61 */ 0736 Kilobit, 0737 /** @since 5.61 */ 0738 Byte, 0739 /** @since 5.61 */ 0740 Bit 0741 }; 0742 0743 class UnitCategory; 0744 class UnitPrivate; 0745 0746 /** 0747 * @short Class to define a unit of measurement 0748 * 0749 * This is a class to define a unit of measurement. 0750 * 0751 * @see Converter, UnitCategory, Value 0752 * 0753 * @author Petri Damstén <damu@iki.fi> 0754 * @author John Layt <jlayt@kde.org> 0755 */ 0756 0757 class KUNITCONVERSION_EXPORT Unit 0758 { 0759 public: 0760 /** 0761 * Null constructor 0762 **/ 0763 Unit(); 0764 0765 /** 0766 * Copy constructor, copy @p other to this. 0767 **/ 0768 Unit(const Unit &other); 0769 0770 // TODO KF6: remove virtual 0771 virtual ~Unit(); 0772 0773 /** 0774 * Assignment operator, assign @p other to this. 0775 **/ 0776 Unit &operator=(const Unit &other); 0777 0778 // TODO KF6: de-inline 0779 #ifdef Q_COMPILER_RVALUE_REFS 0780 /** 0781 * Move-assigns @p other to this Unit instance, transferring the 0782 * ownership of the managed pointer to this instance. 0783 **/ 0784 Unit &operator=(Unit &&other) 0785 { 0786 swap(other); 0787 return *this; 0788 } 0789 #endif 0790 0791 // TODO KF6: remove 0792 /** 0793 * Swaps this Unit with @p other. This function is very fast and never fails. 0794 **/ 0795 void swap(Unit &other) 0796 { 0797 d.swap(other.d); 0798 } 0799 0800 /** 0801 * @return @c true if this Unit is equal to the @p other Unit. 0802 **/ 0803 bool operator==(const Unit &other) const; 0804 0805 /** 0806 * @return @c true if this Unit is not equal to the @p other Unit. 0807 **/ 0808 bool operator!=(const Unit &other) const; 0809 0810 /** 0811 * @return returns true if this Unit is null 0812 **/ 0813 bool isNull() const; 0814 0815 /** 0816 * @return if unit is valid. 0817 **/ 0818 bool isValid() const; 0819 0820 /** 0821 * @return unit id. 0822 **/ 0823 UnitId id() const; 0824 0825 /** 0826 * @return category id. 0827 **/ 0828 CategoryId categoryId() const; 0829 0830 /** 0831 * @return unit category. 0832 **/ 0833 UnitCategory category() const; 0834 0835 /** 0836 * @return translated name for unit. 0837 **/ 0838 QString description() const; 0839 0840 /** 0841 * @return symbol for the unit. 0842 **/ 0843 QString symbol() const; 0844 0845 /** 0846 * @param value number value 0847 * @param fieldWidth width of the formatted field, padded by spaces. 0848 * Positive value aligns right, negative aligns left 0849 * @param format type of floating point formatting, like in QString::arg 0850 * @param precision number of digits after the decimal separator 0851 * @param fillChar the character used to fill up the empty places when 0852 * field width is greater than argument width 0853 * @return value + unit string 0854 **/ 0855 QString toString(qreal value, int fieldWidth = 0, char format = 'g', int precision = -1, const QChar &fillChar = QLatin1Char(' ')) const; 0856 0857 /** 0858 * @param value number value 0859 * @param fieldWidth width of the formatted field, padded by spaces. 0860 * Positive value aligns right, negative aligns left 0861 * @param format type of floating point formatting, like in QString::arg 0862 * @param precision number of digits after the decimal separator 0863 * @param fillChar the character used to fill up the empty places when 0864 * field width is greater than argument width 0865 * @return value + unit string 0866 **/ 0867 QString toSymbolString(qreal value, int fieldWidth = 0, char format = 'g', int precision = -1, const QChar &fillChar = QLatin1Char(' ')) const; 0868 0869 protected: 0870 qreal toDefault(qreal value) const; 0871 qreal fromDefault(qreal value) const; 0872 0873 private: 0874 friend class UnitPrivate; 0875 friend class UnitCategory; 0876 friend class UnitCategoryPrivate; 0877 friend class CurrencyCategoryPrivate; 0878 0879 KUNITCONVERSION_NO_EXPORT explicit Unit(UnitPrivate *dd); 0880 0881 KUNITCONVERSION_NO_EXPORT void setUnitMultiplier(qreal multiplier); 0882 0883 QExplicitlySharedDataPointer<UnitPrivate> d; 0884 }; 0885 0886 } // KUnitConversion namespace 0887 0888 #endif