Eris  1.3.19
Factory.h
1 #ifndef ERIS_FACTORY_H
2 #define ERIS_FACTORY_H
3 
4 #include <Atlas/Objects/ObjectsFwd.h>
5 
6 namespace Eris {
7 
8 // forward decls
9 class Entity;
10 class View;
11 class TypeInfo;
12 
14 class Factory
15 {
16 public:
17  virtual ~Factory();
19 
22  virtual bool accept(const Atlas::Objects::Entity::RootEntity &ge, TypeInfo* type) = 0;
23 
25  virtual Entity* instantiate(const Atlas::Objects::Entity::RootEntity &ge, TypeInfo* type, View* v) = 0;
26 
30  virtual int priority();
31 };
32 
33 } // of namespace Eris
34 
35 #endif