1 // Copyright (C) 2021-2024 CEA, EDF
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 #include "KernelBasis.hxx"
24 #include "HeatMarcel.hxx"
25 #include "libSALOMELog.hxx"
26 #include "Monitoring.hxx"
27 using namespace SALOME;
35 %template(dvec) std::vector<double>;
36 %template(strvec) std::vector<std::string>;
43 catch(std::exception& e)
45 SWIG_exception(SWIG_SystemError, e.what() );
49 SWIG_exception(SWIG_UnknownError, "Unknown exception");
53 %rename (HeatMarcel) HeatMarcelSwig;
54 %rename (GetBigObjOnDiskThreshold) GetBigObjOnDiskThresholdSwig;
55 %rename (SetBigObjOnDiskThreshold) SetBigObjOnDiskThresholdSwig;
56 %rename (GetBigObjOnDiskDirectory) GetBigObjOnDiskDirectorySwig;
57 %rename (SetBigObjOnDiskDirectory) SetBigObjOnDiskDirectorySwig;
58 %rename (BigObjOnDiskDirectoryDefined) BigObjOnDiskDirectoryDefinedSwig;
61 void setSSLMode(bool sslMode);
64 void setGUIMode(bool guiMode);
66 std::string getIOROfEmbeddedNS();
67 void setIOROfEmbeddedNS(const std::string& ior);
69 double GetTimeAdjustmentCst();
71 long LaunchMonitoring(const std::string& pyScriptToEvaluate);
73 void StopMonitoring(long pid);
75 bool VerbosityActivated();
77 void SetVerbosityActivated(bool flag);
83 bool IsWarningLevel();
87 void WriteInStdout(const std::string& msg);
89 void WriteInStderr(const std::string& msg);
91 %rename (SetVerbosityLevel) SetVerbosityLevelSwig;
92 %rename (VerbosityLevel) VerbosityLevelSwig;
93 %rename (SetPyExecutionMode) SetPyExecutionModeStrSwig;
94 %rename (GetPyExecutionMode) GetPyExecutionModeStrSwig;
95 %rename (GetAllPyExecutionModes) GetAllPyExecutionModesSwig;
99 PyObject *HeatMarcelSwig(double timeAjustment, unsigned int nbThreads = 0)
101 double timeInS = 0.0;
102 long double piVal = HeatMarcel(timeAjustment,timeInS,nbThreads);
103 PyObject *ret(PyTuple_New(2));
104 PyTuple_SetItem(ret,0,SWIG_From_double((double)piVal));
105 PyTuple_SetItem(ret,1,SWIG_From_double(timeInS));
109 std::vector<double> ReadFloatsInFileSwig(const std::string& fileName)
111 std::vector<double> ret;
114 ret = SALOME::ReadFloatsInFile( fileName );
116 catch(std::exception& e) { }
120 int GetBigObjOnDiskThresholdSwig()
122 return SALOME::GetBigObjOnDiskThreshold();
125 void SetBigObjOnDiskThresholdSwig(int newThreshold)
127 return SALOME::SetBigObjOnDiskThreshold(newThreshold);
130 std::string GetBigObjOnDiskDirectorySwig()
132 return SALOME::GetBigObjOnDiskDirectory();
135 void SetBigObjOnDiskDirectorySwig(const std::string& directory)
137 return SALOME::SetBigObjOnDiskDirectory(directory);
140 bool BigObjOnDiskDirectoryDefinedSwig()
142 return SALOME::BigObjOnDiskDirectoryDefined();
145 void SetVerbosityLevelSwig(const std::string& level)
147 SetVerbosityLevelStr(level);
150 std::string VerbosityLevelSwig()
152 return VerbosityLevelStr();
155 void SetPyExecutionModeStrSwig(const std::string& mode)
157 SetPyExecutionModeStr( mode );
160 std::string GetPyExecutionModeStrSwig()
162 return GetPyExecutionModeStr();
165 std::vector<std::string> GetAllPyExecutionModesSwig()
167 return GetAllPyExecutionModes();
172 def ReadFloatsInFile( fileName ):
173 ret = ReadFloatsInFileSwig( fileName )