Skip to content
Snippets Groups Projects
Commit f1635c87 authored by Florent Lamiraux's avatar Florent Lamiraux Committed by Florent Lamiraux florent@laas.fr
Browse files

FactoryStorage and PoolStorage are now singletons.

    global variables g_pool and g_factory have been replaced by
    PoolStorage::getInstance and FactoryStorage::getInstance static methods.
parent eac5143f
No related branches found
No related tags found
No related merge requests found
...@@ -13,7 +13,6 @@ from wrap import * ...@@ -13,7 +13,6 @@ from wrap import *
sys.setdlopenflags(flags) sys.setdlopenflags(flags)
import entity, signal_base import entity, signal_base
import re
def plug (signalOut, signalIn) : def plug (signalOut, signalIn) :
""" """
......
...@@ -52,7 +52,8 @@ namespace dynamicgraph { ...@@ -52,7 +52,8 @@ namespace dynamicgraph {
Entity* obj = NULL; Entity* obj = NULL;
/* Try to find if the corresponding object already exists. */ /* Try to find if the corresponding object already exists. */
if( dynamicgraph::g_pool.existEntity( instanceName,obj ) ) if( dynamicgraph::PoolStorage::getInstance()->existEntity(instanceName,
obj))
{ {
if( obj->getClassName()!=className ) { if( obj->getClassName()!=className ) {
std::string msg ("Found an object named " std::string msg ("Found an object named "
...@@ -68,8 +69,8 @@ namespace dynamicgraph { ...@@ -68,8 +69,8 @@ namespace dynamicgraph {
else /* If not, create a new object. */ else /* If not, create a new object. */
{ {
try { try {
obj = dynamicgraph::g_factory.newEntity(std::string(className), obj = dynamicgraph::FactoryStorage::getInstance()->newEntity
std::string(instanceName)); (std::string(className), std::string(instanceName));
} catch (std::exception& exc) { } catch (std::exception& exc) {
PyErr_SetString(dgpyError, exc.what()); PyErr_SetString(dgpyError, exc.what());
return NULL; return NULL;
......
...@@ -34,7 +34,7 @@ namespace dynamicgraph { ...@@ -34,7 +34,7 @@ namespace dynamicgraph {
return NULL; return NULL;
std::vector <std::string> classNames; std::vector <std::string> classNames;
dynamicgraph::g_factory.listEntities(classNames); dynamicgraph::FactoryStorage::getInstance()->listEntities(classNames);
unsigned int classNumber = classNames.size(); unsigned int classNumber = classNames.size();
// Build a tuple object // Build a tuple object
PyObject* classTuple = PyTuple_New(classNumber); PyObject* classTuple = PyTuple_New(classNumber);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment