00001 00002 // GLBuilderGlobalVariables.h // 00004 00005 #ifndef GLBUILDERGLOBALVARIABLES_H 00006 #define GLBUILDERGLOBALVARIABLES_H 00007 00008 #include "GlobalVariables.h" 00009 #include "X3DGLNode.h" 00010 00011 namespace X3DTK { 00012 namespace X3D { 00013 00015 00016 class GLBuilderGlobalVariables : public GlobalVariables 00017 { 00018 public: 00020 GLBuilderGlobalVariables(); 00022 virtual ~GLBuilderGlobalVariables(); 00024 void init(); 00026 virtual void finish(); 00027 00029 void pushNode(GL::SFNode N); 00031 void popNode(); 00032 00034 inline GL::SFNode getRoot() const {return _root;}; 00036 inline GL::SFNode getTop() const {return _nodeStack.front();}; 00037 00038 private: 00039 GL::SFNode _root; 00040 GL::MFNode _nodeStack; 00041 }; 00042 00043 } 00044 } 00045 00046 #endif