1// Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB).
2// Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies).
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
4
5
6#ifndef QT3DRENDER_QCULLFACE_H
7#define QT3DRENDER_QCULLFACE_H
8
9#include <Qt3DRender/qrenderstate.h>
10
11QT_BEGIN_NAMESPACE
12
13namespace Qt3DRender {
14
15class QCullFacePrivate;
16
17class Q_3DRENDERSHARED_EXPORT QCullFace : public QRenderState
18{
19 Q_OBJECT
20 Q_PROPERTY(CullingMode mode READ mode WRITE setMode NOTIFY modeChanged)
21
22public:
23
24 enum CullingMode
25 {
26 NoCulling = 0x0,
27 Front = 0x0404,
28 Back = 0x0405,
29 FrontAndBack = 0x0408
30 };
31 Q_ENUM(CullingMode) // LCOV_EXCL_LINE
32
33 explicit QCullFace(Qt3DCore::QNode *parent = nullptr);
34 ~QCullFace();
35
36 CullingMode mode() const;
37
38public Q_SLOTS:
39 void setMode(CullingMode mode);
40
41Q_SIGNALS:
42 void modeChanged(CullingMode mode);
43
44private:
45 Q_DECLARE_PRIVATE(QCullFace)
46};
47
48} // namespace Qt3DRender
49
50QT_END_NAMESPACE
51
52#endif // QT3DRENDER_QCULLFACE_H
53

source code of qt3d/src/render/renderstates/qcullface.h