summaryrefslogtreecommitdiff
path: root/test-code/csgtexttest.cc
diff options
context:
space:
mode:
authorMarius Kintel <marius@kintel.net>2010-04-12 04:57:02 (GMT)
committerMarius Kintel <marius@kintel.net>2010-10-31 00:42:35 (GMT)
commit1caf80e561819832092e67bd15ceba5d6f9a02f8 (patch)
treeac144b7659840529155c762794508bea018b2be3 /test-code/csgtexttest.cc
parente8e213b3c9ce0580045ea6e7e86b00ab41d4c58b (diff)
Added CSGTextCache for experimenting with cache-tree organization
Diffstat (limited to 'test-code/csgtexttest.cc')
-rw-r--r--test-code/csgtexttest.cc16
1 files changed, 7 insertions, 9 deletions
diff --git a/test-code/csgtexttest.cc b/test-code/csgtexttest.cc
index f464900..95b530d 100644
--- a/test-code/csgtexttest.cc
+++ b/test-code/csgtexttest.cc
@@ -24,6 +24,7 @@
*/
#include "CSGTextRenderer.h"
+#include "CSGTextCache.h"
#include "openscad.h"
#include "node.h"
#include "module.h"
@@ -61,14 +62,10 @@ void handle_dep(QString filename)
}
}
-
-QHash<string, string> csgcache;
-void csgTree(Tree &tree)
+void csgTree(CSGTextCache &cache, const AbstractNode &root)
{
- assert(tree.root());
-
- CSGTextRenderer renderer(csgcache, tree);
- Traverser render(renderer, *tree.root(), Traverser::PRE_AND_POSTFIX);
+ CSGTextRenderer renderer(cache);
+ Traverser render(renderer, root, Traverser::PRE_AND_POSTFIX);
render.execute();
}
@@ -159,11 +156,12 @@ int main(int argc, char **argv)
Tree tree;
tree.setRoot(root_node);
+ CSGTextCache csgcache(tree);
- csgTree(tree);
+ csgTree(csgcache, *root_node);
std::cout << tree.getString(*root_node) << "\n";
- std::cout << csgcache[tree.getString(*root_node)] << "\n";
+ std::cout << csgcache[*root_node] << "\n";
destroy_builtin_functions();
destroy_builtin_modules();
contact: Jan Huwald // Impressum