1// Copyright (C) 2023 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4#ifndef QTGRAPHS_QABSTRACTDATAPROXY_H
5#define QTGRAPHS_QABSTRACTDATAPROXY_H
6
7#include <QtCore/qobject.h>
8#include <QtCore/qscopedpointer.h>
9#include <QtGraphs/qgraphsglobal.h>
10#include <QtQmlIntegration/qqmlintegration.h>
11
12QT_BEGIN_NAMESPACE
13
14class QAbstractDataProxyPrivate;
15
16class Q_GRAPHS_EXPORT QAbstractDataProxy : public QObject
17{
18 Q_OBJECT
19 Q_DECLARE_PRIVATE(QAbstractDataProxy)
20 Q_CLASSINFO("RegisterEnumClassesUnscoped", "false")
21 Q_PROPERTY(QAbstractDataProxy::DataType type READ type CONSTANT)
22 QML_NAMED_ELEMENT(AbstractDataProxy)
23 QML_UNCREATABLE("Uncreatable base type")
24
25public:
26 enum class DataType {
27 None,
28 Bar,
29 Scatter,
30 Surface,
31 };
32 Q_ENUM(DataType)
33
34protected:
35 explicit QAbstractDataProxy(QAbstractDataProxyPrivate &d, QObject *parent = nullptr);
36
37public:
38 ~QAbstractDataProxy() override;
39
40 QAbstractDataProxy::DataType type() const;
41
42private:
43 Q_DISABLE_COPY(QAbstractDataProxy)
44
45 friend class QAbstract3DSeriesPrivate;
46};
47
48QT_END_NAMESPACE
49
50#endif
51

source code of qtgraphs/src/graphs3d/data/qabstractdataproxy.h