- void attach_shader(Shader &shader);
- void attach_shader_owned(Shader *shader);
- void detach_shader(Shader &shader);
- const ShaderList &get_attached_shaders() const { return shaders; }
+ void add_stages(const Module &, const std::map<std::string, int> & = std::map<std::string, int>());
+private:
+ bool has_stages() const;
+ unsigned add_stage(Stage);
+ void add_glsl_stages(const GlslModule &, const std::map<std::string, int> &);
+ void compile_glsl_stage(unsigned);
+ void add_spirv_stages(const SpirVModule &, const std::map<std::string, int> &);