diff options
author | kintel <kintel@b57f626f-c46c-0410-a088-ec61d464b74c> | 2010-10-31 01:19:28 (GMT) |
---|---|---|
committer | kintel <kintel@b57f626f-c46c-0410-a088-ec61d464b74c> | 2010-10-31 01:19:28 (GMT) |
commit | b3f4c98c80acaa414f7bdacc86314d97267acba5 (patch) | |
tree | 585c484aada2d9e0ecb0baa5ebd5d960a116a42e /src/node.h | |
parent | 53337ff65426ff1ebd87160b502ec383d201ac7b (diff) |
FIXME's added to AbstractNode
git-svn-id: http://svn.clifford.at/openscad/trunk@572 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'src/node.h')
-rw-r--r-- | src/node.h | 21 |
1 files changed, 16 insertions, 5 deletions
@@ -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<AbstractNode*> 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<CSGTerm*> *highlights, QVector<CSGTerm*> *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<CSGTerm*> *highlights, QVector<CSGTerm*> *background, const char *statement, int convexity) const; #endif - virtual class CSGTerm *render_csg_term(double m[20], QVector<CSGTerm*> *highlights, QVector<CSGTerm*> *background) const; - virtual QString dump(QString indent) const; }; class AbstractIntersectionNode : public AbstractNode |