/* ----------------------------------------------------------------------------- GSFramework Copyright 2001-2013 Emmanuel Julien. All Rights Reserved. ----------------------------------------------------------------------------- */ #ifndef __NMEMITTER__ #define __NMEMITTER__ #include "scene3d/mitem.h" #include "core/emitter.h" namespace GS { namespace S3D { /*! @short Managed emitter. @author Emmanuel Julien (ejulien@gsworks.fr) */ struct MEmitter : public MItem, public Core::Emitter { static MItemType GetMItemClassType() { return Type_Emitter; } void Update(const Time &); void Setup(PhysicWorld *); virtual Core::Item *GetBaseItem() { return this; } virtual Core::Renderable *GetRenderable() { return this; } virtual bool FromMetaTag(NML::Tag &); virtual NML::Tag *AsMetaTag(); MEmitter(); }; } // S3D } // GS #endif // __NMEMITTER__