Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

GraphTraversal.h

Go to the documentation of this file.
00001 
00002 //                            GraphTraversal.h                                //
00004 
00005 #ifndef GRAPHTRAVERSAL_H
00006 #define GRAPHTRAVERSAL_H
00007 
00008 #include "X3DTypes.h"
00009 
00010 namespace X3DTK {
00011 
00012 class Walker;
00013 class Visitor; 
00014 class X3DComponentWalker;
00015 class X3DComponentVisitor;
00016 
00018 
00019 class GraphTraversal
00020 {
00021 public:
00023   GraphTraversal();
00025   virtual ~GraphTraversal();
00026   
00028   void setComponentWalker(X3DComponentWalker *component);
00030   void setComponentVisitor(X3DComponentVisitor *component);
00032   void setAutoDeleteComponents(bool value);
00034   void traverse(SFAbstractNode N) const;
00035   
00037   friend GraphTraversal *joinGraphTraversals(GraphTraversal *A1, GraphTraversal *A2);
00039   friend GraphTraversal *mergeGraphTraversals(GraphTraversal *A1, GraphTraversal *A2);
00040     
00041 protected:
00043   Visitor *visitor;     
00045   Walker *walker;
00046 };
00047 
00048 }
00049 
00050 #endif

Generated on Thu Oct 9 13:50:53 2003 for X3DToolKit by doxygen1.2.18