00001 00002 // X3DMeshGroupingNode.h // 00004 00005 #ifndef X3DMESHGROUPINGNODE 00006 #define X3DMESHGROUPINGNODE 00007 00008 #include "X3D_SceneGraphTypes.h" 00009 #include "MESH_X3DNode.h" 00010 00011 namespace X3DTK { 00012 namespace MESH { 00013 00015 00016 class X3DGroupingNode : public X3DNode 00017 { 00018 public: 00020 X3DGroupingNode(); 00022 virtual ~X3DGroupingNode(); 00023 00025 void addX3DNodeChild(X3D::X3DNode *N); 00026 00028 inline X3D::MFNode getX3DNodeChildren() const {return _x3dChildren;}; 00030 virtual MFAbstractNode getChildrenList() const; 00031 00033 bool addChild(const SFAbstractNode &N); 00035 bool setChild(const SFAbstractNode &N); 00037 bool removeChild(const SFAbstractNode &N); 00038 00040 inline MFNode getChildren() const {return _children;}; 00041 00042 protected: 00044 X3DGroupingNode(const X3DGroupingNode &N); 00045 00046 private: 00047 MFNode _children; 00048 X3D::MFNode _x3dChildren; 00049 }; 00050 00051 } 00052 } 00053 00054 #endif