+private:
+ 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: