#pragma once #include #include #include #include #include #include #include #include #include #include namespace mbgl { class Programs { public: Programs(gl::Context& context, const ProgramParameters& programParameters) : circle(context, programParameters), extrusionTexture(context, programParameters), fill(context, programParameters), fillExtrusion(context, programParameters), fillExtrusionPattern(context, programParameters), fillPattern(context, programParameters), fillOutline(context, programParameters), fillOutlinePattern(context, programParameters), line(context, programParameters), lineSDF(context, programParameters), linePattern(context, programParameters), raster(context, programParameters), symbolIcon(context, programParameters), symbolIconSDF(context, programParameters), symbolGlyph(context, programParameters), debug(context, programParameters), collisionBox(context, programParameters), collisionCircle(context, programParameters) { } ProgramMap circle; ExtrusionTextureProgram extrusionTexture; ProgramMap fill; ProgramMap fillExtrusion; ProgramMap fillExtrusionPattern; ProgramMap fillPattern; ProgramMap fillOutline; ProgramMap fillOutlinePattern; ProgramMap line; ProgramMap lineSDF; ProgramMap linePattern; RasterProgram raster; ProgramMap symbolIcon; ProgramMap symbolIconSDF; ProgramMap symbolGlyph; DebugProgram debug; CollisionBoxProgram collisionBox; CollisionCircleProgram collisionCircle; }; } // namespace mbgl