#include <list>
#include <string>
-#include <GL/gl.h>
#include <msp/datafile/loader.h>
+#include "gl.h"
#include "types.h"
namespace Msp {
public:
Loader(Program &);
- ~Loader();
private:
void vertex_shader(const std::string &);
void fragment_shader(const std::string &);
+ void attribute(uint, const std::string &);
+ virtual void finish();
};
Program();
void detach_shader(Shader &shader);
const std::list<Shader *> &get_shaders() const { return shaders; }
void set_del_shaders(bool);
- void bind_attribute(int, const std::string &);
- bool link();
+ void bind_attribute(uint, const std::string &);
+ void link();
int get_param(GLenum param) const;
bool get_linked() const { return linked; }
std::string get_info_log() const;
void bind();
int get_uniform_location(const std::string &) const;
- void uniform(int, int);
- void uniform(int, float);
- void uniform(int, float, float);
- void uniform(int, float, float, float);
- void uniform(int, float, float, float, float);
- void uniform4(int, const float *);
- void uniform_matrix4(int, const float *);
static void unbind();