VisualObject.h
Go to the documentation of this file.
00001 /*+-------------------------------------------------------------------------+
00002   |                       MultiVehicle simulator (libmvsim)                 |
00003   |                                                                         |
00004   | Copyright (C) 2014  Jose Luis Blanco Claraco (University of Almeria)    |
00005   | Copyright (C) 2017  Borys Tymchenko (Odessa Polytechnic University)     |
00006   | Distributed under GNU General Public License version 3                  |
00007   |   See <http://www.gnu.org/licenses/>                                    |
00008   +-------------------------------------------------------------------------+ */
00009 
00010 #pragma once
00011 
00012 #include <mvsim/basic_types.h>
00013 
00014 namespace mvsim
00015 {
00016 class World;
00017 
00020 class VisualObject
00021 {
00022    public:
00023         VisualObject(World* parent) : m_world(parent) {}
00024         virtual ~VisualObject() {}
00027         virtual void gui_update(mrpt::opengl::COpenGLScene& scene) = 0;
00028 
00029         World* getWorldObject() { return m_world; }
00030         const World* getWorldObject() const { return m_world; }
00031    protected:
00032         World* m_world;
00033 };
00034 }
00035 
00037 #define SCENE_INSERT_Z_ORDER(_SCENE, _ZORDER_INDEX, _OBJ_TO_INSERT) \
00038         std::dynamic_pointer_cast<mrpt::opengl::CSetOfObjects>(         \
00039                 _SCENE.getByName("level_" #_ZORDER_INDEX))                  \
00040                 ->insert(_OBJ_TO_INSERT)


mvsim
Author(s):
autogenerated on Thu Sep 7 2017 09:27:48