File indexing completed on 2024-05-05 09:51:18
0001 /* 0002 SPDX-FileCopyrightText: 2019 Vlad Zahorodnii <vlad.zahorodnii@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 // Qt 0010 #include <QMetaType> 0011 0012 #include "formatter_export.h" 0013 0014 namespace KSysGuard 0015 { 0016 FORMATTER_EXPORT Q_NAMESPACE 0017 0018 /** 0019 * This enum type is used to specify metric prefixes. 0020 */ 0021 enum MetricPrefix { 0022 MetricPrefixAutoAdjust = -1, 0023 MetricPrefixUnity = 0, 0024 MetricPrefixKilo, 0025 MetricPrefixMega, 0026 MetricPrefixGiga, 0027 MetricPrefixTera, 0028 MetricPrefixPeta, 0029 MetricPrefixLast = MetricPrefixPeta 0030 }; 0031 Q_ENUM_NS(MetricPrefix) 0032 0033 /** 0034 * This enum types is used to specify units. 0035 */ 0036 enum Unit { 0037 UnitInvalid = -1, 0038 UnitNone = 0, 0039 0040 // Byte size units. 0041 UnitByte = 100, 0042 UnitKiloByte = MetricPrefixKilo + UnitByte, 0043 UnitMegaByte = MetricPrefixMega + UnitByte, 0044 UnitGigaByte = MetricPrefixGiga + UnitByte, 0045 UnitTeraByte = MetricPrefixTera + UnitByte, 0046 UnitPetaByte = MetricPrefixPeta + UnitByte, 0047 0048 // Data rate units. 0049 UnitByteRate = 200, 0050 UnitKiloByteRate = MetricPrefixKilo + UnitByteRate, 0051 UnitMegaByteRate = MetricPrefixMega + UnitByteRate, 0052 UnitGigaByteRate = MetricPrefixGiga + UnitByteRate, 0053 UnitTeraByteRate = MetricPrefixTera + UnitByteRate, 0054 UnitPetaByteRate = MetricPrefixPeta + UnitByteRate, 0055 0056 // Frequency. 0057 UnitHertz = 300, 0058 UnitKiloHertz = MetricPrefixKilo + UnitHertz, 0059 UnitMegaHertz = MetricPrefixMega + UnitHertz, 0060 UnitGigaHertz = MetricPrefixGiga + UnitHertz, 0061 UnitTeraHertz = MetricPrefixTera + UnitHertz, 0062 UnitPetaHertz = MetricPrefixPeta + UnitHertz, 0063 0064 // Time units. 0065 UnitBootTimestamp = 400, 0066 UnitSecond, 0067 UnitTime, 0068 UnitTicks, 0069 UnitDuration, 0070 0071 // Data rate units in bits. 0072 UnitBitRate = 500, 0073 UnitKiloBitRate = MetricPrefixKilo + UnitBitRate, 0074 UnitMegaBitRate = MetricPrefixMega + UnitBitRate, 0075 UnitGigaBitRate = MetricPrefixGiga + UnitBitRate, 0076 UnitTeraBitRate = MetricPrefixTera + UnitBitRate, 0077 UnitPetaBitRate = MetricPrefixPeta + UnitBitRate, 0078 0079 // Volt. 0080 UnitVolt = 600, 0081 UnitKiloVolt = MetricPrefixKilo + UnitVolt, 0082 UnitMegaVolt = MetricPrefixMega + UnitVolt, 0083 UnitGigaVolt = MetricPrefixGiga + UnitVolt, 0084 UnitTeraVolt = MetricPrefixTera + UnitVolt, 0085 UnitPetaVolt = MetricPrefixPeta + UnitVolt, 0086 0087 // Watt. 0088 UnitWatt = 700, 0089 UnitKiloWatt = MetricPrefixKilo + UnitWatt, 0090 UnitMegaWatt = MetricPrefixMega + UnitWatt, 0091 UnitGigaWatt = MetricPrefixGiga + UnitWatt, 0092 UnitTeraWatt = MetricPrefixTera + UnitWatt, 0093 UnitPetaWatt = MetricPrefixPeta + UnitWatt, 0094 0095 // WattHour. 0096 UnitWattHour = 800, 0097 UnitKiloWattHour = MetricPrefixKilo + UnitWattHour, 0098 UnitMegaWattHour = MetricPrefixMega + UnitWattHour, 0099 UnitGigaWattHour = MetricPrefixGiga + UnitWattHour, 0100 UnitTeraWattHour = MetricPrefixTera + UnitWattHour, 0101 UnitPetaWattHour = MetricPrefixPeta + UnitWattHour, 0102 0103 // Ampere. 0104 UnitAmpere = 900, 0105 UnitKiloAmpere = MetricPrefixKilo + UnitAmpere, 0106 UnitMegaAmpere = MetricPrefixMega + UnitAmpere, 0107 UnitGigaAmpere = MetricPrefixGiga + UnitAmpere, 0108 UnitTeraAmpere = MetricPrefixTera + UnitAmpere, 0109 UnitPetaAmpere = MetricPrefixPeta + UnitAmpere, 0110 0111 // Misc units. 0112 UnitCelsius = 1000, 0113 UnitDecibelMilliWatts, 0114 UnitPercent, 0115 UnitRate, 0116 UnitRpm, 0117 }; 0118 Q_ENUM_NS(Unit) 0119 0120 } // namespace KSysGuard