1// Copyright (C) 2023 basysKom GmbH, opensource@basyskom.com
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#pragma once
5
6#include <QtCore/qmap.h>
7
8class Import;
9class Visitor;
10class XmlElement;
11
12class TypeDictionary
13{
14public:
15 TypeDictionary(bool dependencyTypeDictionary,
16 const QString &defaultByOrder,
17 const QString &targetNamespace,
18 const QMap<QString, QString> &namespaces);
19 ~TypeDictionary();
20
21 void addType(XmlElement *type);
22 void print() const;
23 void accept(Visitor *visitor);
24
25 QMap<QString, QString> namespaces() const;
26 void setNamespaces(const QMap<QString, QString> &namespaces);
27
28 QString defaultByOrder() const;
29 void setDefaultByOrder(const QString &defaultByOrder);
30
31 QString targetNamespace() const;
32 void setTargetNamespace(const QString &targetNamespace);
33
34 QList<const Import *> imports() const;
35
36 bool dependencyTypeDictionary() const;
37
38 QList<XmlElement *> types() const;
39
40private:
41 bool m_dependencyTypeDictionary;
42 QString m_defaultByOrder;
43 QString m_targetNamespace;
44 QMap<QString, QString> m_namespaces;
45 QList<XmlElement *> m_types;
46};
47

Provided by KDAB

Privacy Policy
Learn to use CMake with our Intro Training
Find out more

source code of qtopcua/tools/datatypecodegenerator/typedictionary.h