Eris
1.3.21
|
00001 #ifndef ERIS_VIEW_ENTITY_H_ 00002 #define ERIS_VIEW_ENTITY_H_ 00003 00004 #include <Eris/Entity.h> 00005 00006 namespace Eris { 00007 00021 class ViewEntity : public Entity { 00022 friend class EntityRouter; 00023 public: 00024 00031 ViewEntity(const std::string& id, TypeInfo* ty, View* view); 00032 00033 virtual ~ViewEntity(); 00034 00035 virtual void shutdown(); 00036 00042 virtual View* getView() const; 00043 00044 protected: 00045 00049 View* m_view; 00050 00055 EntityRouter* m_router; 00056 00057 virtual void onTalk(const Atlas::Objects::Operation::RootOperation& talk); 00058 00059 virtual void onSoundAction( 00060 const Atlas::Objects::Operation::RootOperation& op); 00061 00062 virtual void onVisibilityChanged(bool vis); 00063 00064 virtual void onTaskAdded(Task* task); 00065 00066 virtual void removeFromMovementPrediction(); 00067 00068 virtual void addToMovementPredition(); 00069 00070 virtual Entity* getEntity(const std::string& id); 00071 00072 virtual TypeService* getTypeService() const; 00073 00078 void task_ProgressRateChanged(Task* task); 00079 00080 00081 }; 00082 00083 inline View* ViewEntity::getView() const 00084 { 00085 return m_view; 00086 } 00087 } 00088 00089 #endif /* VIEWENTITY_H_ */