]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
CCAR: CCAR_rm_end
authorcaremoli <caremoli>
Wed, 15 Apr 2009 10:33:04 +0000 (10:33 +0000)
committercaremoli <caremoli>
Wed, 15 Apr 2009 10:33:04 +0000 (10:33 +0000)
1- add a new type MachineDefinition in ContainerManager idl
to separate machine definition parameters and machine parameters for requests
to container manager (MachineParameters)

2- in Resource manager replace module by component. Selection of a resource is now
done with a component name and no more with a module name.
Now in CatalogResource.xml, we can specify for a resource that it supports
a list of components or modules.
Syntax for a component is:
<component name="xxxx" moduleName="yyy" />
Syntax for a module is:
<modules moduleName="yyyy"/>
When a module is added, a component with the same name is also added.

13 files changed:
idl/SALOME_ContainerManager.idl
src/Launcher/BatchTest.cxx
src/Launcher/BatchTest.hxx
src/Launcher/SALOME_Launcher.cxx
src/LifeCycleCORBA/TestContainerManager.cxx
src/ResourcesManager/ResourcesManager.cxx
src/ResourcesManager/ResourcesManager.hxx
src/ResourcesManager/SALOME_ResourcesCatalog_Handler.cxx
src/ResourcesManager/SALOME_ResourcesCatalog_Handler.hxx
src/ResourcesManager/SALOME_ResourcesCatalog_Parser.cxx
src/ResourcesManager/SALOME_ResourcesCatalog_Parser.hxx
src/ResourcesManager/SALOME_ResourcesManager.cxx
src/ResourcesManager/SALOME_ResourcesManager.hxx

index 32b8e364e0469e9ab01127fc5a9eaf19593c62c2..392f565198bb138804435c6c692912a56a29d399 100644 (file)
@@ -40,24 +40,38 @@ module Engines
 //! modules list
   typedef sequence<string> ModulesList;
 
-//!  Type to describe properties of a resource.
+//!  Type to describe required properties of a container.
 struct MachineParameters
 {
+  //! container name if given else automatic
   string container_name;
+  //! host name if given else automatic
   string hostname;
+  //! if given alias name to use ??
   string alias;
+  //! protocol to use to start a remote container (ssh or rsh)
   string protocol;
+  //! login name to use to start a remote container
   string username;
+  //! salome application to use to start a remote container
   string applipath;
   ModulesList modList;
   string OS;
+  //! required memory size
   long mem_mb;
+  //! required frequency
   long cpu_clock;
+  //! required number of proc per node
   long nb_proc_per_node;
+  //! required number of node
   long nb_node;
+  //! if true start a MPI container ??
   boolean isMPI;
+  //! required MPI implementation to use
   string mpiImpl;
+  //! required batch system to use
   string batch;
+  //! container working directory 
   string workingdir;
 
   // PaCO specific informations
@@ -65,6 +79,36 @@ struct MachineParameters
   long nb_component_nodes;
 };
 
+//!  Type to describe properties of a resource.
+struct MachineDefinition
+{
+  //! host name 
+  string hostname;
+  string alias;
+  //! protocol to use to start a remote container (ssh or rsh)
+  string protocol;
+  //! login name to use to start a remote container
+  string username;
+  //! salome application to use to start a remote container
+  string applipath;
+  //! list of available components 
+  CompoList componentList;
+  //! operating system 
+  string OS;
+  //! memory size
+  long mem_mb;
+  //! frequency
+  long cpu_clock;
+  //! number of proc per node
+  long nb_proc_per_node;
+  //! number of node
+  long nb_node;
+  //! MPI implementation
+  string mpiImpl;
+  //! batch system
+  string batch;
+  long nb_component_nodes;
+};
 //! exception thrown if a computer is not found in the catalog
   exception NotFound {};
 
@@ -178,7 +222,7 @@ struct BatchParameters
       raises (SALOME::SALOME_Exception);
 
     //!  Get the current machine parameters of a computer
-    MachineParameters GetMachineParameters( in string hostname );
+    MachineDefinition GetMachineParameters( in string hostname );
 
   } ;
 };
index a320ecedc6b75b03475ca1bbc91402a0c66c8236..727cedc5f5fc4a034818da8dc2b6cef0895a1e0e 100644 (file)
@@ -31,7 +31,7 @@
 #ifdef WIN32
 # include <io.h>
 #endif
-BatchTest::BatchTest(const Engines::MachineParameters& batch_descr) 
+BatchTest::BatchTest(const Engines::MachineDefinition& batch_descr) 
 {
   _batch_descr = batch_descr;
 
index 8ccd5a5503ce0b45633ca3d7b791b552d26329d4..8fdf3736c6eec1a50267f0b521dbe3a5986ef0d2 100644 (file)
@@ -32,7 +32,7 @@
 class SALOMELAUNCHER_EXPORT BatchTest 
 {
   public:
-    BatchTest(const Engines::MachineParameters& batch_descr);
+    BatchTest(const Engines::MachineDefinition& batch_descr);
     virtual ~BatchTest();
 
     bool test();
@@ -48,7 +48,7 @@ class SALOMELAUNCHER_EXPORT BatchTest
     std::string get_home(std::string * home);
   
   private:
-    Engines::MachineParameters _batch_descr;
+    Engines::MachineDefinition _batch_descr;
     std::string _test_filename;
     std::string _base_filename;
     std::string _date;
index 00869eec808cdc3db817b4e4b4f40ffe88027695..817fa0f5066054f4288ade7197cd407282af6088 100644 (file)
@@ -92,7 +92,6 @@ void SALOME_Launcher::Shutdown()
   _ResManager->Shutdown();
   PortableServer::ObjectId_var oid = _poa->servant_to_id(this);
   _poa->deactivate_object(oid);
-  //_remove_ref();
   if(!CORBA::is_nil(_orb))
     _orb->shutdown(0);
 }
@@ -204,7 +203,7 @@ SALOME_Launcher::testBatch(const Engines::MachineParameters& params)
     if (aMachineList->length() == 0)
       throw SALOME_Exception("No resources have been found with your parameters");
 
-    const Engines::MachineParameters* p = _ResManager->GetMachineParameters((*aMachineList)[0]);
+    const Engines::MachineDefinition* p = _ResManager->GetMachineParameters((*aMachineList)[0]);
     string clustername(p->alias);
     INFOS("Choose cluster" <<  clustername);
     
index fc09b92e657e55daae701af9224f2b3f7e142d77..c5fc4ef064cb473033438a4cb3c82ca815b8f689 100644 (file)
@@ -139,7 +139,7 @@ int main (int argc, char * argv[])
   int nbpmax;
   for(std::map<std::string,int>::iterator iter=cycle.begin();iter!=cycle.end();iter++){
     if(strcmp((*iter).first.c_str(),"localhost")!=0){
-      Engines::MachineParameters *p = _ResManager->GetMachineParameters((*iter).first.c_str());
+      Engines::MachineDefinition *p = _ResManager->GetMachineParameters((*iter).first.c_str());
       int nbproc = p->nb_node * p->nb_proc_per_node;
       if(cycle[(*iter).first]/nbproc<cmin) cmin=cycle[(*iter).first]/nbproc;
       if(cycle[(*iter).first]/nbproc>cmax) cmax=cycle[(*iter).first]/nbproc;
index 5bcf6d8437d7fb61d098b20a525053cc85241400..7a68eb2bce920cd94e1b5774676d18fe13b1665f 100644 (file)
@@ -108,15 +108,15 @@ ResourcesManager_cpp::~ResourcesManager_cpp()
 
 //=============================================================================
 /*!
- *  get the list of name of ressources fitting for the specified module.
+ *  get the list of name of ressources fitting for the specified component.
  *  If hostname specified, check it is local or known in resources catalog.
  *
  *  Else
  *  - select first machines with corresponding OS (all machines if
  *    parameter OS empty),
- *  - then select the sublist of machines on witch the module is known
+ *  - then select the sublist of machines on witch the component is known
  *    (if the result is empty, that probably means that the inventory of
- *    modules is probably not done, so give complete list from previous step)
+ *    components is probably not done, so give complete list from previous step)
  */ 
 //=============================================================================
 
@@ -185,7 +185,7 @@ ResourcesManager_cpp::GetFittingResources(const machineParams& params,
     // --- Search for available resources sorted by priority
     SelectOnlyResourcesWithOS(vec, params.OS.c_str());
       
-    KeepOnlyResourcesWithModule(vec, componentList);
+    KeepOnlyResourcesWithComponent(vec, componentList);
        
     if (vec.size() == 0)
       SelectOnlyResourcesWithOS(vec, params.OS.c_str());
@@ -225,25 +225,25 @@ ResourcesManager_cpp::GetFittingResources(const machineParams& params,
 //=============================================================================
 /*!
  *  add an entry in the ressources catalog  xml file.
- *  Return 0 if OK (KERNEL found in new resources modules) else throw exception
+ *  Return 0 if OK (KERNEL found in new resources components) else throw exception
  */ 
 //=============================================================================
 
 int
 ResourcesManager_cpp::
 AddResourceInCatalog(const machineParams& paramsOfNewResources,
-                     const vector<string>& modulesOnNewResources,
+                     const vector<string>& componentsOnNewResources,
                      const char *alias,
                      const char *userName,
                      AccessModeType mode,
                      AccessProtocolType prot)
 throw(ResourcesException)
 {
-  vector<string>::const_iterator iter = find(modulesOnNewResources.begin(),
-                                            modulesOnNewResources.end(),
+  vector<string>::const_iterator iter = find(componentsOnNewResources.begin(),
+                                            componentsOnNewResources.end(),
                                             "KERNEL");
 
-  if (iter != modulesOnNewResources.end())
+  if (iter != componentsOnNewResources.end())
     {
       ParserResourcesType newElt;
       newElt.DataForSort._hostName = paramsOfNewResources.hostname;
@@ -251,7 +251,7 @@ throw(ResourcesException)
       newElt.Protocol = prot;
       newElt.Mode = mode;
       newElt.UserName = userName;
-      newElt.ModulesList = modulesOnNewResources;
+      newElt.ComponentsList = componentsOnNewResources;
       newElt.OS = paramsOfNewResources.OS;
       newElt.DataForSort._memInMB = paramsOfNewResources.mem_mb;
       newElt.DataForSort._CPUFreqMHz = paramsOfNewResources.cpu_clock;
@@ -369,9 +369,9 @@ const MapOfParserResourcesType& ResourcesManager_cpp::ParseXmlFile()
 //=============================================================================
 
 const MapOfParserResourcesType& ResourcesManager_cpp::GetList() const
-  {
-    return _resourcesList;
-  }
+{
+  return _resourcesList;
+}
 
 
 //=============================================================================
@@ -432,28 +432,28 @@ throw(ResourcesException)
 
 //=============================================================================
 /*!
- *  Gives a sublist of machines on which the module is known.
+ *  Gives a sublist of machines on which the component is known.
  */ 
 //=============================================================================
 
 //Warning need an updated parsed list : _resourcesList
-void ResourcesManager_cpp::KeepOnlyResourcesWithModule( vector<string>& hosts, const vector<string>& componentList) const
+void ResourcesManager_cpp::KeepOnlyResourcesWithComponent( vector<string>& hosts, const vector<string>& componentList) const
 throw(ResourcesException)
 {
   for (vector<string>::iterator iter = hosts.begin(); iter != hosts.end();)
     {
       MapOfParserResourcesType::const_iterator it = _resourcesList.find(*iter);
-      const vector<string>& mapOfModulesOfCurrentHost = (((*it).second).ModulesList);
+      const vector<string>& mapOfComponentsOfCurrentHost = (((*it).second).ComponentsList);
 
       bool erasedHost = false;
-      if( mapOfModulesOfCurrentHost.size() > 0 ){
+      if( mapOfComponentsOfCurrentHost.size() > 0 ){
        for(unsigned int i=0;i<componentList.size();i++){
           const char* compoi = componentList[i].c_str();
-         vector<string>::const_iterator itt = find(mapOfModulesOfCurrentHost.begin(),
-                                             mapOfModulesOfCurrentHost.end(),
+         vector<string>::const_iterator itt = find(mapOfComponentsOfCurrentHost.begin(),
+                                             mapOfComponentsOfCurrentHost.end(),
                                              compoi);
 //                                           componentList[i]);
-         if (itt == mapOfModulesOfCurrentHost.end()){
+         if (itt == mapOfComponentsOfCurrentHost.end()){
            erasedHost = true;
            break;
          }
index cc065929c26f611bbba1691a19cb6055e31bdf1e..839faccf0df3faff69ed9b0f8f878eb1bb09db1b 100644 (file)
@@ -74,7 +74,7 @@ class RESOURCESMANAGER_EXPORT ResourcesManager_cpp
 
     int AddResourceInCatalog
     (const machineParams& paramsOfNewResources,
-     const std::vector<std::string>& modulesOnNewResources,
+     const std::vector<std::string>& componentsOnNewResources,
      const char *alias,
      const char *userName,
      AccessModeType mode,
@@ -96,7 +96,7 @@ class RESOURCESMANAGER_EXPORT ResourcesManager_cpp
                                   const char *OS) const
       throw(ResourcesException);
 
-    void KeepOnlyResourcesWithModule(std::vector<std::string>& hosts,
+    void KeepOnlyResourcesWithComponent(std::vector<std::string>& hosts,
                                     const std::vector<std::string>& componentList) const
       throw(ResourcesException);
 
index a80bc83bfe72d3fa5f97dcaa75fb8b1298648b60..e990944c05d4a643eda6b7733c223a6b40d1cf57 100755 (executable)
@@ -59,6 +59,8 @@ SALOME_ResourcesCatalog_Handler(MapOfParserResourcesType& resources_list,
   test_appli_path = "appliPath";
   test_modules = "modules";
   test_module_name = "moduleName";
+  test_components = "component";
+  test_component_name = "name";
   test_os = "OS";
   test_mem_in_mb = "memInMB";
   test_cpu_freq_mhz = "CPUFreqMHz";
@@ -277,18 +279,42 @@ void SALOME_ResourcesCatalog_Handler::ProcessXmlDocument(xmlDocPtr theDoc)
               xmlFree(nb_of_proc_per_node);
             }
          
-         // Process modules
+         // Process components
          xmlNodePtr aCurSubNode = aCurNode->xmlChildrenNode;
          while(aCurSubNode != NULL)
            {
-             if ( !xmlStrcmp(aCurSubNode->name, (const xmlChar*)test_modules) )
+             if ( !xmlStrcmp(aCurSubNode->name, (const xmlChar*)test_components) )
                {
+                  //If a component is given, it is in a module with the same name
+                  //except if the module name is given
+                 if (xmlHasProp(aCurSubNode, (const xmlChar*)test_component_name)) 
+                   {
+                     xmlChar* component_name = xmlGetProp(aCurSubNode, (const xmlChar*)test_component_name);
+                     std::string aComponentName = (const char*)component_name;
+                      _resource.ComponentsList.push_back(aComponentName);
+                     if (xmlHasProp(aCurSubNode, (const xmlChar*)test_module_name)) 
+                        {
+                         xmlChar* module_name = xmlGetProp(aCurSubNode, (const xmlChar*)test_module_name);
+                         std::string aModuleName = (const char*)module_name;
+                          _resource.ModulesList.push_back(aModuleName);
+                          xmlFree(module_name);
+                        }
+                      else
+                        _resource.ModulesList.push_back(aComponentName);
+                      xmlFree(component_name);
+                   }
+               }
+              else if ( !xmlStrcmp(aCurSubNode->name, (const xmlChar*)test_modules) )
+               {
+                  // If a module is given, we create an entry in componentsList and modulesList
+                  // with the same name (module == component)
                  if (xmlHasProp(aCurSubNode, (const xmlChar*)test_module_name)) 
                    {
-                     xmlChar* module_name = xmlGetProp(aCurSubNode, (const xmlChar*)test_module_name);
-                     std::string aModuleName = (const char*)module_name;
-                      _resource.ModulesList.push_back(aModuleName);
-                      xmlFree(module_name);
+                     xmlChar* component_name = xmlGetProp(aCurSubNode, (const xmlChar*)test_module_name);
+                     std::string aComponentName = (const char*)component_name;
+                      _resource.ComponentsList.push_back(aComponentName);
+                      _resource.ModulesList.push_back(aComponentName);
+                      xmlFree(component_name);
                    }
                }
              aCurSubNode = aCurSubNode->next;
@@ -315,13 +341,14 @@ void SALOME_ResourcesCatalog_Handler::ProcessXmlDocument(xmlDocPtr theDoc)
             }
             else
               {
-                _resources_list[_resource.HostName] = _resource;
                 if(_resource.HostName == "localhost")
                   {
                     _resource.HostName = Kernel_Utils::GetHostname();
                     _resource.DataForSort._hostName = Kernel_Utils::GetHostname();
                     _resources_list[Kernel_Utils::GetHostname()] = _resource;
                   }
+                else
+                  _resources_list[_resource.HostName] = _resource;
               }
           }
           else
@@ -443,12 +470,12 @@ void SALOME_ResourcesCatalog_Handler::PrepareDocToXmlFile(xmlDocPtr theDoc)
       xmlNewProp(node, BAD_CAST test_user_name, BAD_CAST (*iter).second.UserName.c_str());
 
      for (vector<string>::const_iterator iter2 =
-             (*iter).second.ModulesList.begin();
-           iter2 != (*iter).second.ModulesList.end();
+             (*iter).second.ComponentsList.begin();
+           iter2 != (*iter).second.ComponentsList.end();
            iter2++)
         {
-         node1 = xmlNewChild(node, NULL, BAD_CAST test_modules, NULL);
-         xmlNewProp(node1, BAD_CAST test_module_name, BAD_CAST (*iter2).c_str());
+         node1 = xmlNewChild(node, NULL, BAD_CAST test_components, NULL);
+         xmlNewProp(node1, BAD_CAST test_component_name, BAD_CAST (*iter2).c_str());
         }
 
       xmlNewProp(node, BAD_CAST test_os, BAD_CAST (*iter).second.OS.c_str());
@@ -532,12 +559,12 @@ void SALOME_ResourcesCatalog_Handler::PrepareDocToXmlFile(xmlDocPtr theDoc)
       xmlNewProp(node, BAD_CAST test_user_name, BAD_CAST (*iter).second.UserName.c_str());
 
      for (vector<string>::const_iterator iter2 =
-             (*iter).second.ModulesList.begin();
-           iter2 != (*iter).second.ModulesList.end();
+             (*iter).second.ComponentsList.begin();
+           iter2 != (*iter).second.ComponentsList.end();
            iter2++)
         {
-         node1 = xmlNewChild(node, NULL, BAD_CAST test_modules, NULL);
-         xmlNewProp(node1, BAD_CAST test_module_name, BAD_CAST (*iter2).c_str());
+         node1 = xmlNewChild(node, NULL, BAD_CAST test_components, NULL);
+         xmlNewProp(node1, BAD_CAST test_component_name, BAD_CAST (*iter2).c_str());
         }
 
       xmlNewProp(node, BAD_CAST test_os, BAD_CAST (*iter).second.OS.c_str());
index 35cd212969c57a42006dd493d7115b226c9c66e1..a48dded3cc61b7b178959346417cdc62e42ff9af 100755 (executable)
@@ -54,7 +54,7 @@ class RESOURCESMANAGER_EXPORT SALOME_ResourcesCatalog_Handler
     void PrepareDocToXmlFile(xmlDocPtr theDoc);
 
   private :
-    std::string previous_module_name;
+    std::string previous_component_name;
 
     ParserResourcesType _resource;
     MapOfParserResourcesType& _resources_list;
@@ -71,8 +71,11 @@ class RESOURCESMANAGER_EXPORT SALOME_ResourcesCatalog_Handler
     const char *test_mpi;
     const char *test_user_name;
     const char *test_appli_path;
+    // for compatibility
     const char *test_modules;
     const char *test_module_name;
+    const char *test_components;
+    const char *test_component_name;
     const char *test_os;
     const char *test_mem_in_mb;
     const char *test_cpu_freq_mhz;
index fff95034a72b9a01535ececd4e13ee34eab0cad9..510a00437d4a82cc4765659561ee8611dcaf2f02 100644 (file)
@@ -133,10 +133,10 @@ void ParserResourcesType::Print() const
     "OS : " << OS << endl <<
     "batchQueue : " << batchQueue << endl <<
     "userCommands : " << userCommands << endl <<
-    "Modules : " << endl;
+    "Components : " << endl;
 
-  for(int i=0;i<ModulesList.size();i++)
-    oss << "Module " << i+1 << " called : " << ModulesList[i] << endl;
+  for(int i=0;i<ComponentsList.size();i++)
+    oss << "Component " << i+1 << " called : " << ComponentsList[i] << endl;
 
   cout << oss.str() << endl;
 
@@ -159,6 +159,6 @@ void ParserResourcesType::Clear()
   AppliPath = "";
   batchQueue = "";
   userCommands = "";
-  ModulesList.clear();
+  ComponentsList.clear();
   OS = "";
 }
index 2d723b5800b01545316fdb0eaa5d29c712d889c9..95ff5968373760c6dfe174e13dc85012525a36e7 100755 (executable)
@@ -82,6 +82,7 @@ struct RESOURCESMANAGER_EXPORT ParserResourcesType
     MpiImplType mpi;
     std::string UserName;
     std::string AppliPath;
+    std::vector<std::string> ComponentsList;
     std::vector<std::string> ModulesList;
     std::string OS;
     std::string batchQueue;
index 408c2250a420a4092205845910e11b76c6a0a56d..1817edc8610e110ae001b97552508ae99f8b7268 100644 (file)
@@ -66,9 +66,7 @@ SALOME_ResourcesManager(CORBA::ORB_ptr orb,
   _poa = PortableServer::POA::_duplicate(poa) ;
   PortableServer::ObjectId_var id = _poa->activate_object(this);
   CORBA::Object_var obj = _poa->id_to_reference(id);
-  Engines::SalomeLauncher_var refContMan =
-    Engines::SalomeLauncher::_narrow(obj);
-
+  Engines::ResourcesManager_var refContMan = Engines::ResourcesManager::_narrow(obj);
   _NS->Register(refContMan,_ResourcesManagerNameInNS);
   MESSAGE("SALOME_ResourcesManager constructor end");
 }
@@ -124,20 +122,19 @@ void SALOME_ResourcesManager::Shutdown()
   _NS->Destroy_Name(_ResourcesManagerNameInNS);
   PortableServer::ObjectId_var oid = _poa->servant_to_id(this);
   _poa->deactivate_object(oid);
-  //_remove_ref();
 }
 
 //=============================================================================
 /*!
- *  get the list of name of ressources fitting for the specified module.
+ *  get the list of name of ressources fitting for the specified component.
  *  If hostname specified, check it is local or known in resources catalog.
  *
  *  Else
  *  - select first machines with corresponding OS (all machines if
  *    parameter OS empty),
- *  - then select the sublist of machines on witch the module is known
+ *  - then select the sublist of machines on witch the component is known
  *    (if the result is empty, that probably means that the inventory of
- *    modules is probably not done, so give complete list from previous step)
+ *    components is probably not done, so give complete list from previous step)
  */ 
 //=============================================================================
 
@@ -189,11 +186,10 @@ SALOME_ResourcesManager::FindFirst(const Engines::MachineList& listOfMachines)
   return CORBA::string_dup(_rm.FindFirst(ml).c_str());
 }
 
-Engines::MachineParameters* SALOME_ResourcesManager::GetMachineParameters(const char *hostname)
+Engines::MachineDefinition* SALOME_ResourcesManager::GetMachineParameters(const char *hostname)
 {
   ParserResourcesType resource = _rm.GetResourcesList(string(hostname));
-  Engines::MachineParameters *p_ptr = new Engines::MachineParameters;
-  p_ptr->container_name = CORBA::string_dup("");
+  Engines::MachineDefinition *p_ptr = new Engines::MachineDefinition;
   p_ptr->hostname = CORBA::string_dup(resource.HostName.c_str());
   p_ptr->alias = CORBA::string_dup(resource.Alias.c_str());
   if( resource.Protocol == rsh )
@@ -202,9 +198,9 @@ Engines::MachineParameters* SALOME_ResourcesManager::GetMachineParameters(const
     p_ptr->protocol = "ssh";
   p_ptr->username = CORBA::string_dup(resource.UserName.c_str());
   p_ptr->applipath = CORBA::string_dup(resource.AppliPath.c_str());
-  p_ptr->modList.length(resource.ModulesList.size());
-  for(unsigned int i=0;i<resource.ModulesList.size();i++)
-    p_ptr->modList[i] = CORBA::string_dup(resource.ModulesList[i].c_str());
+  p_ptr->componentList.length(resource.ComponentsList.size());
+  for(unsigned int i=0;i<resource.ComponentsList.size();i++)
+    p_ptr->componentList[i] = CORBA::string_dup(resource.ComponentsList[i].c_str());
   p_ptr->OS = CORBA::string_dup(resource.OS.c_str());
   p_ptr->mem_mb = resource.DataForSort._memInMB;
   p_ptr->cpu_clock = resource.DataForSort._CPUFreqMHz;
index 9fcf8a1c6cb0d89cc4d73fb2625b4f7bac80b9da..1ef84175791551cf8911c38c58eafa9808c345d8 100644 (file)
@@ -69,7 +69,7 @@ class SALOMERESOURCESMANAGER_EXPORT SALOME_ResourcesManager:
 
     char* FindFirst(const Engines::MachineList& listOfMachines);
 
-    Engines::MachineParameters* GetMachineParameters(const char *hostname);
+    Engines::MachineDefinition* GetMachineParameters(const char *hostname);
 
     void Shutdown();