- void compile(const std::string &, const std::string & = "<string>");
- void compile(IO::Base &, Resources * = 0, const std::string & = "<file>");
- void compile(IO::Base &, const std::string &);
- void add_shaders(Program &);
+private:
+ void clear();
+public:
+ void set_source(const std::string &, const std::string & = "<string>");
+ void load_source(IO::Base &, DataFile::Collection * = 0, const std::string & = "<file>");
+ void load_source(IO::Base &, const std::string &);
+ void compile(Mode);
+
+ std::string get_combined_glsl() const;
+ std::vector<Stage::Type> get_stages() const;
+ std::string get_stage_glsl(Stage::Type) const;
+ const std::map<std::string, unsigned> &get_vertex_attributes() const;
+ const std::map<std::string, unsigned> &get_fragment_outputs() const;
+ const SourceMap &get_source_map() const;
+
+ std::string get_stage_debug(Stage::Type) const;