1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4//
5// W A R N I N G
6// -------------
7//
8// This file is not part of the QtDataVisualization API. It exists purely as an
9// implementation detail. This header file may change from version to
10// version without notice, or even be removed.
11//
12// We mean it.
13
14#ifndef QSURFACEDATAPROXY_P_H
15#define QSURFACEDATAPROXY_P_H
16
17#include "qsurfacedataproxy.h"
18#include "qabstractdataproxy_p.h"
19
20QT_BEGIN_NAMESPACE
21
22class QAbstract3DAxis;
23
24class QSurfaceDataProxyPrivate : public QAbstractDataProxyPrivate
25{
26 Q_OBJECT
27public:
28 QSurfaceDataProxyPrivate(QSurfaceDataProxy *q);
29 virtual ~QSurfaceDataProxyPrivate();
30
31 void resetArray(QSurfaceDataArray *newArray);
32 void setRow(int rowIndex, QSurfaceDataRow *row);
33 void setRows(int rowIndex, const QSurfaceDataArray &rows);
34 void setItem(int rowIndex, int columnIndex, const QSurfaceDataItem &item);
35 int addRow(QSurfaceDataRow *row);
36 int addRows(const QSurfaceDataArray &rows);
37 void insertRow(int rowIndex, QSurfaceDataRow *row);
38 void insertRows(int rowIndex, const QSurfaceDataArray &rows);
39 void removeRows(int rowIndex, int removeCount);
40 void limitValues(QVector3D &minValues, QVector3D &maxValues, QAbstract3DAxis *axisX,
41 QAbstract3DAxis *axisY, QAbstract3DAxis *axisZ) const;
42 bool isValidValue(float value, QAbstract3DAxis *axis) const;
43
44 void setSeries(QAbstract3DSeries *series) override;
45
46protected:
47 QSurfaceDataArray *m_dataArray;
48
49private:
50 QSurfaceDataProxy *qptr();
51 void clearRow(int rowIndex);
52 void clearArray();
53
54 friend class QSurfaceDataProxy;
55};
56
57QT_END_NAMESPACE
58
59#endif
60

source code of qtdatavis3d/src/datavisualization/data/qsurfacedataproxy_p.h