Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

MESH_MeshX3DBuilderStateVariables.h

Go to the documentation of this file.
00001 
00002 //                            MESH_MeshX3DBuilderStateVariables.h                 //
00004 
00005 #ifndef MESHX3DBUILDERGLOBALVARIABLES_H
00006 #define MESHX3DBUILDERGLOBALVARIABLES_H
00007 
00008 #include "StateVariables.h"
00009 #include "MESH_X3DNode.h"
00010 #include "X3D_X3DNode.h"
00011 #include "Cloner.h"
00012 
00013 #include <map>
00014 
00015 namespace X3DTK {
00016 namespace MESH {
00017 
00019 
00020 class MeshX3DBuilderStateVariables : public StateVariables
00021 {
00022 public:
00024   MeshX3DBuilderStateVariables();
00026   virtual ~MeshX3DBuilderStateVariables();
00028   virtual void init();
00030   virtual void finish();
00031   
00033   void addCoupleNode(SFNode N, X3D::SFNode NN);
00035   void pushNode(X3D::SFNode N);
00037   void popNode();
00038     
00040   inline X3D::SFNode getRoot() const {return _root;};
00042   inline X3D::SFNode getTop() const {return (!_nodeStack.empty() ? _nodeStack.front() : 0);};
00044   X3D::SFNode getNode(SFNode N) const;
00046   X3D::X3DNode *clone(X3D::X3DNode *N);
00047     
00048 private:
00049   X3D::SFNode _root;
00050   X3D::MFNode _nodeStack;
00051   std::map<SFNode, X3D::SFNode> _nodeCoupleMap;
00052   Cloner *_cloner;
00053 };
00054 
00055 }
00056 }
00057 
00058 #endif

Generated on Thu Dec 4 13:25:46 2003 for X3DToolKit by doxygen1.2.18