#ifndef MBGL_RENDERER_SHADER #define MBGL_RENDERER_SHADER #include #include #include namespace mbgl { class Shader : private util::noncopyable { public: Shader(const char *vertex, const char *fragment); ~Shader(); bool valid; uint32_t program; void setMatrix(const std::array& matrix); private: bool compileShader(uint32_t *shader, uint32_t type, const char *source); protected: std::array matrix = {{}}; int32_t u_matrix = -1; }; } #endif