2
Copyright (C) 2008 Alexey Torkhov <atorkhov@gmail.com>
4
This program is free software; you can redistribute it and/or modify
5
it under the terms of the GNU General Public License as published by
6
the Free Software Foundation; either version 2 of the License, or
7
(at your option) any later version.
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
GNU General Public License for more details.
14
You should have received a copy of the GNU General Public License
15
along with this program; if not, write to the Free Software
16
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19
#ifndef EMBEROGRE_DETACHEDENTITY_H
20
#define EMBEROGRE_DETACHEDENTITY_H
22
#include <Eris/Entity.h>
23
#include <Eris/TypeInfo.h>
24
#include <Eris/View.h>
25
#include <Atlas/Message/Element.h>
31
* @brief Entity that doesn't belong to entity hierarchy.
33
* This is an entity that doesn't belong to entity hierarchy.
35
* @author Alexey Torkhov <atorkhov@gmail.com>
37
class DetachedEntity : public Eris::Entity
40
DetachedEntity(const std::string& id, Eris::TypeInfo* ty, Eris::View* vw);
41
virtual ~DetachedEntity();
44
* Sets entity attributes from Atlas message.
46
void setFromMessage(const Atlas::Message::MapType& attrs);
49
* Overrides Eris::Entity method to avoid call to Eris::View::entityDeleted.
51
virtual void shutdown();
54
* Exposes setAttr to public.
56
void setAttr(const std::string &p, const Atlas::Message::Element &v);