LeviLamina
Loading...
Searching...
No Matches
Frame.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/memory/bedrock/VirtualArray.h"
7#include "mc/external/bgfx/AccelerationStructureHandle.h"
8#include "mc/external/bgfx/BlitItem.h"
9#include "mc/external/bgfx/CommandBuffer.h"
10#include "mc/external/bgfx/FrameBufferHandle.h"
11#include "mc/external/bgfx/FrameCache.h"
12#include "mc/external/bgfx/GuardedFreeHandleDynamic.h"
13#include "mc/external/bgfx/IndexBufferHandle.h"
14#include "mc/external/bgfx/ProgramHandle.h"
15#include "mc/external/bgfx/RayTracingConfiguration.h"
16#include "mc/external/bgfx/RayTracingResources.h"
17#include "mc/external/bgfx/RenderItem.h"
18#include "mc/external/bgfx/Resolution.h"
19#include "mc/external/bgfx/ShaderBufferHandle.h"
20#include "mc/external/bgfx/ShaderHandle.h"
21#include "mc/external/bgfx/Stats.h"
22#include "mc/external/bgfx/UniformHandle.h"
23#include "mc/external/bgfx/VertexBufferHandle.h"
24#include "mc/external/bgfx/VertexDeclHandle.h"
25#include "mc/external/bgfx/View.h"
26#include "mc/external/bgfx/ViewStats.h"
27
28// auto generated forward declare list
29// clang-format off
30namespace bgfx { class UniformBuffer; }
31namespace bgfx { struct RangedBindings; }
32namespace bgfx { struct RenderBind; }
33namespace bgfx { struct TextVideoMem; }
34namespace bgfx { struct TextureHandle; }
35namespace bgfx { struct TransientIndexBuffer; }
36namespace bgfx { struct TransientVertexBuffer; }
37// clang-format on
38
39namespace bgfx {
40
41struct Frame {
42public:
43 // Frame inner types declare
44 // clang-format off
45 template<typename T0, int T1> struct FreeHandle;
46 // clang-format on
47
48 // Frame inner types define
49 template <typename T0, int T1>
50 struct FreeHandle {};
51
52public:
53 // member variables
54 // NOLINTBEGIN
55 ::ll::TypedStorage<2, 512, ushort[256]> m_viewRemap;
56 ::ll::TypedStorage<4, 256, float[16][4]> m_colorPalette;
57 ::ll::TypedStorage<8, 131072, ::bgfx::View[256]> m_view;
58 ::ll::TypedStorage<4, 1024, int[256]> m_occlusion;
59 ::ll::TypedStorage<8, 524288, uint64[65536]> m_sortKeys;
60 ::ll::TypedStorage<2, 131072, ushort[65536]> m_sortValues;
61 ::ll::TypedStorage<8, 8388608, ::bgfx::RenderItem[65536]> m_renderItem;
62 ::ll::TypedStorage<8, 120, ::Bedrock::Memory::VirtualArray<::bgfx::RenderBind>> m_renderItemBind;
63 ::ll::TypedStorage<8, 524288, ::bgfx::RangedBindings* [65536]> m_rangedRenderItemBind;
64 ::ll::TypedStorage<4, 4104, uint[1025]> m_blitKeys;
65 ::ll::TypedStorage<2, 65600, ::bgfx::BlitItem[1025]> m_blitItem;
66 ::ll::TypedStorage<4, 4718624, ::bgfx::FrameCache> m_frameCache;
67 ::ll::TypedStorage<8, 8, ::bgfx::UniformBuffer**> m_uniformBuffer;
68 ::ll::TypedStorage<4, 4, uint> m_numRenderItems;
69 ::ll::TypedStorage<2, 2, ushort> m_numBlitItems;
70 ::ll::TypedStorage<4, 4, uint> m_iboffset;
71 ::ll::TypedStorage<4, 4, uint> m_vboffset;
72 ::ll::TypedStorage<8, 8, ::bgfx::TransientIndexBuffer*> m_transientIb;
73 ::ll::TypedStorage<8, 8, ::bgfx::TransientVertexBuffer*> m_transientVb;
74 ::ll::TypedStorage<4, 12, ::bgfx::Resolution> m_resolution;
75 ::ll::TypedStorage<4, 4, uint> m_debug;
76 ::ll::TypedStorage<4, 262152, ::bgfx::CommandBuffer> m_cmdPre;
77 ::ll::TypedStorage<4, 262152, ::bgfx::CommandBuffer> m_cmdPost;
78 ::ll::TypedStorage<2, 8194, ::bgfx::Frame::FreeHandle<::bgfx::IndexBufferHandle, 4096>> m_freeIndexBuffer;
79 ::ll::TypedStorage<2, 130, ::bgfx::Frame::FreeHandle<::bgfx::VertexDeclHandle, 64>> m_freeVertexDecl;
80 ::ll::TypedStorage<2, 8194, ::bgfx::Frame::FreeHandle<::bgfx::VertexBufferHandle, 4096>> m_freeVertexBuffer;
81 ::ll::TypedStorage<2, 8194, ::bgfx::Frame::FreeHandle<::bgfx::ShaderHandle, 4096>> m_freeShader;
82 ::ll::TypedStorage<2, 4098, ::bgfx::Frame::FreeHandle<::bgfx::ProgramHandle, 2048>> m_freeProgram;
83 ::ll::TypedStorage<8, 8224, ::bgfx::GuardedFreeHandleDynamic<::bgfx::TextureHandle, 4096, 4096>> m_freeTexture;
84 ::ll::TypedStorage<2, 8194, ::bgfx::Frame::FreeHandle<::bgfx::ShaderBufferHandle, 4096>> m_freeShaderBuffer;
85 ::ll::TypedStorage<2, 258, ::bgfx::Frame::FreeHandle<::bgfx::FrameBufferHandle, 128>> m_freeFrameBuffer;
86 ::ll::TypedStorage<2, 1026, ::bgfx::Frame::FreeHandle<::bgfx::UniformHandle, 512>> m_freeUniform;
87 ::ll::TypedStorage<2, 65538, ::bgfx::Frame::FreeHandle<::bgfx::AccelerationStructureHandle, 32768>>
88 m_freeAccelerationStructure;
89 ::ll::TypedStorage<8, 8, ::bgfx::TextVideoMem*> m_textVideoMem;
90 ::ll::TypedStorage<8, 208, ::bgfx::Stats> m_perfStats;
91 ::ll::TypedStorage<2, 2, ushort> m_numViewStats;
92 ::ll::TypedStorage<8, 79872, ::bgfx::ViewStats[256]> m_viewStats;
93 ::ll::TypedStorage<8, 8, int64> m_waitSubmit;
94 ::ll::TypedStorage<8, 8, int64> m_waitRender;
95 ::ll::TypedStorage<4, 4, uint> m_frameNum;
96 ::ll::TypedStorage<4, 488, ::bgfx::RayTracingConfiguration> m_rtConfig;
97 ::ll::TypedStorage<8, 192, ::bgfx::RayTracingResources> m_rtResources;
98 ::ll::TypedStorage<1, 1, bool> m_capture;
99 ::ll::TypedStorage<1, 63, bool> m_skipFlip;
100 // NOLINTEND
101
102public:
103 // member functions
104 // NOLINTBEGIN
105 MCAPI Frame();
106
107 MCAPI void cloneRangedBindingsToRenderItem(uint _renderItemIdx, ::bgfx::RangedBindings const& _rangedBindings);
108
109 MCAPI void create();
110
111 MCAPI void destroy();
112
113 MCAPI void sort();
114 // NOLINTEND
115
116public:
117 // constructor thunks
118 // NOLINTBEGIN
119 MCAPI void* $ctor();
120 // NOLINTEND
121};
122
123} // namespace bgfx
Definition UniformBuffer.h:7
Definition Frame.h:50
Definition Frame.h:7
Definition RangedBindings.h:7
Definition RenderBind.h:7
Definition TextVideoMem.h:7
Definition TextureHandle.h:7
Definition TransientIndexBuffer.h:7
Definition TransientVertexBuffer.h:7