Ported the cooling changes from @alexrj: Don't slow down the external

perimeters if not necessary, don't take the bridging time into account
when slowing down the print.

Removed Extruder & GCodeWriter Perl bindings.
Improved Extruder for constness.
Refactored GCode::m_elapsed_time to struct ElapsedTime.
This commit is contained in:
bubnikv 2017-06-22 12:59:23 +02:00
parent c1146e298b
commit 0454cc95f9
17 changed files with 156 additions and 220 deletions

View file

@ -7,6 +7,7 @@
namespace Slic3r {
struct ElapsedTime;
class GCode;
class Layer;
@ -18,7 +19,8 @@ and the print is modified to stretch over a minimum layer time.
class CoolingBuffer {
public:
CoolingBuffer(GCode &gcodegen) : m_gcodegen(gcodegen), m_elapsed_time(0.), m_layer_id(0) {}
CoolingBuffer(GCode &gcodegen);
~CoolingBuffer();
std::string append(const std::string &gcode, size_t object_id, size_t layer_id, bool is_support);
std::string flush();
GCode* gcodegen() { return &m_gcodegen; };
@ -28,7 +30,7 @@ private:
GCode& m_gcodegen;
std::string m_gcode;
float m_elapsed_time;
ElapsedTime *m_elapsed_time;
size_t m_layer_id;
std::set<size_t> m_object_ids_visited;
};