diff options
-rw-r--r-- | src/cgaladvnode.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/cgaladvnode.h b/src/cgaladvnode.h new file mode 100644 index 0000000..a3f8bea --- /dev/null +++ b/src/cgaladvnode.h @@ -0,0 +1,34 @@ +#ifndef CGALADVNODE_H_ +#define CGALADVNODE_H_ + +#include "node.h" +#include "visitor.h" +#include "value.h" + +enum cgaladv_type_e { + MINKOWSKI, + GLIDE, + SUBDIV, + HULL +}; + +class CgaladvNode : public AbstractNode +{ +public: + CgaladvNode(const ModuleInstantiation *mi, cgaladv_type_e type) : AbstractNode(mi), type(type) { + convexity = 1; + } + virtual ~CgaladvNode() { } + virtual Response accept(class State &state, Visitor &visitor) const { + return visitor.visit(state, *this); + } + virtual std::string toString() const; + virtual std::string name() const; + + Value path; + std::string subdiv_type; + int convexity, level; + cgaladv_type_e type; +}; + +#endif |