NEOCCA bindings Specification  0.2.8
AbstractFramework.hh
Go to the documentation of this file.
00001 #ifndef neo_AbstractFramework_hh_seen
00002 #define neo_AbstractFramework_hh_seen
00003 namespace neo {
00004 namespace cca {
00005 
00006 
00016 class AbstractFramework 
00017 {
00018 
00019 public:
00020   
00021   virtual ~AbstractFramework(){}
00022 
00023   virtual TypeMap_shared createTypeMap()= 0;
00024 
00025   virtual Services *getServices(const std::string & selfInstanceName, const std::string & selfClassName, TypeMap_shared selfProperties)= 0;
00026 
00027   virtual void releaseServices( Services * svc)= 0;
00028 
00035   virtual void shutdownFramework()= 0;
00036 
00041   virtual AbstractFramework * createEmptyFramework()= 0;
00042 
00048   virtual void destroyEmptyFramework( AbstractFramework * subframe)= 0;
00049 
00050 };
00051 
00052 }  // end namespace cca
00053 }  // end namespace neo
00054 
00055 #endif // neo_AbstractFramework_hh_seen