1// Copyright (C) 2014 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 QT3DRENDER_QRENDERPASSFILTER_H
5#define QT3DRENDER_QRENDERPASSFILTER_H
6
7#include <Qt3DRender/qt3drender_global.h>
8#include <Qt3DRender/qframegraphnode.h>
9#include <QtCore/QString>
10
11
12QT_BEGIN_NAMESPACE
13
14namespace Qt3DRender {
15
16class QRenderPassFilterPrivate;
17class QFilterKey;
18class QParameter;
19
20class Q_3DRENDERSHARED_EXPORT QRenderPassFilter : public QFrameGraphNode
21{
22 Q_OBJECT
23
24public:
25 explicit QRenderPassFilter(Qt3DCore::QNode *parent = nullptr);
26 ~QRenderPassFilter();
27
28 QList<QFilterKey *> matchAny() const;
29 void addMatch(QFilterKey *filterKey);
30 void removeMatch(QFilterKey *filterKey);
31
32 void addParameter(QParameter *parameter);
33 void removeParameter(QParameter *parameter);
34 QList<QParameter *> parameters() const;
35
36protected:
37 explicit QRenderPassFilter(QRenderPassFilterPrivate &dd, Qt3DCore::QNode *parent = nullptr);
38
39private:
40 Q_DECLARE_PRIVATE(QRenderPassFilter)
41};
42
43} // namespace Qt3DRender
44
45QT_END_NAMESPACE
46
47#endif // QT3DRENDER_QRENDERPASSFILTER_H
48

source code of qt3d/src/render/framegraph/qrenderpassfilter.h