]> git.tdb.fi Git - libs/gl.git/blobdiff - source/uniformblock.h
Remove an XXX because I no longer remember how to reproduce the issue
[libs/gl.git] / source / uniformblock.h
index fbc9c7047b3fdd57acb162338c9369dbdb442cf0..02e9086ef4ed75bdf118ca2fe41fd21ac4f74637 100644 (file)
@@ -5,17 +5,20 @@
 #include <vector>
 #include "bufferable.h"
 #include "program.h"
+#include "vector.h"
 
 namespace Msp {
 namespace GL {
 
 class BufferRange;
-class Color;
 class Matrix;
 class Uniform;
-class Vector3;
-class Vector4;
+struct Color;
 
+/**
+Stores uniforms with a specific layout.  Both named and default uniform blocks
+are supported.
+*/
 class UniformBlock: public Bufferable
 {
 private:
@@ -29,10 +32,14 @@ private:
 public:
        UniformBlock();
        UniformBlock(unsigned);
+       ~UniformBlock();
 
 private:
-       virtual const void *get_data() const { return &data[0]; }
        virtual unsigned get_data_size() const { return size; }
+       virtual const void *get_data_pointer() const { return &data[0]; }
+       virtual unsigned get_alignment() const;
+       virtual void offset_changed();
+       virtual void upload_data(char *) const;
 
 public:
        void attach(int, const Uniform &);