Salome HOME
Add Engines.ResourcesManager.ListAllResourcesInCatalog method
[modules/kernel.git] / src / ResourcesManager / SALOME_ResourcesManager.cxx
index f4897ad89ad1c6d9ecd4b64a77b87c7a3b110c6f..c81b240f3e948d60539ee88f54d3fd82d20fffeb 100644 (file)
@@ -146,7 +146,10 @@ void SALOME_ResourcesManager::Shutdown()
 }
 
 /*!
- * Return list of resources available (regarding content of CatalogResources.xml). And for each resource the number of proc available of it.
+ * Return list of resources available (regarding content of CatalogResources.xml) but select only those with canRunContainers attribute set to true.
+ * And for each resource the number of proc available of it.
+ * 
+ * \sa SALOME_ResourcesManager::ListAllResourcesInCatalog
  */
 void SALOME_ResourcesManager::ListAllAvailableResources(Engines::ResourceList_out machines, Engines::IntegerList_out nbProcsOfMachines)
 {
@@ -173,6 +176,25 @@ void SALOME_ResourcesManager::ListAllAvailableResources(Engines::ResourceList_ou
     }
 }
 
+/*!
+ * Return list of resources available (regarding content of CatalogResources.xml) whatever canRunContainers attribute value.
+ * 
+ * \sa SALOME_ResourcesManager::ListAllAvailableResources
+ */
+Engines::ResourceList *SALOME_ResourcesManager::ListAllResourcesInCatalog()
+{
+  const MapOfParserResourcesType& zeList(_rm->GetList());
+  auto sz = zeList.size();
+  Engines::ResourceList *ret(new Engines::ResourceList);
+  ret->length( sz );
+  CORBA::ULong i(0);
+  for(auto it : zeList)
+  {
+    (*ret)[i++] = CORBA::string_dup( it.second.HostName.c_str() );
+  }
+  return ret;
+}
+
 //=============================================================================
 //! get the name of resources fitting the specified constraints (params)
 /*!