From b3f4c98c80acaa414f7bdacc86314d97267acba5 Mon Sep 17 00:00:00 2001 From: kintel Date: Sun, 31 Oct 2010 01:19:28 +0000 Subject: FIXME's added to AbstractNode git-svn-id: http://svn.clifford.at/openscad/trunk@572 b57f626f-c46c-0410-a088-ec61d464b74c diff --git a/src/node.h b/src/node.h index 08a5cb1..f3a5b0b 100644 --- a/src/node.h +++ b/src/node.h @@ -19,6 +19,10 @@ void progress_report_fin(); class AbstractNode { + // FIXME: the idx_counter/idx is mostly (only?) for debugging. + // We can hash on pointer value or smth. else. + // -> remove and + // use smth. else to display node identifier in CSG tree output? static int idx_counter; // Node instantiation index public: AbstractNode(const class ModuleInstantiation *mi); @@ -34,19 +38,28 @@ public: static void resetIndexCounter() { idx_counter = 1; } + // FIXME: Rewrite to STL container? + // FIXME: Make protected QVector children; const ModuleInstantiation *modinst; - + + // progress_mark is a running number used for progress indication + // FIXME: Make all progress handling external, put it in the traverser class? int progress_mark; void progress_prepare(); void progress_report() const; int idx; // Node index (unique per tree) - QString dump_cache; + // FIXME: Remove these three with dump() method + QString dump_cache; + virtual QString mk_cache_id() const; + virtual QString dump(QString indent) const; + // FIXME: Rewrite to visitor + virtual class CSGTerm *render_csg_term(double m[20], QVector *highlights, QVector *background) const; - virtual QString mk_cache_id() const; + // FIXME: Rewrite to visitor #ifdef ENABLE_CGAL struct cgal_nef_cache_entry { CGAL_Nef_polyhedron N; @@ -57,8 +70,6 @@ public: virtual CGAL_Nef_polyhedron renderCSGMesh() const; class CSGTerm *render_csg_term_from_nef(double m[20], QVector *highlights, QVector *background, const char *statement, int convexity) const; #endif - virtual class CSGTerm *render_csg_term(double m[20], QVector *highlights, QVector *background) const; - virtual QString dump(QString indent) const; }; class AbstractIntersectionNode : public AbstractNode -- cgit v0.10.1