00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt 00002 // This file is part of the "Irrlicht Engine". 00003 // For conditions of distribution and use, see copyright notice in irrlicht.h 00004 00005 #ifndef __I_GUI_MESH_VIEWER_H_INCLUDED__ 00006 #define __I_GUI_MESH_VIEWER_H_INCLUDED__ 00007 00008 #include "IGUIElement.h" 00009 00010 namespace irr 00011 { 00012 00013 namespace video 00014 { 00015 class SMaterial; 00016 } // end namespace video 00017 00018 namespace scene 00019 { 00020 class IAnimatedMesh; 00021 } // end namespace scene 00022 00023 namespace gui 00024 { 00025 00027 class IGUIMeshViewer : public IGUIElement 00028 { 00029 public: 00030 00032 IGUIMeshViewer(IGUIEnvironment* environment, IGUIElement* parent, s32 id, core::rect<s32> rectangle) 00033 : IGUIElement(EGUIET_MESH_VIEWER, environment, parent, id, rectangle) {} 00034 00036 virtual void setMesh(scene::IAnimatedMesh* mesh) = 0; 00037 00039 virtual scene::IAnimatedMesh* getMesh() const = 0; 00040 00042 virtual void setMaterial(const video::SMaterial& material) = 0; 00043 00045 virtual const video::SMaterial& getMaterial() const = 0; 00046 }; 00047 00048 00049 } // end namespace gui 00050 } // end namespace irr 00051 00052 #endif 00053