/* * Copyright 2021 Google LLC. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef SkSLProgramKind_DEFINED #define SkSLProgramKind_DEFINED #include namespace SkSL { /** * SkSL supports several different program kinds. */ enum class ProgramKind : int8_t { kFragment, kVertex, kCompute, kGraphiteFragment, kGraphiteVertex, kRuntimeColorFilter, // Runtime effect only suitable as SkColorFilter kRuntimeShader, // " " " " " SkShader kRuntimeBlender, // " " " " " SkBlender kPrivateRuntimeColorFilter, // Runtime color filter with public restrictions lifted kPrivateRuntimeShader, // Runtime shader " " " " kPrivateRuntimeBlender, // Runtime blender " " " " kMeshVertex, // Vertex portion of a custom mesh kMeshFragment, // Fragment " " " " " kGeneric, }; } // namespace SkSL #endif