Files
MapLibreParticleLab/include/mbgl/shaders/shader_source.hpp
Tim Sylvester a7f5d565d8 Topic/metal symbol rebase (#1640)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: mwilsnd <mwilsnd@gmail.com>
Co-authored-by: Alex Cristici <alex.cristici@gmail.com>
Co-authored-by: Stefan Karschti <stefan.karschti@gmail.com>
Co-authored-by: Bart Louwers <bart@emeel.net>
Co-authored-by: Alex Cristici <alex@skoon.energy>
Co-authored-by: Bart Louwers <bart.louwers@gmail.com>
Co-authored-by: Wei Chen <alanchenboy@gmail.com>
Co-authored-by: Siarhei Fedartsou <siarhei.fedartsou@gmail.com>
Co-authored-by: tdcosta100 <tdcosta100@gmail.com>
2023-09-19 01:32:24 +00:00

83 lines
2.1 KiB
C++

// Generated code, do not modify this file!
#pragma once
#include <mbgl/gfx/backend.hpp>
namespace mbgl {
namespace shaders {
/// @brief This enum is used with the ShaderSource template to select
/// source code for the desired program and graphics back-end.
enum class BuiltIn {
None,
BackgroundShader,
BackgroundPatternShader,
CircleShader,
CollisionBoxShader,
CollisionCircleShader,
DebugShader,
FillShader,
FillOutlineShader,
LineGradientShader,
LinePatternShader,
LineSDFShader,
LineShader,
FillPatternShader,
FillOutlinePatternShader,
FillExtrusionShader,
FillExtrusionPatternShader,
HeatmapShader,
HeatmapTextureShader,
HillshadePrepareShader,
HillshadeShader,
RasterShader,
SymbolIconShader,
SymbolSDFIconShader,
SymbolTextAndIconShader,
Prelude,
BackgroundProgram,
BackgroundPatternProgram,
CircleProgram,
ClippingMaskProgram,
CollisionBoxProgram,
CollisionCircleProgram,
DebugProgram,
FillExtrusionPatternProgram,
FillExtrusionProgram,
FillOutlinePatternProgram,
FillOutlineProgram,
FillPatternProgram,
FillProgram,
HeatmapTextureProgram,
HeatmapProgram,
HillshadePrepareProgram,
HillshadeProgram,
LineGradientProgram,
LinePatternProgram,
LineSDFProgram,
LineProgram,
RasterProgram,
SymbolIconProgram,
SymbolSDFTextProgram,
SymbolSDFIconProgram,
SymbolTextAndIconProgram
};
/// @brief Select shader source based on a program type and a desired
/// graphics API.
/// @tparam T One of the built-in shader types available in the BuiltIn enum
/// @tparam The desired graphics API to request shader code for. One of
/// gfx::Backend::Type enums.
template <BuiltIn T, gfx::Backend::Type>
struct ShaderSource;
/// @brief A specialization of the ShaderSource template for no shader code.
template <>
struct ShaderSource<BuiltIn::None, gfx::Backend::Type::OpenGL> {
static constexpr const char* name = "";
static constexpr const char* vertex = "";
static constexpr const char* fragment = "";
};
} // namespace shaders
} // namespace mbgl