summaryrefslogtreecommitdiff
path: root/primitives.cc
diff options
context:
space:
mode:
Diffstat (limited to 'primitives.cc')
-rw-r--r--primitives.cc9
1 files changed, 3 insertions, 6 deletions
diff --git a/primitives.cc b/primitives.cc
index ac80ac5..59c5938 100644
--- a/primitives.cc
+++ b/primitives.cc
@@ -33,7 +33,7 @@ class PrimitiveModule : public AbstractModule
public:
primitive_type_e type;
PrimitiveModule(primitive_type_e type) : type(type) { }
- virtual AbstractNode *evaluate(const Context *ctx, const QVector<QString> &call_argnames, const QVector<Value> &call_argvalues, const QVector<AbstractNode*> child_nodes) const;
+ virtual AbstractNode *evaluate(const Context *ctx, const QVector<QString> &call_argnames, const QVector<Value> &call_argvalues, const QVector<ModuleInstanciation*> arg_children, const Context *arg_context) const;
};
class PrimitiveNode : public AbstractPolyNode
@@ -48,7 +48,7 @@ public:
virtual QString dump(QString indent) const;
};
-AbstractNode *PrimitiveModule::evaluate(const Context *ctx, const QVector<QString> &call_argnames, const QVector<Value> &call_argvalues, const QVector<AbstractNode*> child_nodes) const
+AbstractNode *PrimitiveModule::evaluate(const Context *ctx, const QVector<QString> &call_argnames, const QVector<Value> &call_argvalues, const QVector<ModuleInstanciation*>, const Context*) const
{
PrimitiveNode *node = new PrimitiveNode(type);
@@ -123,13 +123,10 @@ AbstractNode *PrimitiveModule::evaluate(const Context *ctx, const QVector<QStrin
}
}
- foreach (AbstractNode *v, child_nodes)
- delete v;
-
return node;
}
-void register_builtin_primitive()
+void register_builtin_primitives()
{
builtin_modules["cube"] = new PrimitiveModule(CUBE);
builtin_modules["sphere"] = new PrimitiveModule(SPHERE);
contact: Jan Huwald // Impressum