1 // Copyright 2022 The Android Open Source Project
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 namespace gfxstream {
16 namespace vk {
17 namespace decompression_shaders {
18 
19 // Compiled code of the image decompression shaders
20 //
21 // We use `inline constexpr` here, as recommended in
22 // https://abseil.io/tips/140#constants-in-header-files
23 
24 inline constexpr uint32_t AstcToBc3_1D[] = {
25 #include "compiled/AstcToBc3_1D.inl"
26 };
27 inline constexpr uint32_t AstcToBc3_2D[] = {
28 #include "compiled/AstcToBc3_2D.inl"
29 };
30 inline constexpr uint32_t AstcToBc3_3D[] = {
31 #include "compiled/AstcToBc3_3D.inl"
32 };
33 inline constexpr uint32_t AstcToRgb_1D[] = {
34 #include "compiled/AstcToRgb_1D.inl"
35 };
36 inline constexpr uint32_t AstcToRgb_2D[] = {
37 #include "compiled/AstcToRgb_2D.inl"
38 };
39 inline constexpr uint32_t AstcToRgb_3D[] = {
40 #include "compiled/AstcToRgb_3D.inl"
41 };
42 inline constexpr uint32_t Astc_1D[] = {
43 #include "compiled/Astc_1D.inl"
44 };
45 inline constexpr uint32_t Astc_2D[] = {
46 #include "compiled/Astc_2D.inl"
47 };
48 inline constexpr uint32_t Astc_3D[] = {
49 #include "compiled/Astc_3D.inl"
50 };
51 inline constexpr uint32_t EacR11Snorm_1D[] = {
52 #include "compiled/EacR11Snorm_1D.inl"
53 };
54 inline constexpr uint32_t EacR11Snorm_2D[] = {
55 #include "compiled/EacR11Snorm_2D.inl"
56 };
57 inline constexpr uint32_t EacR11Snorm_3D[] = {
58 #include "compiled/EacR11Snorm_3D.inl"
59 };
60 inline constexpr uint32_t EacR11Unorm_1D[] = {
61 #include "compiled/EacR11Unorm_1D.inl"
62 };
63 inline constexpr uint32_t EacR11Unorm_2D[] = {
64 #include "compiled/EacR11Unorm_2D.inl"
65 };
66 inline constexpr uint32_t EacR11Unorm_3D[] = {
67 #include "compiled/EacR11Unorm_3D.inl"
68 };
69 inline constexpr uint32_t EacRG11Snorm_1D[] = {
70 #include "compiled/EacRG11Snorm_1D.inl"
71 };
72 inline constexpr uint32_t EacRG11Snorm_2D[] = {
73 #include "compiled/EacRG11Snorm_2D.inl"
74 };
75 inline constexpr uint32_t EacRG11Snorm_3D[] = {
76 #include "compiled/EacRG11Snorm_3D.inl"
77 };
78 inline constexpr uint32_t EacRG11Unorm_1D[] = {
79 #include "compiled/EacRG11Unorm_1D.inl"
80 };
81 inline constexpr uint32_t EacRG11Unorm_2D[] = {
82 #include "compiled/EacRG11Unorm_2D.inl"
83 };
84 inline constexpr uint32_t EacRG11Unorm_3D[] = {
85 #include "compiled/EacRG11Unorm_3D.inl"
86 };
87 inline constexpr uint32_t Etc2RGB8_1D[] = {
88 #include "compiled/Etc2RGB8_1D.inl"
89 };
90 inline constexpr uint32_t Etc2RGB8_2D[] = {
91 #include "compiled/Etc2RGB8_2D.inl"
92 };
93 inline constexpr uint32_t Etc2RGB8_3D[] = {
94 #include "compiled/Etc2RGB8_3D.inl"
95 };
96 inline constexpr uint32_t Etc2RGBA8_1D[] = {
97 #include "compiled/Etc2RGBA8_1D.inl"
98 };
99 inline constexpr uint32_t Etc2RGBA8_2D[] = {
100 #include "compiled/Etc2RGBA8_2D.inl"
101 };
102 inline constexpr uint32_t Etc2RGBA8_3D[] = {
103 #include "compiled/Etc2RGBA8_3D.inl"
104 };
105 
106 }  // namespace decompression_shaders
107 }  // namespace vk
108 }  // namespace gfxstream
109