X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fprogramdata.h;h=fe907d5cb65e21cfecbd5b01f3ec5bb2286f1c4a;hb=53953f28255e782ed640a9e8d2d42c9b218943ad;hp=e045c6fd10def72e59adfc92dc4586373a915361;hpb=9885c5465db78b6a1d9cc8bf7ffa7a79fb116afc;p=libs%2Fgl.git diff --git a/source/programdata.h b/source/programdata.h index e045c6fd..fe907d5c 100644 --- a/source/programdata.h +++ b/source/programdata.h @@ -123,6 +123,7 @@ private: typedef std::map ProgramMap; // XXX All these mutables are a bit silly, but I'm out of better ideas + const Program *tied_program; SlotMap uniform_slots; std::vector uniforms; mutable BlockMap blocks; @@ -132,7 +133,7 @@ private: mutable unsigned dirty; public: - ProgramData(); + ProgramData(const Program * = 0); ProgramData(const ProgramData &); ProgramData &operator=(const ProgramData &); ~ProgramData(); @@ -172,6 +173,7 @@ public: void uniform4_array(const std::string &, unsigned, const int *); void uniform4_array(const std::string &, unsigned, const float *); void uniform_matrix4_array(const std::string &, unsigned, const float *); + void remove_uniform(const std::string &); private: unsigned compute_slot_mask(const Program::UniformBlockInfo &) const;