50 #ifndef _IComponentManager_H_
51 #define _IComponentManager_H_
53 #include "component/IComponent.h"
55 #include "system/compat/SystemCompat.h"
56 using namespace ::br::pucrio::telemidia::ginga::core::system::compat;
63 typedef void* CMCreator();
75 virtual void setUnloadComponents(
bool allowUnload)=0;
76 virtual void* getObject(
string objectName)=0;
77 virtual set<string>* getObjectsFromInterface(
78 string interfaceName)=0;
80 virtual map<string, set<string>*>* getUnsolvedDependencies()=0;
81 virtual bool releaseComponentFromObject(
string objName)=0;
82 virtual void refreshComponentDescription()=0;
83 virtual map<string, IComponent*>* getComponentDescription()=0;
84 virtual bool isAvailable(
string objName)=0;
87 virtual bool releaseComponent(
void* component)=0;
96 SystemCompat::getComponentManagerInstance());
99 cmCreator = (CMCreator*)SystemCompat::loadComponent(
100 "libgingacccm", &comp,
"createCM");
102 if (cmCreator != NULL) {
104 SystemCompat::setComponentManagerInstance(icm);
118 #endif //_IComponentManager_H_
Definition: IComponentManager.h:71