X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fcore%2Fmesh.cpp;h=371b38b4894a96935cbd2c75326e790e38e45ce6;hp=de05102a358a5665a51b12cd0c345c21441052d5;hb=3a1b9cbe2441ae670a97541dc8ccb0a2860c8302;hpb=d493917dbc215cd6ba3f8773a52a289d9f14380d diff --git a/source/core/mesh.cpp b/source/core/mesh.cpp index de05102a..371b38b4 100644 --- a/source/core/mesh.cpp +++ b/source/core/mesh.cpp @@ -129,7 +129,7 @@ void Mesh::add_batch(const Batch &b) bool reallocate = (batches.size()==batches.capacity()); if(reallocate) { - for(vector::iterator i=batches.end(); i!=batches.begin(); ) + for(auto i=batches.end(); i!=batches.begin(); ) (--i)->use_buffer(0); } @@ -138,10 +138,10 @@ void Mesh::add_batch(const Batch &b) if(reallocate) { prev = 0; - for(vector::iterator i=batches.begin(); i!=batches.end(); ++i) + for(Batch &a: batches) { - i->use_buffer(ibuf, prev); - prev = &*i; + a.use_buffer(ibuf, prev); + prev = &a; } } else @@ -156,8 +156,8 @@ void Mesh::add_batch(const Batch &b) batches.back().set_index_type(existing_type); else { - for(vector::iterator i=batches.begin(); i!=batches.end(); ++i) - i->set_index_type(added_type); + for(Batch &a: batches) + a.set_index_type(added_type); } } @@ -202,13 +202,13 @@ void Mesh::draw(Renderer &renderer, const VertexSetup *vs, unsigned count) const if(!count) { - for(vector::const_iterator i=batches.begin(); i!=batches.end(); ++i) - renderer.draw(*i); + for(const Batch &b: batches) + renderer.draw(b); } else { - for(vector::const_iterator i=batches.begin(); i!=batches.end(); ++i) - renderer.draw_instanced(*i, count); + for(const Batch &b: batches) + renderer.draw_instanced(b, count); } } @@ -226,9 +226,9 @@ Resource::AsyncLoader *Mesh::load(IO::Seekable &io, const Resources *) return new AsyncLoader(*this, io); } -UInt64 Mesh::get_data_size() const +uint64_t Mesh::get_data_size() const { - UInt64 size = 0; + uint64_t size = 0; if(vbuf) size += vbuf->get_size(); if(ibuf) @@ -274,14 +274,14 @@ Mesh::Loader::Loader(Mesh &m, bool g): add("winding", &Mesh::face_winding); } -void Mesh::Loader::storage(const vector &a) +void Mesh::Loader::storage(const vector &attrs) { - if(a.empty()) + if(attrs.empty()) throw invalid_argument("No vertex attributes"); VertexFormat fmt; - for(vector::const_iterator i=a.begin(); i!=a.end(); ++i) - fmt = (fmt, *i); + for(VertexAttribute a: attrs) + fmt = (fmt, a); obj.storage(fmt); }