]> SALOME platform Git repositories - modules/yacs.git/blobdiff - src/runtime/SalomeHPContainer.cxx
Salome HOME
Fix memory corruption and refactor some points.
[modules/yacs.git] / src / runtime / SalomeHPContainer.cxx
index 91c9f9d605389831c5cde87b14fff65c75be5693..cdc45e695d921c73ad08e1d53e9b4ddbb49cff95 100644 (file)
@@ -70,14 +70,14 @@ void SalomeHPContainer::unLock()
 
 bool SalomeHPContainer::isAlreadyStarted(const Task *askingNode) const
 {
-  const SalomeContainerMonoHelperhelper(_launchModeType.getHelperOfTask(askingNode));
-  return helper.isAlreadyStarted(askingNode);
+  const SalomeContainerMonoHelper *helper(_launchModeType.getHelperOfTask(askingNode));
+  return helper->isAlreadyStarted(askingNode);
 }
 
 void SalomeHPContainer::start(const Task *askingNode) throw(Exception)
 {
-  SalomeContainerMonoHelperhelper(_launchModeType.getHelperOfTask(askingNode));
-  SalomeContainerTools::Start(_componentNames,&helper,_sct,_shutdownLevel,this,askingNode);
+  SalomeContainerMonoHelper *helper(_launchModeType.getHelperOfTask(askingNode));
+  SalomeContainerTools::Start(_componentNames,helper,_sct,_shutdownLevel,this,askingNode);
 }
 
 void SalomeHPContainer::shutdown(int level)
@@ -87,21 +87,21 @@ void SalomeHPContainer::shutdown(int level)
   _shutdownLevel=999;
   for(std::size_t i=0;_launchModeType.size();i++)
     {
-      SalomeContainerMonoHelperhelper(_launchModeType.at(i));
-      helper.shutdown();
+      SalomeContainerMonoHelper *helper(_launchModeType.at(i));
+      helper->shutdown();
     }
 }
 
 std::string SalomeHPContainer::getPlacementId(const Task *askingNode) const
 {
-  const SalomeContainerMonoHelperhelper(_launchModeType.getHelperOfTask(askingNode));
-  return SalomeContainerTools::GetPlacementId(&helper,this,askingNode);
+  const SalomeContainerMonoHelper *helper(_launchModeType.getHelperOfTask(askingNode));
+  return SalomeContainerTools::GetPlacementId(helper,this,askingNode);
 }
 
 std::string SalomeHPContainer::getFullPlacementId(const Task *askingNode) const
 {
-  const SalomeContainerMonoHelperhelper(_launchModeType.getHelperOfTask(askingNode));
-  return SalomeContainerTools::GetFullPlacementId(&helper,this,askingNode);
+  const SalomeContainerMonoHelper *helper(_launchModeType.getHelperOfTask(askingNode));
+  return SalomeContainerTools::GetFullPlacementId(helper,this,askingNode);
 }
 
 /*!
@@ -133,6 +133,11 @@ void SalomeHPContainer::clearProperties()
   _sct.clearProperties();
 }
 
+void SalomeHPContainer::addComponentName(const std::string& name)
+{
+  _componentNames.push_back(name);
+}
+
 std::map<std::string,std::string> SalomeHPContainer::getProperties() const
 {
   return _sct.getProperties();