X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbatch.h;h=2b907d4846bc0032e51f1160678b48d779a6350f;hb=ceae2a27dfc58310c5bab7e3aa3fedf0fa9a1f49;hp=237995dcd7698b60061836336524e9ce8181cdc0;hpb=cea3c333797cadd9629aefaa5b82243173a02d16;p=libs%2Fgl.git diff --git a/source/batch.h b/source/batch.h index 237995dc..2b907d48 100644 --- a/source/batch.h +++ b/source/batch.h @@ -1,7 +1,7 @@ /* $Id$ This file is part of libmspgl -Copyright © 2007 Mikko Rasa, Mikkosoft Productions +Copyright © 2007, 2009-2010 Mikko Rasa, Mikkosoft Productions Distributed under the LGPL */ @@ -9,10 +9,8 @@ Distributed under the LGPL #define MSP_GL_BATCH_H_ #include -#include -#include +#include #include "primitivetype.h" -#include "types.h" namespace Msp { namespace GL { @@ -20,25 +18,30 @@ namespace GL { class Batch { public: - class Loader: public DataFile::Loader + class Loader: public DataFile::ObjectLoader { public: Loader(Batch &); private: - Batch &batch; - - void indices(const std::vector &); + void indices(const std::vector &); }; - Batch(PrimitiveType t); - Batch &append(uint); - void append(const std::vector &); - void draw() const; private: PrimitiveType type; - std::vector indices; - uint min_index; - uint max_index; + std::vector indices; + unsigned min_index; + unsigned max_index; + +public: + Batch(PrimitiveType t); + + Batch &append(unsigned); + void append(const std::vector &); + PrimitiveType get_type() const { return type; } + unsigned size() const { return indices.size(); } + const std::vector &get_indices() const { return indices; } + void draw() const; + void draw_with_buffer(unsigned) const; }; } // namespace GL