Slightly more efficient PrintObject Layer destruction.

This commit is contained in:
bubnikv 2017-01-11 13:43:33 +01:00
parent fa1506c833
commit bd3daeed5a
3 changed files with 13 additions and 10 deletions

View file

@ -313,9 +313,4 @@ SupportLayer::SupportLayer(size_t id, PrintObject *object, coordf_t height,
{
}
SupportLayer::~SupportLayer()
{
}
}

View file

@ -152,7 +152,7 @@ public:
protected:
SupportLayer(size_t id, PrintObject *object, coordf_t height, coordf_t print_z,
coordf_t slice_z);
virtual ~SupportLayer();
virtual ~SupportLayer() {}
};

View file

@ -133,8 +133,12 @@ PrintObject::layer_count() const
void
PrintObject::clear_layers()
{
for (int i = this->layers.size()-1; i >= 0; --i)
this->delete_layer(i);
for (size_t i = 0; i < this->layers.size(); ++ i) {
Layer *layer = this->layers[i];
layer->upper_layer = layer->lower_layer = nullptr;
delete layer;
}
this->layers.clear();
}
Layer*
@ -162,8 +166,12 @@ PrintObject::support_layer_count() const
void
PrintObject::clear_support_layers()
{
for (int i = this->support_layers.size()-1; i >= 0; --i)
this->delete_support_layer(i);
for (size_t i = 0; i < this->support_layers.size(); ++ i) {
Layer *layer = this->support_layers[i];
layer->upper_layer = layer->lower_layer = nullptr;
delete layer;
}
this->support_layers.clear();
}
SupportLayer*