Salome HOME
[EDF29852] : Mecanism of fault tolerant in SALOME_Container to resist against emitted...
[modules/kernel.git] / src / Basics / KernelBasis.i
index 3d070b68c757d653990561a1705a45fbdf44e30f..8979e3eabd55da968786eb375e05d95e50f8e8f0 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023  CEA, EDF
+// Copyright (C) 2021-2024  CEA, EDF
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -33,6 +33,7 @@ using namespace SALOME;
 %include std_vector.i
 
 %template(dvec) std::vector<double>;
+%template(strvec) std::vector<std::string>;
 
 %exception {
    try 
@@ -62,9 +63,9 @@ void setIOROfEmbeddedNS(const std::string& ior);
 
 double GetTimeAdjustmentCst();
 
-void LaunchMonitoring(const std::string& pyScriptToEvaluate, const std::string& outFileName);
+long LaunchMonitoring(const std::string& pyScriptToEvaluate);
 
-std::vector<double> StopMonitoring();
+void StopMonitoring(long pid);
 
 bool VerbosityActivated();
 
@@ -84,6 +85,9 @@ void WriteInStderr(const std::string& msg);
 
 %rename (SetVerbosityLevel) SetVerbosityLevelSwig;
 %rename (VerbosityLevel) VerbosityLevelSwig;
+%rename (SetPyExecutionMode) SetPyExecutionModeStrSwig;
+%rename (GetPyExecutionMode) GetPyExecutionModeStrSwig;
+%rename (GetAllPyExecutionModes) GetAllPyExecutionModesSwig;
 
 %inline
 {
@@ -97,6 +101,17 @@ PyObject *HeatMarcelSwig(double timeAjustment, unsigned int nbThreads = 0)
   return ret;
 }
 
+std::vector<double> ReadFloatsInFileSwig(const std::string& fileName)
+{
+  std::vector<double> ret;
+  try
+  {
+    ret = SALOME::ReadFloatsInFile( fileName );
+  }
+  catch(std::exception& e) { }
+  return ret;
+}
+
 void SetVerbosityLevelSwig(const std::string& level)
 {
   SetVerbosityLevelStr(level);
@@ -106,4 +121,25 @@ std::string VerbosityLevelSwig()
 {
   return VerbosityLevelStr();
 }
+
+void SetPyExecutionModeStrSwig(const std::string& mode)
+{
+  SetPyExecutionModeStr( mode );
+}
+
+std::string GetPyExecutionModeStrSwig()
+{
+  return GetPyExecutionModeStr();
 }
+
+std::vector<std::string> GetAllPyExecutionModesSwig()
+{
+  return GetAllPyExecutionModes();
+}
+}
+
+%pythoncode %{
+def ReadFloatsInFile( fileName ):
+  ret = ReadFloatsInFileSwig( fileName )
+  return ret
+%}
\ No newline at end of file