00001 00002 // MeshBuilderShapeVisitor.h // 00004 00005 #ifndef MESHBUILDERSHAPEVISITOR_H 00006 #define MESHBUILDERSHAPEVISITOR_H 00007 00008 #include "ShapeVisitor.h" 00009 #include "MeshBuilderGlobalVariables.h" 00010 00011 namespace X3DTK { 00012 namespace X3D { 00013 00014 class Appearance; 00015 class FillProperties; 00016 class LineProperties; 00017 class Material; 00018 class Shape; 00019 00021 00022 class MeshBuilderShapeVisitor : public ShapeVisitor 00023 { 00024 public: 00026 MeshBuilderShapeVisitor(); 00028 virtual ~MeshBuilderShapeVisitor(); 00029 00031 virtual void enterShape(Shape *S) const; 00032 00034 virtual bool walkOnShape(Shape *S, SFAbstractNode child) const; 00035 00037 virtual void leaveShape(Shape *S) const; 00038 00039 protected: 00040 MeshBuilderGlobalVariables *globalVariables; 00041 }; 00042 00043 } 00044 } 00045 00046 #endif