Salome HOME
new "medcoupling" python module to gether into a single module all the MEDCoupling...
[tools/medcoupling.git] / src / RENUMBER / RenumberingFactory.cxx
index 18f29f1f7112acf58da35a5f68d61d273761d0bc..fd4410e9011414fd75113b222c24ad15f9958c1c 100644 (file)
@@ -1,9 +1,9 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D
+// Copyright (C) 2007-2016  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 using namespace std;
 
 namespace MED_RENUMBER
-{
+{ 
   Renumbering* RenumberingFactory(const string &s)
   {
 #ifdef MED_ENABLE_METIS
 #ifdef ENABLE_BOOST
-    if (s=="METIS")
+    if (s==METIS_ALG)
       {
         return new METISRenumbering;
       }
-    else if(s=="BOOST")
+    else if(s==BOOST_ALG)
       {
         return new BOOSTRenumbering;
       }
@@ -51,7 +51,7 @@ namespace MED_RENUMBER
       }
 #endif
 #ifndef ENABLE_BOOST
-    if (s=="METIS")
+    if (s==METIS_ALG)
       {
         return new METISRenumbering;
       }
@@ -64,7 +64,7 @@ namespace MED_RENUMBER
 #endif
 #ifndef MED_ENABLE_METIS
 #ifdef ENABLE_BOOST
-    if (s=="BOOST")
+    if (s==BOOST_ALG)
       {
         return new BOOSTRenumbering;
       }
@@ -80,4 +80,24 @@ namespace MED_RENUMBER
 #endif
 #endif
   }
+
+  std::vector<std::string> AllRenumberMethods()
+  {
+    std::vector<std::string> ret;
+    ret.push_back(std::string(BOOST_ALG));
+    ret.push_back(std::string(METIS_ALG));
+    return ret;
+  }
+  
+  std::vector<std::string> RenumberAvailableMethods()
+  {
+    std::vector<std::string> ret;
+#ifdef ENABLE_BOOST
+    ret.push_back(std::string(BOOST_ALG));
+#endif
+#ifdef MED_ENABLE_METIS
+    ret.push_back(std::string(METIS_ALG));
+#endif
+    return ret;
+  }
 }