Warning, file /system/kpmcore/src/core/smartattribute.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002     SPDX-FileCopyrightText: 2010 Volker Lanz <vl@fidra.de>
0003     SPDX-FileCopyrightText: 2015 Chris Campbell <c.j.campbell@ed.ac.uk>
0004     SPDX-FileCopyrightText: 2016-2018 Andrius Štikonas <andrius@stikonas.eu>
0005     SPDX-FileCopyrightText: 2018 Caio Jordão Carvalho <caiojcarvalho@gmail.com>
0006     SPDX-FileCopyrightText: 2019 Yuri Chornoivan <yurchor@ukr.net>
0007 
0008     SPDX-License-Identifier: GPL-3.0-or-later
0009 */
0010 
0011 #ifndef KPMCORE_SMARTATTRIBUTE_H
0012 #define KPMCORE_SMARTATTRIBUTE_H
0013 
0014 #include "util/libpartitionmanagerexport.h"
0015 
0016 #include <QString>
0017 
0018 class SmartAttributeParsedData;
0019 
0020 class LIBKPMCORE_EXPORT SmartAttribute
0021 {
0022 public:
0023     enum class FailureType {
0024         PreFailure,
0025         OldAge
0026     };
0027 
0028     enum class UpdateType {
0029         Online,
0030         Offline
0031     };
0032 
0033     enum class Assessment {
0034         NotApplicable,
0035         Failing,
0036         HasFailed,
0037         Warning,
0038         Good
0039     };
0040 
0041 public:
0042     explicit SmartAttribute(const SmartAttributeParsedData& a);
0043 
0044 public:
0045     qint32 id() const {
0046         return m_Id;
0047     }
0048     const QString& name() const {
0049         return m_Name;
0050     }
0051     const QString& desc() const {
0052         return m_Desc;
0053     }
0054     FailureType failureType() const {
0055         return m_FailureType;
0056     }
0057     UpdateType updateType() const {
0058         return m_UpdateType;
0059     }
0060     qint32 current() const {
0061         return m_Current;
0062     }
0063     qint32 worst() const {
0064         return m_Worst;
0065     }
0066     qint32 threshold() const {
0067         return m_Threshold;
0068     }
0069     const QString& raw() const {
0070         return m_Raw;
0071     }
0072     Assessment assessment() const {
0073         return m_Assessment;
0074     }
0075     const QString& value() const {
0076         return m_Value;
0077     }
0078 
0079     QString assessmentToString() const {
0080         return assessmentToString(assessment());
0081     }
0082     static QString assessmentToString(Assessment a);
0083 
0084 private:
0085     qint32 m_Id;
0086     QString m_Name;
0087     QString m_Desc;
0088     FailureType m_FailureType;
0089     UpdateType m_UpdateType;
0090     qint32 m_Current;
0091     qint32 m_Worst;
0092     qint32 m_Threshold;
0093     QString m_Raw;
0094     Assessment m_Assessment;
0095     QString m_Value;
0096 };
0097 
0098 #endif