/* ----------------------------------------------------------------------------- GSFramework Copyright 2001-2013 Emmanuel Julien. All Rights Reserved. ----------------------------------------------------------------------------- */ #ifndef __NMOBJECT__ #define __NMOBJECT__ #include "core/object.h" #include "scene3d/mitem.h" namespace GS { namespace S3D { /*! @short Managed object. @author Emmanuel Julien (ejulien@gsworks.fr) */ struct MObject : public MItem, public Core::Object { static MItemType GetMItemClassType() { return Type_Object; } virtual inline bool IsRenderable() const { return isActive(); } virtual Core::Item *GetBaseItem() { return this; } virtual Core::Renderable *GetRenderable() { return this; } virtual bool FromMetaTag(NML::Tag &); virtual NML::Tag *AsMetaTag(); MObject(); }; } // S3D } // GS #endif // __NMOBJECT__