| Flutter Impeller |

uniform_sorter.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef FLUTTER_IMPELLER_COMPILER_UNIFORM_SORTER_H_
6 #define FLUTTER_IMPELLER_COMPILER_UNIFORM_SORTER_H_
7
8 #include <optional>
9
10 #include "impeller/compiler/compiler_backend.h"
11
12 #include "spirv_msl.hpp"
13 #include "spirv_parser.hpp"
14
15 namespace impeller {
16
17 /// @brief Sorts uniform declarations in an IR according to decoration order.
18 ///
19 /// The [type_filter] may be optionally supplied to limit which types are
20 /// returned The [include] value can be set to false change this filter to
21 /// exclude instead of include.
22 std::vector<spirv_cross::ID> SortUniforms(
23 const spirv_cross::ParsedIR* ir,
24 const spirv_cross::Compiler* compiler,
25 std::optional<spirv_cross::SPIRType::BaseType> type_filter = std::nullopt,
26 bool include = true);
27
28 } // namespace impeller
29
30 #endif // FLUTTER_IMPELLER_COMPILER_UNIFORM_SORTER_H_
impeller::SortUniforms
std::vector< spirv_cross::ID > SortUniforms(const spirv_cross::ParsedIR *ir, const spirv_cross::Compiler *compiler, std::optional< spirv_cross::SPIRType::BaseType > type_filter, bool include)
Sorts uniform declarations in an IR according to decoration order.
Definition: uniform_sorter.cc:11
compiler_backend.h
impeller
Definition: allocation.cc:12