1#pragma once
2
3#include <nn/gfx/detail/gfx_Misc.h>
4#include <nn/gfx/gfx_Common.h>
5#include <nn/nn_BitTypes.h>
6#include <nn/util/util_BitPack.h>
7
8namespace nn::gfx {
9
10template <>
11struct ShaderImplData<ApiVariationNvn8> {
12 enum State { State_NotInitialized, State_Initialized };
13 enum Flag { Flag_SeparationEnable, Flag_ResShader, Flag_Shared };
14
15 Bit8 state;
16 nn::util::BitPack8 flags;
17 char reserved[2];
18 Bit32 nvnShaderStageBits;
19 detail::Ptr<void> pNvnProgram;
20 char nvnProgram[192];
21 detail::Ptr<const void> pReflection;
22 detail::Ptr<void> pOnlineCompiledShader;
23 detail::Ptr<void> userPtr;
24};
25
26} // namespace nn::gfx
27