FCT
载入中...
搜索中...
未找到
RenderGraph_DepthStencil.h
浏览该文件的文档.
1//
2// Created by Administrator on 2025/8/10.
3//
4
5#ifndef RENDERGRAPH_DEPTHSTENCIL_H
6#define RENDERGRAPH_DEPTHSTENCIL_H
7namespace FCT{
9 {
10 std::string name;
13 uint32_t width;
14 uint32_t height;
16
19
20 DepthStencil() noexcept
22 width(0), height(0), hasFixedSize(false), wnd(nullptr), isWindow(false) {}
23
24 template<typename... Args>
25 DepthStencil(std::string_view name, Args&&... args) noexcept
27 width(0), height(0), hasFixedSize(false), wnd(nullptr), isWindow(false) {
28 processArgs(std::forward<Args>(args)...);
29 }
30
31 template<typename... Rest>
32 constexpr void processArgs(const Format& other, Rest&&... rest) noexcept {
33 format = other;
34 processArgs(std::forward<Rest>(rest)...);
35 }
36
37 template<typename... Rest>
38 constexpr void processArgs(const Samples& other, Rest&&... rest) noexcept {
39 samples = other;
40 processArgs(std::forward<Rest>(rest)...);
41 }
42
43 template<typename... Rest>
44 constexpr void processArgs(Window* window, Rest&&... rest) noexcept {
45 wnd = window;
46 isWindow = true;
47 processArgs(std::forward<Rest>(rest)...);
48 }
49
50 template<typename... Rest>
51 constexpr void processArgs(uint32_t w, uint32_t h, Rest&&... rest) noexcept {
52 width = w;
53 height = h;
54 hasFixedSize = true;
55 processArgs(std::forward<Rest>(rest)...);
56 }
57
58 constexpr void processArgs() noexcept {}
59 };
60}
61#endif //RENDERGRAPH_DEPTHSTENCIL_H
constexpr void processArgs(const Format &other, Rest &&... rest) noexcept
constexpr void processArgs(Window *window, Rest &&... rest) noexcept
constexpr void processArgs(const Samples &other, Rest &&... rest) noexcept
constexpr void processArgs(uint32_t w, uint32_t h, Rest &&... rest) noexcept
constexpr void processArgs() noexcept
DepthStencil(std::string_view name, Args &&... args) noexcept