1// Copyright (C) 2020 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_RENDER_RHI_RHIRENDERTARGET_H
5#define QT3DRENDER_RENDER_RHI_RHIRENDERTARGET_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists for the convenience
12// of other Qt classes. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <rhi/qrhi.h>
19#include <rhihandle_types_p.h>
20#include <private/attachmentpack_p.h>
21
22QT_BEGIN_NAMESPACE
23
24
25namespace Qt3DRender {
26namespace Render {
27namespace Rhi {
28
29struct RHIRenderTarget {
30 // Note: only used when rendering to a FBO
31 // as we don't want to remove the default framebuffer's rendertarget
32 // TODO: at some point separate render target and graphics pipeline as the former can be reused
33 QRhiRenderTarget *renderTarget{ nullptr };
34 QRhiRenderPassDescriptor *renderPassDescriptor{ nullptr };
35 QRhiRenderBuffer *depthStencilBuffer{ nullptr };
36
37 enum class BackBuffer {
38 None,
39 Left,
40 Right,
41 };
42 BackBuffer backBuffer{ BackBuffer::None };
43
44 ~RHIRenderTarget();
45 void cleanup();
46};
47
48} // namespace Rhi
49} // namespace Render
50} // namespace Qt3DRender
51
52QT_END_NAMESPACE
53
54#endif // QT3DRENDER_RENDER_RHI_RENDERER_H
55

Provided by KDAB

Privacy Policy
Learn Advanced QML with KDAB
Find out more

source code of qt3d/src/plugins/renderers/rhi/renderer/rhirendertarget_p.h