1/*
2 SPDX-FileCopyrightText: 2018 Pranav Gade <pranavgade20@gmail.com>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6
7#ifndef NETWORKMANAGERQT_TC_SETTING_H
8#define NETWORKMANAGERQT_TC_SETTING_H
9
10#include "setting.h"
11#include <networkmanagerqt/networkmanagerqt_export.h>
12
13namespace NetworkManager
14{
15class TcSettingPrivate;
16
17/*!
18 * \class NetworkManager::TcSetting
19 * \inheaderfile NetworkManagerQt/TcSetting
20 * \inmodule NetworkManagerQt
21 *
22 * \brief Represents Tc setting.
23 */
24class NETWORKMANAGERQT_EXPORT TcSetting : public Setting
25{
26public:
27 /*!
28 * \typedef NetworkManager::TcSetting::Ptr
29 */
30 typedef QSharedPointer<TcSetting> Ptr;
31 /*!
32 * \typedef NetworkManager::TcSetting::List
33 */
34 typedef QList<Ptr> List;
35
36 /*!
37 */
38 TcSetting();
39 /*!
40 */
41 explicit TcSetting(const Ptr &other);
42 ~TcSetting() override;
43
44 QString name() const override;
45
46 /*!
47 */
48 void setQdiscs(const NMVariantMapList &qdiscs);
49 /*!
50 */
51 NMVariantMapList qdiscs() const;
52
53 /*!
54 */
55 void setTfilters(const NMVariantMapList &tfilters);
56 /*!
57 */
58 NMVariantMapList tfilters() const;
59
60 void fromMap(const QVariantMap &setting) override;
61
62 QVariantMap toMap() const override;
63
64protected:
65 TcSettingPrivate *d_ptr;
66
67private:
68 Q_DECLARE_PRIVATE(TcSetting)
69};
70
71NETWORKMANAGERQT_EXPORT QDebug operator<<(QDebug dbg, const TcSetting &setting);
72
73}
74
75#endif // NETWORKMANAGERQT_TC_SETTING_H
76

source code of networkmanager-qt/src/settings/tcsetting.h