00001 #ifndef X3DTK_X3D_GLBUILDERSHAPEVISITOR_H 00002 #define X3DTK_X3D_GLBUILDERSHAPEVISITOR_H 00003 00004 #include "X3D_ShapeVisitor.h" 00005 #include "X3D_GLBuilderStateVariables.h" 00006 00007 namespace X3DTK { 00008 namespace X3D { 00009 00010 class Appearance; 00011 class FillProperties; 00012 class LineProperties; 00013 class Material; 00014 class Shape; 00015 00022 class GLBuilderShapeVisitor : public ShapeVisitor 00023 { 00024 public: 00026 GLBuilderShapeVisitor(); 00028 virtual ~GLBuilderShapeVisitor(); 00029 00031 virtual void enterAppearance(Appearance *A) const; 00033 virtual void enterFillProperties(FillProperties *F) const; 00035 virtual void enterLineProperties(LineProperties *L) const; 00037 virtual void enterMaterial(Material *M) const; 00039 virtual void enterShape(Shape *S) const; 00040 00041 protected: 00042 GLBuilderStateVariables *stateVariables; 00043 }; 00044 00045 } 00046 } 00047 00048 #endif