AnimaL |
Tutorial |
Documentation |
00001 // 00002 // C++ Interface: EngineGroupNode 00003 // 00004 // Description: 00005 // 00006 // 00007 // Author: François Faure <>, (C) 2004 00008 // 00009 // Copyright: See COPYING file that comes with this distribution 00010 // 00011 // 00012 #ifndef X3DTK_X3DEngineGroupNode_h 00013 #define X3DTK_X3DEngineGroupNode_h 00014 00015 #include <animal/engine/EngineNode.h> 00016 00017 namespace X3DTK { 00018 00019 namespace X3D { 00020 00026 class EngineGroupNode : public EngineNode 00027 { 00028 public: 00029 EngineGroupNode(); 00030 ~EngineGroupNode(); 00031 virtual void draw(); 00032 virtual void updateBoundingBox(); 00033 virtual void init(); 00034 virtual void reset(); 00035 virtual void animate(float dt); 00036 virtual bool addChild( const SFAbstractNode& ); 00037 virtual bool setChild( const SFAbstractNode& ); 00038 virtual bool removeChild( const SFAbstractNode& ); 00039 virtual MFAbstractNode getChildList() const; 00040 virtual SFNode clone() const; 00041 00042 protected: 00043 EngineGroupNode(const EngineGroupNode& ); 00044 typedef std::list<EngineNode*> MFEngine; 00045 MFEngine m_engines; 00046 }; 00047 00048 }; 00049 00050 }; 00051 00052 #endif