File indexing completed on 2024-04-21 11:37:08

0001 /*
0002  *   SPDX-FileCopyrightText: 2010 Petri Damstén <damu@iki.fi>
0003  *   SPDX-FileCopyrightText: 2014 John Layt <jlayt@kde.org>
0004  *   SPDX-FileCopyrightText: 2014 Garret Wassermann <gwasser@gmail.com>
0005  *
0006  *   SPDX-License-Identifier: LGPL-2.0-or-later
0007  */
0008 
0009 #include "electrical_resistance_p.h"
0010 #include "unit_p.h"
0011 
0012 #include <KLocalizedString>
0013 
0014 namespace KUnitConversion
0015 {
0016 UnitCategory ElectricalResistance::makeCategory()
0017 {
0018     auto c = UnitCategoryPrivate::makeCategory(ElectricalResistanceCategory, i18n("Resistance"), i18n("Resistance"));
0019     auto d = UnitCategoryPrivate::get(c);
0020     KLocalizedString symbolString = ki18nc("%1 value, %2 unit symbol (electrical resistance", "%1 %2");
0021 
0022     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0023                        Yottaohms,
0024                        1e+24,
0025                        i18nc("electrical resistance unit symbol", "YΩ"),
0026                        i18nc("unit description in lists", "yottaohms"),
0027                        i18nc("unit synonyms for matching user input", "yottaohm;yottaohms;YΩ"),
0028                        symbolString,
0029                        ki18nc("amount in units (real)", "%1 yottaohms"),
0030                        ki18ncp("amount in units (integer)", "%1 yottaohm", "%1 yottaohms")));
0031 
0032     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0033                        Zettaohms,
0034                        1e+21,
0035                        i18nc("electrical resistance unit symbol", "ZΩ"),
0036                        i18nc("unit description in lists", "zettaohms"),
0037                        i18nc("unit synonyms for matching user input", "zettaohm;zettaohms;ZΩ"),
0038                        symbolString,
0039                        ki18nc("amount in units (real)", "%1 zettaohms"),
0040                        ki18ncp("amount in units (integer)", "%1 zettaohm", "%1 zettaohms")));
0041 
0042     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0043                        Exaohms,
0044                        1e+18,
0045                        i18nc("electrical resistance unit symbol", "EΩ"),
0046                        i18nc("unit description in lists", "exaohms"),
0047                        i18nc("unit synonyms for matching user input", "exaohm;exaohms;EΩ"),
0048                        symbolString,
0049                        ki18nc("amount in units (real)", "%1 exaohms"),
0050                        ki18ncp("amount in units (integer)", "%1 exaohm", "%1 exaohms")));
0051 
0052     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0053                        Petaohms,
0054                        1e+15,
0055                        i18nc("electrical resistance unit symbol", "PΩ"),
0056                        i18nc("unit description in lists", "petaohms"),
0057                        i18nc("unit synonyms for matching user input", "petaohm;petaohms;PΩ"),
0058                        symbolString,
0059                        ki18nc("amount in units (real)", "%1 petaohms"),
0060                        ki18ncp("amount in units (integer)", "%1 petaohm", "%1 petaohms")));
0061 
0062     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0063                        Teraohms,
0064                        1e+12,
0065                        i18nc("electrical resistance unit symbol", "TΩ"),
0066                        i18nc("unit description in lists", "teraohms"),
0067                        i18nc("unit synonyms for matching user input", "teraohm;teraohms;TΩ"),
0068                        symbolString,
0069                        ki18nc("amount in units (real)", "%1 teraohms"),
0070                        ki18ncp("amount in units (integer)", "%1 teraohm", "%1 teraohms")));
0071 
0072     d->addCommonUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0073                              Gigaohms,
0074                              1e+09,
0075                              i18nc("electrical resistance unit symbol", "GΩ"),
0076                              i18nc("unit description in lists", "gigaohms"),
0077                              i18nc("unit synonyms for matching user input", "gigaohm;gigaohms;GΩ"),
0078                              symbolString,
0079                              ki18nc("amount in units (real)", "%1 gigaohms"),
0080                              ki18ncp("amount in units (integer)", "%1 gigaohm", "%1 gigaohms")));
0081 
0082     d->addCommonUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0083                              Megaohms,
0084                              1e+06,
0085                              i18nc("electrical resistance unit symbol", "MΩ"),
0086                              i18nc("unit description in lists", "megaohms"),
0087                              i18nc("unit synonyms for matching user input", "megaohm;megaohms;MΩ"),
0088                              symbolString,
0089                              ki18nc("amount in units (real)", "%1 megaohms"),
0090                              ki18ncp("amount in units (integer)", "%1 megaohm", "%1 megaohms")));
0091 
0092     d->addCommonUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0093                              Kiloohms,
0094                              1000,
0095                              i18nc("electrical resistance unit symbol", "kΩ"),
0096                              i18nc("unit description in lists", "kiloohms"),
0097                              i18nc("unit synonyms for matching user input", "kiloohm;kiloohms;kΩ"),
0098                              symbolString,
0099                              ki18nc("amount in units (real)", "%1 kiloohms"),
0100                              ki18ncp("amount in units (integer)", "%1 kiloohm", "%1 kiloohms")));
0101 
0102     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0103                        Hectoohms,
0104                        100,
0105                        i18nc("electrical resistance unit symbol", "hΩ"),
0106                        i18nc("unit description in lists", "hectoohms"),
0107                        i18nc("unit synonyms for matching user input", "hectoohm;hectoohms;hΩ"),
0108                        symbolString,
0109                        ki18nc("amount in units (real)", "%1 hectoohms"),
0110                        ki18ncp("amount in units (integer)", "%1 hectoohm", "%1 hectoohms")));
0111 
0112     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0113                        Decaohms,
0114                        10,
0115                        i18nc("electrical resistance unit symbol", "daΩ"),
0116                        i18nc("unit description in lists", "decaohms"),
0117                        i18nc("unit synonyms for matching user input", "decaohm;decaohms;daΩ"),
0118                        symbolString,
0119                        ki18nc("amount in units (real)", "%1 decaohms"),
0120                        ki18ncp("amount in units (integer)", "%1 decaohm", "%1 decaohms")));
0121 
0122     d->addDefaultUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0123                               Ohms,
0124                               1,
0125                               i18nc("electrical resistance unit symbol", "Ω"),
0126                               i18nc("unit description in lists", "ohms"),
0127                               i18nc("unit synonyms for matching user input", "ohm;ohms;Ω"),
0128                               symbolString,
0129                               ki18nc("amount in units (real)", "%1 ohms"),
0130                               ki18ncp("amount in units (integer)", "%1 ohm", "%1 ohms")));
0131 
0132     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0133                        Deciohms,
0134                        0.1,
0135                        i18nc("electrical resistance unit symbol", "dΩ"),
0136                        i18nc("unit description in lists", "deciohms"),
0137                        i18nc("unit synonyms for matching user input", "deciohm;deciohms;dΩ"),
0138                        symbolString,
0139                        ki18nc("amount in units (real)", "%1 deciohms"),
0140                        ki18ncp("amount in units (integer)", "%1 deciohm", "%1 deciohms")));
0141 
0142     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0143                        Centiohms,
0144                        0.01,
0145                        i18nc("electrical resistance unit symbol", "cΩ"),
0146                        i18nc("unit description in lists", "centiohms"),
0147                        i18nc("unit synonyms for matching user input", "centiohm;centiohms;cΩ"),
0148                        symbolString,
0149                        ki18nc("amount in units (real)", "%1 centiohms"),
0150                        ki18ncp("amount in units (integer)", "%1 centiohm", "%1 centiohms")));
0151 
0152     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0153                        Milliohms,
0154                        0.001,
0155                        i18nc("electrical resistance unit symbol", "mΩ"),
0156                        i18nc("unit description in lists", "milliohms"),
0157                        i18nc("unit synonyms for matching user input", "milliohm;milliohms;mΩ"),
0158                        symbolString,
0159                        ki18nc("amount in units (real)", "%1 milliohms"),
0160                        ki18ncp("amount in units (integer)", "%1 milliohm", "%1 milliohms")));
0161 
0162     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0163                        Microohms,
0164                        1e-06,
0165                        i18nc("electrical resistance unit symbol", "µΩ"),
0166                        i18nc("unit description in lists", "microohms"),
0167                        i18nc("unit synonyms for matching user input", "microohm;microohms;µΩ;uΩ"),
0168                        symbolString,
0169                        ki18nc("amount in units (real)", "%1 microohms"),
0170                        ki18ncp("amount in units (integer)", "%1 microohm", "%1 microohms")));
0171 
0172     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0173                        Nanoohms,
0174                        1e-09,
0175                        i18nc("electrical resistance unit symbol", "nΩ"),
0176                        i18nc("unit description in lists", "nanoohms"),
0177                        i18nc("unit synonyms for matching user input", "nanoohm;nanoohms;nΩ"),
0178                        symbolString,
0179                        ki18nc("amount in units (real)", "%1 nanoohms"),
0180                        ki18ncp("amount in units (integer)", "%1 nanoohm", "%1 nanoohms")));
0181 
0182     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0183                        Picoohms,
0184                        1e-12,
0185                        i18nc("electrical resistance unit symbol", "pΩ"),
0186                        i18nc("unit description in lists", "picoohms"),
0187                        i18nc("unit synonyms for matching user input", "picoohm;picoohms;pΩ"),
0188                        symbolString,
0189                        ki18nc("amount in units (real)", "%1 picoohms"),
0190                        ki18ncp("amount in units (integer)", "%1 picoohm", "%1 picoohms")));
0191 
0192     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0193                        Femtoohms,
0194                        1e-15,
0195                        i18nc("electrical resistance unit symbol", "fΩ"),
0196                        i18nc("unit description in lists", "femtoohms"),
0197                        i18nc("unit synonyms for matching user input", "femtoohm;femtoohms;fΩ"),
0198                        symbolString,
0199                        ki18nc("amount in units (real)", "%1 femtoohms"),
0200                        ki18ncp("amount in units (integer)", "%1 femtoohm", "%1 femtoohms")));
0201 
0202     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0203                        Attoohms,
0204                        1e-18,
0205                        i18nc("electrical resistance unit symbol", "aΩ"),
0206                        i18nc("unit description in lists", "attoohms"),
0207                        i18nc("unit synonyms for matching user input", "attoohm;attoohms;aΩ"),
0208                        symbolString,
0209                        ki18nc("amount in units (real)", "%1 attoohms"),
0210                        ki18ncp("amount in units (integer)", "%1 attoohm", "%1 attoohms")));
0211 
0212     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0213                        Zeptoohms,
0214                        1e-21,
0215                        i18nc("electrical resistance unit symbol", "zΩ"),
0216                        i18nc("unit description in lists", "zeptoohms"),
0217                        i18nc("unit synonyms for matching user input", "zeptoohm;zeptoohms;zΩ"),
0218                        symbolString,
0219                        ki18nc("amount in units (real)", "%1 zeptoohms"),
0220                        ki18ncp("amount in units (integer)", "%1 zeptoohm", "%1 zeptoohms")));
0221 
0222     d->addUnit(UnitPrivate::makeUnit(ElectricalResistanceCategory,
0223                        Yoctoohms,
0224                        1e-24,
0225                        i18nc("electrical resistance unit symbol", "yΩ"),
0226                        i18nc("unit description in lists", "yoctoohms"),
0227                        i18nc("unit synonyms for matching user input", "yoctoohm;yoctoohms;yΩ"),
0228                        symbolString,
0229                        ki18nc("amount in units (real)", "%1 yoctoohms"),
0230                        ki18ncp("amount in units (integer)", "%1 yoctoohm", "%1 yoctoohms")));
0231 
0232     return c;
0233 }
0234 
0235 } // KUnitConversion namespace