3 This file is part of libmspgl
4 Copyright © 2007-2011 Mikko Rasa, Mikkosoft Productions
5 Distributed under the LGPL
11 #include <msp/datafile/objectloader.h>
13 #include "vertexarray.h"
14 #include "windingtest.h"
24 friend class MeshBuilder;
27 class Loader: public DataFile::ObjectLoader<Mesh>
32 void vertices(VertexFormat);
33 void batch(PrimitiveType);
34 void winding(FaceWinding);
39 std::list<Batch> batches;
42 const WindingTest *winding;
46 Mesh(const VertexFormat &f);
50 void use_buffers(bool);
52 const VertexArray &get_vertices() const { return vertices; }
53 unsigned get_n_vertices() const;
54 float *modify_vertex(unsigned);
56 void add_batch(const Batch &b);
57 const std::list<Batch> &get_batches() { return batches; }
59 void set_winding(const WindingTest *);
62 void draw(Renderer &) const;