namespace Msp {
namespace GLtk {
-CachedPart::~CachedPart()
-{
- delete mesh;
-}
-
-
void PartCache::begin_rebuild()
{
if(rebuilding)
if(!rebuilding)
throw logic_error("!rebuilding");
- for(current=next; current!=parts.end(); ++current)
- if(current->part==&part)
- {
- parts.erase(next, current);
- break;
- }
+ current = find_if(next, parts.end(), [&part](const CachedPart &p){ return p.part==∂ });
+ if(current!=parts.end())
+ parts.erase(next, current);
if(current==parts.end())
current = parts.insert(next, CachedPart());
{
current = parts.insert(next, CachedPart());
current->texture = &tex;
- current->mesh = new GL::Mesh((GL::TEXCOORD2, GL::COLOR4,GL::UNSIGNED_BYTE, GL::VERTEX2));
+ current->mesh = make_unique<GL::Mesh>((GL::TEXCOORD2, GL::COLOR4,GL::UNSIGNED_BYTE, GL::VERTEX2));
}
else
current->mesh->clear();