1 #ifndef MSP_GL_SL_COMPILER_H_
2 #define MSP_GL_SL_COMPILER_H_
23 std::vector<std::string> imported_names;
32 void set_source(const std::string &, const std::string & = "<string>");
33 void load_source(IO::Base &, DataFile::Collection * = 0, const std::string & = "<file>");
34 void load_source(IO::Base &, const std::string &);
37 std::string get_combined_glsl() const;
38 std::vector<Stage::Type> get_stages() const;
39 std::string get_stage_glsl(Stage::Type) const;
40 const std::map<std::string, unsigned> &get_vertex_attributes() const;
41 const std::map<std::string, unsigned> &get_fragment_outputs() const;
42 const SourceMap &get_source_map() const;
45 void append_module(Module &, DataFile::Collection *);
46 void append_stage(Stage &);
47 void import(DataFile::Collection *, const std::string &);
48 void generate(Stage &, Mode);
49 bool optimize(Stage &);
50 void finalize(Stage &, Mode);
51 static void inject_block(Block &, const Block &);