+private:
+ void find_uniforms_for_block(Block &, const Program::UniformBlockInfo &) const;
+ UniformBlock *create_block(const Program::UniformBlockInfo &) const;
+ const UniformBlock *get_block(const Program &, const Program::UniformBlockInfo *) const;
+
+public:
+ /** Returns a UniformBlock matching the program's layout. If name is empty,
+ uniforms for the default uniform block (outside any uniform block
+ declarations) are returned. */
+ const UniformBlock *get_block(const Program &prog, const std::string &name) const;