1 | // Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). |
2 | // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only |
3 | |
4 | #ifndef QT3DANIMATION_QCHANNELMAPPER_H |
5 | #define QT3DANIMATION_QCHANNELMAPPER_H |
6 | |
7 | #include <Qt3DAnimation/qt3danimation_global.h> |
8 | #include <Qt3DCore/qnode.h> |
9 | |
10 | QT_BEGIN_NAMESPACE |
11 | |
12 | namespace Qt3DAnimation { |
13 | |
14 | class QChannelMapperPrivate; |
15 | class QAbstractChannelMapping; |
16 | |
17 | class Q_3DANIMATIONSHARED_EXPORT QChannelMapper : public Qt3DCore::QNode |
18 | { |
19 | Q_OBJECT |
20 | |
21 | public: |
22 | explicit QChannelMapper(Qt3DCore::QNode *parent = nullptr); |
23 | ~QChannelMapper(); |
24 | |
25 | void addMapping(QAbstractChannelMapping *mapping); |
26 | void removeMapping(QAbstractChannelMapping *mapping); |
27 | QList<QAbstractChannelMapping *> mappings() const; |
28 | |
29 | protected: |
30 | explicit QChannelMapper(QChannelMapperPrivate &dd, Qt3DCore::QNode *parent = nullptr); |
31 | |
32 | private: |
33 | Q_DECLARE_PRIVATE(QChannelMapper) |
34 | }; |
35 | |
36 | } // namespace Qt3DAnimation |
37 | |
38 | QT_END_NAMESPACE |
39 | |
40 | #endif // QT3DANIMATION_QCHANNELMAPPER_H |
41 | |