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 template<class MData, class VData, class EData, class FData>
00021 class MeshX3DBuilderStateVariables : public StateVariables
00022 {
00023 public:
00025   MeshX3DBuilderStateVariables();
00027   virtual ~MeshX3DBuilderStateVariables();
00028   
00030   virtual void init();
00032   virtual void finish();
00033   
00035   void addCoupleNode(SFNode N, X3D::SFNode NN);
00037   void pushNode(X3D::SFNode N);
00039   void popNode();
00040     
00042   inline X3D::SFNode getRoot() const;
00044   inline X3D::SFNode getTop() const;
00046   X3D::SFNode getNode(SFNode N) const;
00048   X3D::X3DNode *clone(X3D::X3DNode *N);
00049     
00050 private:
00051   X3D::SFNode _root;
00052   X3D::MFNode _nodeStack;
00053   std::map<SFNode, X3D::SFNode> _nodeCoupleMap;
00054   Cloner *_cloner;
00055 };
00056 
00057 }
00058 }
00059 
00060 #include "MESH_MeshX3DBuilderStateVariables.inl"
00061 
00062 #endif

Generated on Mon Jan 19 10:32:05 2004 for X3DToolKit by doxygen1.2.18