QXmpp  Version: 1.15.1
QXmppOmemoDeviceList_p.h
1 // SPDX-FileCopyrightText: 2021 Germán Márquez Mejía <mancho@olomono.de>
2 // SPDX-FileCopyrightText: 2021 Melvin Keskin <melvo@olomono.de>
3 //
4 // SPDX-License-Identifier: LGPL-2.1-or-later
5 
6 #ifndef QXMPPOMEMODEVICELIST_H
7 #define QXMPPOMEMODEVICELIST_H
8 
9 #include "QXmppConstants_p.h"
10 #include "QXmppGlobal.h"
11 #include "QXmppOmemoDeviceElement_p.h"
12 
13 #include "QList"
14 
15 class QDomElement;
16 class QXmlStreamWriter;
17 
18 class QXMPP_AUTOTEST_EXPORT QXmppOmemoDeviceList : public QList<QXmppOmemoDeviceElement>
19 {
20 public:
22  static constexpr std::tuple XmlTag = { u"devices", QXmpp::Private::ns_omemo_2 };
23  void parse(const QDomElement &element);
24  void toXml(QXmlStreamWriter *writer) const;
26 
27  static bool isOmemoDeviceList(const QDomElement &element);
28 };
29 
30 Q_DECLARE_TYPEINFO(QXmppOmemoDeviceList, Q_MOVABLE_TYPE);
31 
32 #endif // QXMPPOMEMODEVICELIST_H