Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

Factory.h

00001 #ifndef ERIS_FACTORY_H
00002 #define ERIS_FACTORY_H
00003 
00004 #include <Atlas/Objects/Entity/GameEntity.h>
00005 #include <Eris/Types.h>
00006 
00007 namespace Eris {
00008 
00009 // forward decls        
00010 class Entity;
00011 class World;
00012 
00014 class Factory
00015 {
00016 public: 
00018 
00021         //virtual bool Accept(const Atlas::Message::Object &o) = 0;
00022         virtual bool accept(const Atlas::Objects::Entity::GameEntity &ge, World *world) = 0;
00023 
00025         virtual EntityPtr instantiate(const Atlas::Objects::Entity::GameEntity &ge, World *world) = 0;
00026         //virtual EntityPtr Instantiate(const Atlas::Message::Object &o) = 0;
00027 };
00028 
00029 class StdFactory : public Factory
00030 {
00031 public:
00032         virtual bool accept(const Atlas::Objects::Entity::GameEntity &ge, World *world);
00033         virtual EntityPtr instantiate(const Atlas::Objects::Entity::GameEntity &ge, World *world);
00034 };
00035         
00036 
00037 } // of namespace
00038 
00039 #endif

Generated on Thu May 22 08:01:03 2003 for Eris by doxygen1.3-rc3