00001 00002 00003 00005 00006 00011 00016 00021 // GLBuilderRenderingVisitor.h // 00023 00024 #ifndef GLBUILDERRENDERINGVISITOR_H 00025 #define GLBUILDERRENDERINGVISITOR_H 00026 00027 #include "RenderingVisitor.h" 00028 #include "GLBuilderGlobalVariables.h" 00029 00030 namespace X3DTK { 00031 namespace X3D { 00032 00033 class IndexedLineSet; 00034 class PointSet; 00035 class TriangleFanSet; 00036 class TriangleSet; 00037 class TriangleStripSet; 00038 class X3DGeometryNode; 00039 00041 00042 class GLBuilderRenderingVisitor : public RenderingVisitor 00043 { 00044 public: 00046 GLBuilderRenderingVisitor(); 00048 virtual ~GLBuilderRenderingVisitor(); 00049 00051 virtual void enterIndexedLineSet(IndexedLineSet *I) const; 00053 virtual void enterPointSet(PointSet *P) const; 00055 virtual void enterTriangleFanSet(TriangleFanSet *T) const; 00057 virtual void enterTriangleSet(TriangleSet *T) const; 00059 virtual void enterTriangleStripSet(TriangleStripSet *T) const; 00060 00062 virtual bool walkOnX3DGeometryNode(X3DGeometryNode *N, SFAbstractNode child) const; 00063 00064 00065 00066 protected: 00067 GLBuilderGlobalVariables *globalVariables; 00068 }; 00069 00070 } 00071 } 00072 00073 #endif