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

X3DComponentWalker.h

Go to the documentation of this file.
00001 #ifndef X3DTK_X3DCOMPONENTWALKER_H
00002 #define X3DTK_X3DCOMPONENTWALKER_H
00003 
00004 #include "X3DComponent.h"
00005 #include "WalkingFunction.h"
00006 #include "X3DAbstractNode.h"
00007 #include "Walker.h"
00008 #include "Visitor.h"
00009 #include "SFSceneGraph.h"
00010 
00011 namespace X3DTK {
00012 
00018 class X3DComponentWalker : public X3DComponent
00019 {
00020 public:
00022   X3DComponentWalker();
00024   virtual ~X3DComponentWalker() = 0;
00025   
00027   void setWalker(Walker *walker);
00029   void setVisitor(Visitor *visitor);
00030   
00032   WalkingFunction *getWalkingFunctionOf(const SFType *type) const;
00033   
00034 protected:  
00036   Walker *walker;
00038   Visitor *visitor;
00040   template<class C, class T> 
00041   void defineWalkingFunction(void (C::*ptrF)(T *) const);
00042     
00043 private:
00044   WalkingDict _walkingDict;
00045 };
00046 
00047 }
00048 
00049 #include "X3DComponentWalker.inl"
00050 
00051 #endif

Generated on Thu Apr 1 17:12:03 2004 for X3DToolKit by doxygen 1.3.3