00001 00002 // X3D_TemplateMeshBuilderCoreVisitor.h // 00004 00005 #ifndef TEMPLATEMESHBUILDERCOREVISITOR_H 00006 #define TEMPLATEMESHBUILDERCOREVISITOR_H 00007 00008 #include "X3D_CoreVisitor.h" 00009 #include "X3D_TemplateMeshBuilderStateVariables.h" 00010 00011 namespace X3DTK { 00012 namespace X3D { 00013 00014 class Scene; 00015 class X3DNode; 00016 00018 00019 class TemplateMeshBuilderCoreVisitor : public CoreVisitor 00020 { 00021 public: 00023 TemplateMeshBuilderCoreVisitor(); 00024 00026 virtual ~TemplateMeshBuilderCoreVisitor(); 00027 00029 virtual void enterScene(Scene *S) const; 00031 virtual void enterX3DNode(X3DNode *N) const; 00032 00034 virtual bool walkOnX3DNode(X3DNode *N, SFAbstractNode child) const; 00035 00037 virtual void leaveX3DNode(X3DNode *N) const; 00038 00039 protected: 00040 TemplateMeshBuilderStateVariables *stateVariables; 00041 }; 00042 00043 } 00044 } 00045 00046 #endif