Ported Print::validate() to XS

This commit is contained in:
Alessandro Ranellucci 2014-11-09 15:27:34 +01:00
parent 3e4c572164
commit bad0bd8520
10 changed files with 148 additions and 75 deletions

View file

@ -4,6 +4,7 @@
#include <myinit.h>
#include <set>
#include <vector>
#include <stdexcept>
#include "Flow.hpp"
#include "PrintConfig.hpp"
#include "Point.hpp"
@ -27,6 +28,11 @@ enum PrintObjectStep {
posInfill, posSupportMaterial,
};
class PrintValidationException : public std::runtime_error {
public:
PrintValidationException(const std::string &error) : std::runtime_error(error) {};
};
template <class StepType>
class PrintState
{
@ -171,6 +177,7 @@ class Print
void add_model_object(ModelObject* model_object, int idx = -1);
bool apply_config(DynamicPrintConfig config);
void init_extruders();
void validate() const;
std::set<size_t> extruders() const;
void _simplify_slices(double distance);