X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcore%2Fbatch.h;h=1e0b4c4703e74b09602575b6f3fa206bfc746bdf;hb=be6ffe96ecb4707599fe1a6f620c348760213d46;hp=51cc573b18be326ac7b3ae4c26b75cf146e77aa6;hpb=3a1b9cbe2441ae670a97541dc8ccb0a2860c8302;p=libs%2Fgl.git diff --git a/source/core/batch.h b/source/core/batch.h index 51cc573b..1e0b4c47 100644 --- a/source/core/batch.h +++ b/source/core/batch.h @@ -3,6 +3,7 @@ #include #include +#include "batch_backend.h" #include "bufferable.h" #include "datatype.h" #include "primitivetype.h" @@ -20,7 +21,7 @@ the Batch. This is a pretty low-level class and mainly intended to be used by the Mesh class. */ -class Batch: public Bufferable +class Batch: public BatchBackend, public Bufferable { public: class Loader: public DataFile::ObjectLoader @@ -33,9 +34,7 @@ public: private: PrimitiveType prim_type; - GLenum gl_prim_type; DataType index_type; - GLenum gl_index_type; std::vector data; unsigned max_index; @@ -44,13 +43,8 @@ public: ~Batch(); PrimitiveType get_type() const { return prim_type; } - GLenum get_gl_primitive_type() const { return gl_prim_type; } void set_index_type(DataType); DataType get_index_type() const { return index_type; } - GLenum get_gl_index_type() const { return gl_index_type; } - - DEPRECATED void set_data_type(DataType t) { set_index_type(t); } - DEPRECATED DataType get_data_type() const { return index_type; } Batch &append(unsigned); Batch &append(const std::vector &); @@ -58,14 +52,14 @@ public: Batch &append(const Batch &); private: void append_index(unsigned); - virtual unsigned get_data_size() const { return data.size(); } + virtual std::size_t get_data_size() const { return data.size(); } virtual const void *get_data_pointer() const { return &data[0]; } - virtual unsigned get_alignment() const { return get_index_size(); } - unsigned get_index_size() const; + virtual std::size_t get_alignment() const { return get_index_size(); } + std::size_t get_index_size() const; public: - unsigned size() const { return data.size()/get_index_size(); } + std::size_t size() const { return data.size()/get_index_size(); } - unsigned get_index(unsigned) const; + unsigned get_index(std::size_t) const; }; } // namespace GL