salome.kernel 9.14.0.post3__cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. salome/bin/salome/IDLparser.py +882 -0
  2. salome/bin/salome/KernelHelpersUseCases +0 -0
  3. salome/bin/salome/NSparam.py +51 -0
  4. salome/bin/salome/ORBConfigFile.py +55 -0
  5. salome/bin/salome/SALOMEDS_Client +0 -0
  6. salome/bin/salome/SALOMEDS_Server +0 -0
  7. salome/bin/salome/SALOME_ConnectionManagerServer +0 -0
  8. salome/bin/salome/SALOME_Container +0 -0
  9. salome/bin/salome/SALOME_ContainerPy.py +397 -0
  10. salome/bin/salome/SALOME_Container_No_NS_Serv +0 -0
  11. salome/bin/salome/SALOME_Container_No_NS_Serv_OutProcess +0 -0
  12. salome/bin/salome/SALOME_Container_No_NS_Serv_OutProcess_FT +0 -0
  13. salome/bin/salome/SALOME_Container_No_NS_Serv_OutProcess_Replay +0 -0
  14. salome/bin/salome/SALOME_Container_No_NS_Serv_OutProcess_Replay_FT +0 -0
  15. salome/bin/salome/SALOME_DataScopeServer +0 -0
  16. salome/bin/salome/SALOME_DataScopeServer_SSL +0 -0
  17. salome/bin/salome/SALOME_LauncherServer +0 -0
  18. salome/bin/salome/SALOME_Logger_Server +0 -0
  19. salome/bin/salome/SALOME_ModuleCatalog_Client +0 -0
  20. salome/bin/salome/SALOME_ModuleCatalog_Server +0 -0
  21. salome/bin/salome/SALOME_Registry_Server +0 -0
  22. salome/bin/salome/TestComponentPy.py +71 -0
  23. salome/bin/salome/TestContainer +0 -0
  24. salome/bin/salome/TestContainerManager +0 -0
  25. salome/bin/salome/TestLauncher +0 -0
  26. salome/bin/salome/TestLifeCycleCORBA.py +89 -0
  27. salome/bin/salome/TestLogger +0 -0
  28. salome/bin/salome/TestLogger.py +27 -0
  29. salome/bin/salome/TestModuleCatalog.py +87 -0
  30. salome/bin/salome/Test_LifeCycleCORBA +0 -0
  31. salome/bin/salome/VERSION +3 -0
  32. salome/bin/salome/addToKillList.py +35 -0
  33. salome/bin/salome/app-quickstart.py +288 -0
  34. salome/bin/salome/appli/.bashrc +50 -0
  35. salome/bin/salome/appli/extra.env.d/001.py +42 -0
  36. salome/bin/salome/appli/python_test_driver.py +148 -0
  37. salome/bin/salome/appli/salome +193 -0
  38. salome/bin/salome/appli/salome_instance.py +31 -0
  39. salome/bin/salome/appli/salome_test_driver.py +150 -0
  40. salome/bin/salome/appli/salome_test_driver_gui.py +82 -0
  41. salome/bin/salome/appli_clean.sh +53 -0
  42. salome/bin/salome/appli_gen.py +606 -0
  43. salome/bin/salome/dummyexe_loggerTraceCollector +0 -0
  44. salome/bin/salome/envSalome.py +59 -0
  45. salome/bin/salome/killSalome.py +48 -0
  46. salome/bin/salome/killSalomeWithPort.py +56 -0
  47. salome/bin/salome/prepare_generating_doc.py +104 -0
  48. salome/bin/salome/pythonpath_reduction.py +184 -0
  49. salome/bin/salome/runConsole.py +39 -0
  50. salome/bin/salome/runIDLparser +58 -0
  51. salome/bin/salome/runRemote.py +101 -0
  52. salome/bin/salome/runSalome.py +30 -0
  53. salome/bin/salome/runSalomeNoServer.py +24 -0
  54. salome/bin/salome/runSalomeOld.py +36 -0
  55. salome/bin/salome/runSalomeOnDemand.py +41 -0
  56. salome/bin/salome/salomeContext.py +36 -0
  57. salome/bin/salome/salome_process_attach +44 -0
  58. salome/bin/salome/salome_process_launcher +58 -0
  59. salome/bin/salome/setenv.py +32 -0
  60. salome/bin/salome/showNS.py +33 -0
  61. salome/bin/salome/test/kernel/ArgvKeeper/CTestTestfile.cmake +31 -0
  62. salome/bin/salome/test/kernel/ArgvKeeper/TestArgvKeeper +0 -0
  63. salome/bin/salome/test/kernel/ArgvKeeper/test_ArgvKeeper.py +34 -0
  64. salome/bin/salome/test/kernel/CTestTestfile.cmake +49 -0
  65. salome/bin/salome/test/kernel/Container/CTestTestfile.cmake +29 -0
  66. salome/bin/salome/test/kernel/Container/testProxy.py +291 -0
  67. salome/bin/salome/test/kernel/Container/testcontainer.py +106 -0
  68. salome/bin/salome/test/kernel/KernelHelpers/CTestTestfile.cmake +31 -0
  69. salome/bin/salome/test/kernel/KernelHelpers/KernelHelpersUnitTests.hxx +58 -0
  70. salome/bin/salome/test/kernel/KernelHelpers/TestKernelHelpers +0 -0
  71. salome/bin/salome/test/kernel/KernelHelpers/TestKernelHelpers.py +55 -0
  72. salome/bin/salome/test/kernel/Launcher/CTestTestfile.cmake +43 -0
  73. salome/bin/salome/test/kernel/Launcher/TestSSLAttached.py +110 -0
  74. salome/bin/salome/test/kernel/Launcher/launcher_use_case.py +65 -0
  75. salome/bin/salome/test/kernel/Launcher/testCrashProofContainer.py +423 -0
  76. salome/bin/salome/test/kernel/Launcher/testPerfLogManager1.py +382 -0
  77. salome/bin/salome/test/kernel/Launcher/test_launcher.py +674 -0
  78. salome/bin/salome/test/kernel/Launcher/test_stress.sh +45 -0
  79. salome/bin/salome/test/kernel/Launcher_SWIG/CTestTestfile.cmake +30 -0
  80. salome/bin/salome/test/kernel/Launcher_SWIG/test_swig_launcher.py +706 -0
  81. salome/bin/salome/test/kernel/LifeCycleCORBA/CTestTestfile.cmake +27 -0
  82. salome/bin/salome/test/kernel/LifeCycleCORBA/LifeCycleCORBATest.hxx +105 -0
  83. salome/bin/salome/test/kernel/LifeCycleCORBA/TestLifeCycleCORBA +0 -0
  84. salome/bin/salome/test/kernel/LifeCycleCORBA/TestLifeCycleCORBA.py +93 -0
  85. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/CTestTestfile.cmake +40 -0
  86. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/CatalogResources_resource.xml +15 -0
  87. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/LifeCycleCORBA_SWIGTest.py +217 -0
  88. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/SALOME_TestComponentPy.py +49 -0
  89. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/TestLifeCycleCORBA_SWIG.py +100 -0
  90. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/testcontainermanager.py +88 -0
  91. salome/bin/salome/test/kernel/LifeCycleCORBA_SWIG/testresourcemanager.py +155 -0
  92. salome/bin/salome/test/kernel/NamingService/CTestTestfile.cmake +28 -0
  93. salome/bin/salome/test/kernel/NamingService/NamingServiceTest.hxx +169 -0
  94. salome/bin/salome/test/kernel/NamingService/TestNamingService +0 -0
  95. salome/bin/salome/test/kernel/NamingService/TestNamingService.py +64 -0
  96. salome/bin/salome/test/kernel/SALOMEDS/CTestTestfile.cmake +27 -0
  97. salome/bin/salome/test/kernel/SALOMEDS/SALOMEDSTest.hxx +192 -0
  98. salome/bin/salome/test/kernel/SALOMEDS/TestSALOMEDS +0 -0
  99. salome/bin/salome/test/kernel/SALOMEDS/TestSALOMEDS.py +55 -0
  100. salome/bin/salome/test/kernel/SALOMEDSImpl/CTestTestfile.cmake +27 -0
  101. salome/bin/salome/test/kernel/SALOMEDSImpl/SALOMEDSImplTest.hxx +51 -0
  102. salome/bin/salome/test/kernel/SALOMEDSImpl/TestSALOMEDSImpl +0 -0
  103. salome/bin/salome/test/kernel/SALOMEDSImpl/TestSALOMEDSImpl.py +55 -0
  104. salome/bin/salome/test/kernel/SALOMELocalTrace/CTestTestfile.cmake +27 -0
  105. salome/bin/salome/test/kernel/SALOMELocalTrace/SALOMELocalTraceTest.hxx +59 -0
  106. salome/bin/salome/test/kernel/SALOMELocalTrace/TestSALOMELocalTrace +0 -0
  107. salome/bin/salome/test/kernel/SALOMELocalTrace/TestSALOMELocalTrace.py +40 -0
  108. salome/bin/salome/test/kernel/SALOMETraceCollector/CTestTestfile.cmake +27 -0
  109. salome/bin/salome/test/kernel/SALOMETraceCollector/SALOMETraceCollectorTest.hxx +51 -0
  110. salome/bin/salome/test/kernel/SALOMETraceCollector/TestSALOMETraceCollector +0 -0
  111. salome/bin/salome/test/kernel/SALOMETraceCollector/TestSALOMETraceCollector.py +57 -0
  112. salome/bin/salome/test/kernel/UnitTests/CTestTestfile.cmake +28 -0
  113. salome/bin/salome/test/kernel/UnitTests/UnitTests +0 -0
  114. salome/bin/salome/test/kernel/UnitTests/UnitTests.py +89 -0
  115. salome/bin/salome/test/kernel/Utils/CTestTestfile.cmake +27 -0
  116. salome/bin/salome/test/kernel/Utils/TestUtils +0 -0
  117. salome/bin/salome/test/kernel/Utils/TestUtils.py +55 -0
  118. salome/bin/salome/test/kernel/Utils/UtilsTest.hxx +58 -0
  119. salome/bin/salome/test/kernel/lib/libLifeCycleCORBATest.so +0 -0
  120. salome/bin/salome/test/kernel/lib/libNamingServiceTest.so +0 -0
  121. salome/bin/salome/test/kernel/lib/libSALOMEDSImplTest.so +0 -0
  122. salome/bin/salome/test/kernel/lib/libSALOMEDSTest.so +0 -0
  123. salome/bin/salome/test/kernel/lib/libSALOMELocalTraceTest.so +0 -0
  124. salome/bin/salome/test/kernel/lib/libSALOMETraceCollectorTest.so +0 -0
  125. salome/bin/salome/test/kernel/lib/libSalomeKernelHelpersTest.so +0 -0
  126. salome/bin/salome/test/kernel/lib/libUtilsTest.so +0 -0
  127. salome/bin/salome/testDF +0 -0
  128. salome/bin/salome/testDS +0 -0
  129. salome/bin/salome/virtual_salome.py +38 -0
  130. salome/bin/salome/waitContainers.py +82 -0
  131. salome/bin/salome/waitNS.py +31 -0
  132. salome/kernel/ArgvKeeper.py +132 -0
  133. salome/kernel/Calcium_Ports_idl.py +645 -0
  134. salome/kernel/DSC_Engines_idl.py +443 -0
  135. salome/kernel/Engines/__init__.py +24 -0
  136. salome/kernel/Engines__POA/__init__.py +24 -0
  137. salome/kernel/Help.py +141 -0
  138. salome/kernel/KernelBasis.py +463 -0
  139. salome/kernel/KernelContainer.py +81 -0
  140. salome/kernel/KernelDS.py +87 -0
  141. salome/kernel/KernelLauncher.py +117 -0
  142. salome/kernel/KernelLogger.py +75 -0
  143. salome/kernel/KernelModuleCatalog.py +76 -0
  144. salome/kernel/KernelSDS.py +92 -0
  145. salome/kernel/KernelServices.py +105 -0
  146. salome/kernel/LifeCycleCORBA.py +92 -0
  147. salome/kernel/Logger_idl.py +89 -0
  148. salome/kernel/NSTEST/__init__.py +13 -0
  149. salome/kernel/NSTEST__POA/__init__.py +13 -0
  150. salome/kernel/NSparam_impl.py +50 -0
  151. salome/kernel/NamingService.py +365 -0
  152. salome/kernel/ORBConfigFile_impl.py +102 -0
  153. salome/kernel/Palm_Ports_idl.py +162 -0
  154. salome/kernel/PortManager.py +259 -0
  155. salome/kernel/Ports/Calcium_Ports/__init__.py +13 -0
  156. salome/kernel/Ports/Palm_Ports/__init__.py +13 -0
  157. salome/kernel/Ports/__init__.py +18 -0
  158. salome/kernel/Ports__POA/Calcium_Ports/__init__.py +13 -0
  159. salome/kernel/Ports__POA/Palm_Ports/__init__.py +13 -0
  160. salome/kernel/Ports__POA/__init__.py +18 -0
  161. salome/kernel/PyInterp.py +99 -0
  162. salome/kernel/Registry/__init__.py +13 -0
  163. salome/kernel/Registry__POA/__init__.py +13 -0
  164. salome/kernel/SALOME/__init__.py +19 -0
  165. salome/kernel/SALOMEDS/__init__.py +14 -0
  166. salome/kernel/SALOMEDS_Attributes_idl.py +2288 -0
  167. salome/kernel/SALOMEDS__POA/__init__.py +14 -0
  168. salome/kernel/SALOMEDS_idl.py +1590 -0
  169. salome/kernel/SALOMEWrappedStdType.py +383 -0
  170. salome/kernel/SALOME_Comm_idl.py +1045 -0
  171. salome/kernel/SALOME_CommonTypes_idl.py +69 -0
  172. salome/kernel/SALOME_ComponentPy.py +338 -0
  173. salome/kernel/SALOME_Component_idl.py +962 -0
  174. salome/kernel/SALOME_Container.py +242 -0
  175. salome/kernel/SALOME_ContainerHelper.py +840 -0
  176. salome/kernel/SALOME_ContainerManager_idl.py +236 -0
  177. salome/kernel/SALOME_DriverPy.py +86 -0
  178. salome/kernel/SALOME_Embedded_NamingService.py +41 -0
  179. salome/kernel/SALOME_Embedded_NamingService_ClientPy.py +59 -0
  180. salome/kernel/SALOME_Embedded_NamingService_idl.py +125 -0
  181. salome/kernel/SALOME_Exception_idl.py +75 -0
  182. salome/kernel/SALOME_ExternalServerLauncher_idl.py +199 -0
  183. salome/kernel/SALOME_GenericObj_idl.py +154 -0
  184. salome/kernel/SALOME_GlobalsImpl.py +38 -0
  185. salome/kernel/SALOME_Launcher_idl.py +327 -0
  186. salome/kernel/SALOME_Locker_idl.py +185 -0
  187. salome/kernel/SALOME_LogManager.py +103 -0
  188. salome/kernel/SALOME_LogManager_idl.py +348 -0
  189. salome/kernel/SALOME_Logger/__init__.py +13 -0
  190. salome/kernel/SALOME_Logger__POA/__init__.py +13 -0
  191. salome/kernel/SALOME_MPIObject_idl.py +100 -0
  192. salome/kernel/SALOME_ModuleCatalog/__init__.py +13 -0
  193. salome/kernel/SALOME_ModuleCatalog__POA/__init__.py +13 -0
  194. salome/kernel/SALOME_ModuleCatalog_idl.py +624 -0
  195. salome/kernel/SALOME_NamingServicePy.py +313 -0
  196. salome/kernel/SALOME_PACOExtension_idl.py +292 -0
  197. salome/kernel/SALOME_ParamPorts_idl.py +102 -0
  198. salome/kernel/SALOME_Parametric_idl.py +154 -0
  199. salome/kernel/SALOME_Ports_idl.py +347 -0
  200. salome/kernel/SALOME_PyNode.py +1557 -0
  201. salome/kernel/SALOME_PyNode_idl.py +387 -0
  202. salome/kernel/SALOME_Registry_idl.py +155 -0
  203. salome/kernel/SALOME_ResourcesManager_idl.py +215 -0
  204. salome/kernel/SALOME_SDS_idl.py +1181 -0
  205. salome/kernel/SALOME_Session_idl.py +214 -0
  206. salome/kernel/SALOME_TYPES/__init__.py +14 -0
  207. salome/kernel/SALOME_TYPES__POA/__init__.py +14 -0
  208. salome/kernel/SALOME_TestComponent_idl.py +121 -0
  209. salome/kernel/SALOME_TestModuleCatalog/__init__.py +13 -0
  210. salome/kernel/SALOME_TestModuleCatalog__POA/__init__.py +13 -0
  211. salome/kernel/SALOME_TestModuleCatalog_idl.py +194 -0
  212. salome/kernel/SALOME_Trace.py +96 -0
  213. salome/kernel/SALOME_Types_idl.py +81 -0
  214. salome/kernel/SALOME__POA/__init__.py +19 -0
  215. salome/kernel/SALOME_utilities.py +63 -0
  216. salome/kernel/SalomeSDSClt.py +552 -0
  217. salome/kernel/TestKiller.py +76 -0
  218. salome/kernel/Utils_Identity.py +93 -0
  219. salome/kernel/_ArgvKeeper.so +0 -0
  220. salome/kernel/_KernelBasis.so +0 -0
  221. salome/kernel/_KernelContainer.so +0 -0
  222. salome/kernel/_KernelDS.so +0 -0
  223. salome/kernel/_KernelLauncher.so +0 -0
  224. salome/kernel/_KernelLogger.so +0 -0
  225. salome/kernel/_KernelModuleCatalog.so +0 -0
  226. salome/kernel/_KernelSDS.so +0 -0
  227. salome/kernel/_KernelServices.so +0 -0
  228. salome/kernel/_NamingService.so +0 -0
  229. salome/kernel/_calcium.so +0 -0
  230. salome/kernel/_libNOTIFICATION.so +0 -0
  231. salome/kernel/_libSALOME_Comm.so +0 -0
  232. salome/kernel/_libSALOME_LifeCycleCORBA.so +0 -0
  233. salome/kernel/_pylauncher.so +0 -0
  234. salome/kernel/addToKillList_impl.py +127 -0
  235. salome/kernel/batchmode_salome.py +295 -0
  236. salome/kernel/calcium.py +866 -0
  237. salome/kernel/dsccalcium.py +98 -0
  238. salome/kernel/iparameters.py +255 -0
  239. salome/kernel/kernel_test.py +114 -0
  240. salome/kernel/killSalomeWithPort_impl.py +518 -0
  241. salome/kernel/killSalome_impl.py +94 -0
  242. salome/kernel/launchConfigureParser.py +1234 -0
  243. salome/kernel/launcher_proxy.py +122 -0
  244. salome/kernel/libNOTIFICATION.py +119 -0
  245. salome/kernel/libSALOME_Comm.py +85 -0
  246. salome/kernel/libSALOME_LifeCycleCORBA.py +232 -0
  247. salome/kernel/main.py +8 -0
  248. salome/kernel/nameserver.py +134 -0
  249. salome/kernel/nstest_idl.py +129 -0
  250. salome/kernel/omnipatch.py +136 -0
  251. salome/kernel/orbmodule.py +246 -0
  252. salome/kernel/parseConfigFile.py +261 -0
  253. salome/kernel/pylauncher.py +883 -0
  254. salome/kernel/runConsole_impl.py +224 -0
  255. salome/kernel/runSalomeCommon.py +418 -0
  256. salome/kernel/runSalomeNoServer_impl.py +48 -0
  257. salome/kernel/runSalomeOld_impl.py +603 -0
  258. salome/kernel/runSalomeOnDemand_impl.py +72 -0
  259. salome/kernel/runSalome_impl.py +341 -0
  260. salome/kernel/runSession.py +360 -0
  261. salome/kernel/runTests.py +90 -0
  262. salome/kernel/salome/__init__.py +648 -0
  263. salome/kernel/salome/kernel/__init__.py +111 -0
  264. salome/kernel/salome/kernel/datamodeler.py +363 -0
  265. salome/kernel/salome/kernel/deprecation.py +165 -0
  266. salome/kernel/salome/kernel/diclookup.py +137 -0
  267. salome/kernel/salome/kernel/enumerate.py +232 -0
  268. salome/kernel/salome/kernel/logconfig.py +27 -0
  269. salome/kernel/salome/kernel/logger.py +290 -0
  270. salome/kernel/salome/kernel/parametric/__init__.py +26 -0
  271. salome/kernel/salome/kernel/parametric/compo_utils.py +137 -0
  272. salome/kernel/salome/kernel/parametric/pyscript_utils.py +135 -0
  273. salome/kernel/salome/kernel/parametric/study_exchange_vars.py +285 -0
  274. salome/kernel/salome/kernel/pyunittester.py +184 -0
  275. salome/kernel/salome/kernel/services.py +267 -0
  276. salome/kernel/salome/kernel/studyedit.py +637 -0
  277. salome/kernel/salome/kernel/syshelper.py +116 -0
  278. salome/kernel/salome/kernel/termcolor.py +239 -0
  279. salome/kernel/salome/kernel/testdata.py +159 -0
  280. salome/kernel/salome/kernel/threadhelper.py +385 -0
  281. salome/kernel/salome/kernel/uiexception.py +121 -0
  282. salome/kernel/salome/kernel/unittester.py +89 -0
  283. salome/kernel/salomeContextUtils.py +353 -0
  284. salome/kernel/salomeContext_impl.py +731 -0
  285. salome/kernel/salome_ComponentGUI.py +92 -0
  286. salome/kernel/salome_genericobj.py +44 -0
  287. salome/kernel/salome_iapp.py +206 -0
  288. salome/kernel/salome_instance_impl.py +109 -0
  289. salome/kernel/salome_kernel_utils.py +88 -0
  290. salome/kernel/salome_notebook.py +183 -0
  291. salome/kernel/salome_psutil.py +94 -0
  292. salome/kernel/salome_pynode.py +74 -0
  293. salome/kernel/salome_study.py +347 -0
  294. salome/kernel/salome_test.py +56 -0
  295. salome/kernel/salome_utils.py +563 -0
  296. salome/kernel/salome_version.py +164 -0
  297. salome/kernel/searchFreePort.py +130 -0
  298. salome/kernel/server.py +154 -0
  299. salome/kernel/setenv_impl.py +240 -0
  300. salome/kernel/share/salome/resources/kernel/Anita semi square.ttf +0 -0
  301. salome/kernel/share/salome/resources/kernel/CatalogModulePersonnel.xml_skel +24 -0
  302. salome/kernel/share/salome/resources/kernel/CatalogResources.xml +4 -0
  303. salome/kernel/share/salome/resources/kernel/KERNELCatalog.xml +102 -0
  304. salome/kernel/share/salome/resources/kernel/SALOMEDS_Resources +10 -0
  305. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_LAN.py +19 -0
  306. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_MPICH.py +18 -0
  307. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_OPENMPI.py +21 -0
  308. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_NO_MPI.py +25 -0
  309. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_REMOTE.py +108 -0
  310. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_REMOTE_OLD.py +115 -0
  311. salome/kernel/share/salome/resources/kernel/ScriptsTemplate/script_parameters.py +25 -0
  312. salome/kernel/share/salome/resources/kernel/app-template/CMakeLists.txt +125 -0
  313. salome/kernel/share/salome/resources/kernel/app-template/LICENCE +504 -0
  314. salome/kernel/share/salome/resources/kernel/app-template/README +0 -0
  315. salome/kernel/share/salome/resources/kernel/app-template/doc/CMakeLists.txt +31 -0
  316. salome/kernel/share/salome/resources/kernel/app-template/doc/README +1 -0
  317. salome/kernel/share/salome/resources/kernel/app-template/doc/conf.py.in +197 -0
  318. salome/kernel/share/salome/resources/kernel/app-template/doc/index.rst +14 -0
  319. salome/kernel/share/salome/resources/kernel/app-template/doc/intro.rst +4 -0
  320. salome/kernel/share/salome/resources/kernel/app-template/doc/link.rst +4 -0
  321. salome/kernel/share/salome/resources/kernel/app-template/resources/CMakeLists.txt +36 -0
  322. salome/kernel/share/salome/resources/kernel/app-template/resources/SalomeApp.xml.in +30 -0
  323. salome/kernel/share/salome/resources/kernel/app-template/resources/about.png +0 -0
  324. salome/kernel/share/salome/resources/kernel/app-template/resources/app_icon.png +0 -0
  325. salome/kernel/share/salome/resources/kernel/app-template/resources/app_logo.png +0 -0
  326. salome/kernel/share/salome/resources/kernel/app-template/resources/doc/CMakeLists.txt +27 -0
  327. salome/kernel/share/salome/resources/kernel/app-template/resources/doc/README +1 -0
  328. salome/kernel/share/salome/resources/kernel/app-template/resources/doc/sample.pdf +0 -0
  329. salome/kernel/share/salome/resources/kernel/app-template/resources/icon_about.png +0 -0
  330. salome/kernel/share/salome/resources/kernel/app-template/resources/splash.png +0 -0
  331. salome/kernel/share/salome/resources/kernel/app-template/src/CMakeLists.txt +22 -0
  332. salome/kernel/share/salome/resources/kernel/app-template/src/resources/CMakeLists.txt +34 -0
  333. salome/kernel/share/salome/resources/kernel/app-template/src/resources/LightApp_images.ts +23 -0
  334. salome/kernel/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_en.ts +35 -0
  335. salome/kernel/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_fr.ts +35 -0
  336. salome/kernel/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_ja.ts +35 -0
  337. salome/kernel/share/salome/resources/kernel/app-template/src/tests/CMakeLists.txt +29 -0
  338. salome/kernel/share/salome/resources/kernel/app-template/src/tests/README +1 -0
  339. salome/kernel/share/salome/resources/kernel/app-template/src/tests/helloWorld.py +1 -0
  340. salome/kernel/share/salome/resources/kernel/background.png +0 -0
  341. salome/kernel/share/salome/resources/kernel/channel.cfg +278 -0
  342. salome/kernel/share/salome/resources/kernel/testLauncher.xml +10 -0
  343. salome/kernel/version_and_config.py +24 -0
  344. salome/share/salome/resources/kernel/Anita semi square.ttf +0 -0
  345. salome/share/salome/resources/kernel/CatalogModulePersonnel.xml_skel +24 -0
  346. salome/share/salome/resources/kernel/CatalogResources.xml +4 -0
  347. salome/share/salome/resources/kernel/KERNELCatalog.xml +102 -0
  348. salome/share/salome/resources/kernel/SALOMEDS_Resources +10 -0
  349. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_LAN.py +19 -0
  350. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_MPICH.py +18 -0
  351. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_OPENMPI.py +21 -0
  352. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_NO_MPI.py +25 -0
  353. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_REMOTE.py +108 -0
  354. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_REMOTE_OLD.py +115 -0
  355. salome/share/salome/resources/kernel/ScriptsTemplate/script_parameters.py +25 -0
  356. salome/share/salome/resources/kernel/app-template/CMakeLists.txt +125 -0
  357. salome/share/salome/resources/kernel/app-template/LICENCE +504 -0
  358. salome/share/salome/resources/kernel/app-template/README +0 -0
  359. salome/share/salome/resources/kernel/app-template/doc/CMakeLists.txt +31 -0
  360. salome/share/salome/resources/kernel/app-template/doc/README +1 -0
  361. salome/share/salome/resources/kernel/app-template/doc/conf.py.in +197 -0
  362. salome/share/salome/resources/kernel/app-template/doc/index.rst +14 -0
  363. salome/share/salome/resources/kernel/app-template/doc/intro.rst +4 -0
  364. salome/share/salome/resources/kernel/app-template/doc/link.rst +4 -0
  365. salome/share/salome/resources/kernel/app-template/resources/CMakeLists.txt +36 -0
  366. salome/share/salome/resources/kernel/app-template/resources/SalomeApp.xml.in +30 -0
  367. salome/share/salome/resources/kernel/app-template/resources/about.png +0 -0
  368. salome/share/salome/resources/kernel/app-template/resources/app_icon.png +0 -0
  369. salome/share/salome/resources/kernel/app-template/resources/app_logo.png +0 -0
  370. salome/share/salome/resources/kernel/app-template/resources/doc/CMakeLists.txt +27 -0
  371. salome/share/salome/resources/kernel/app-template/resources/doc/README +1 -0
  372. salome/share/salome/resources/kernel/app-template/resources/doc/sample.pdf +0 -0
  373. salome/share/salome/resources/kernel/app-template/resources/icon_about.png +0 -0
  374. salome/share/salome/resources/kernel/app-template/resources/splash.png +0 -0
  375. salome/share/salome/resources/kernel/app-template/src/CMakeLists.txt +22 -0
  376. salome/share/salome/resources/kernel/app-template/src/resources/CMakeLists.txt +34 -0
  377. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_images.ts +23 -0
  378. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_en.ts +35 -0
  379. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_fr.ts +35 -0
  380. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_ja.ts +35 -0
  381. salome/share/salome/resources/kernel/app-template/src/tests/CMakeLists.txt +29 -0
  382. salome/share/salome/resources/kernel/app-template/src/tests/README +1 -0
  383. salome/share/salome/resources/kernel/app-template/src/tests/helloWorld.py +1 -0
  384. salome/share/salome/resources/kernel/background.png +0 -0
  385. salome/share/salome/resources/kernel/channel.cfg +278 -0
  386. salome/share/salome/resources/kernel/testLauncher.xml +10 -0
  387. salome_kernel-9.14.0.post3.dist-info/METADATA +25 -0
  388. salome_kernel-9.14.0.post3.dist-info/RECORD +443 -0
  389. salome_kernel-9.14.0.post3.dist-info/WHEEL +6 -0
  390. salome_kernel-9.14.0.post3.dist-info/entry_points.txt +2 -0
  391. salome_kernel-9.14.0.post3.dist-info/sboms/auditwheel.cdx.json +1 -0
  392. salome_kernel.libs/libArgvKeeper-822351d5.so +0 -0
  393. salome_kernel.libs/libCOS4-b4544fb9.so.2.5 +0 -0
  394. salome_kernel.libs/libCOSDynamic4-618dbb1d.so.2.5 +0 -0
  395. salome_kernel.libs/libCalciumC-1aac12fd.so +0 -0
  396. salome_kernel.libs/libDF-281cc999.so +0 -0
  397. salome_kernel.libs/libLauncher-d5172385.so +0 -0
  398. salome_kernel.libs/libLauncherWrapHelper-b990b914.so +0 -0
  399. salome_kernel.libs/libOpUtil-b4b3b9b6.so +0 -0
  400. salome_kernel.libs/libRegistry-e24daafb.so +0 -0
  401. salome_kernel.libs/libResourcesManager-f4ef9548.so +0 -0
  402. salome_kernel.libs/libSALOMEBasics-f4d874ac.so +0 -0
  403. salome_kernel.libs/libSALOMELocalTrace-a3992e5b.so +0 -0
  404. salome_kernel.libs/libSALOMELog-55805468.so +0 -0
  405. salome_kernel.libs/libSalomeCalcium-04a9dc03.so +0 -0
  406. salome_kernel.libs/libSalomeCatalog-a58dcc67.so +0 -0
  407. salome_kernel.libs/libSalomeCommunication-6013ebb8.so +0 -0
  408. salome_kernel.libs/libSalomeContainer-d266bf26.so +0 -0
  409. salome_kernel.libs/libSalomeContainerServer-3bf78497.so +0 -0
  410. salome_kernel.libs/libSalomeDS-09d10dd2.so +0 -0
  411. salome_kernel.libs/libSalomeDSCContainer-38c5ee31.so +0 -0
  412. salome_kernel.libs/libSalomeDSCSuperv-4106fd50.so +0 -0
  413. salome_kernel.libs/libSalomeDSCSupervBasic-d465171a.so +0 -0
  414. salome_kernel.libs/libSalomeDSClient-cfd124a5.so +0 -0
  415. salome_kernel.libs/libSalomeDSImpl-d14f88fc.so +0 -0
  416. salome_kernel.libs/libSalomeDatastream-450015c8.so +0 -0
  417. salome_kernel.libs/libSalomeGenericObj-2571fdbd.so +0 -0
  418. salome_kernel.libs/libSalomeHDFPersist-e16c7867.so +0 -0
  419. salome_kernel.libs/libSalomeIDLKernel-2eb1ed8e.so +0 -0
  420. salome_kernel.libs/libSalomeKernelHelpers-2ef9cb99.so +0 -0
  421. salome_kernel.libs/libSalomeLauncher-4cdc15f2.so +0 -0
  422. salome_kernel.libs/libSalomeLifeCycleCORBA-c446a5ee.so +0 -0
  423. salome_kernel.libs/libSalomeLoggerServer-bb9e76be.so +0 -0
  424. salome_kernel.libs/libSalomeNS-d87194d5.so +0 -0
  425. salome_kernel.libs/libSalomeNotification-83bfb2ff.so +0 -0
  426. salome_kernel.libs/libSalomeORB-07883efb.so +0 -0
  427. salome_kernel.libs/libSalomePalm-f0296bca.so +0 -0
  428. salome_kernel.libs/libSalomeResourcesManager-5a7077a0.so +0 -0
  429. salome_kernel.libs/libSalomeSDS-fd9bcce1.so +0 -0
  430. salome_kernel.libs/libSalomeTestComponentEngine-432d7922.so +0 -0
  431. salome_kernel.libs/libTOOLSDS-82342bb4.so +0 -0
  432. salome_kernel.libs/libbatch-779d48ee.so +0 -0
  433. salome_kernel.libs/libboost_atomic-489c2d94.so.1.81.0 +0 -0
  434. salome_kernel.libs/libboost_filesystem-e610b554.so.1.81.0 +0 -0
  435. salome_kernel.libs/libboost_system-4a7650ea.so.1.81.0 +0 -0
  436. salome_kernel.libs/libcppunit-1-17e77af1.12.so.1.0.0 +0 -0
  437. salome_kernel.libs/libhdf5-42ab48a9.so.103.0.0 +0 -0
  438. salome_kernel.libs/liblzma-004595ca.so.5.2.2 +0 -0
  439. salome_kernel.libs/libomniDynamic4-9edc765d.so.2.5 +0 -0
  440. salome_kernel.libs/libomniORB4-4725824d.so.2.5 +0 -0
  441. salome_kernel.libs/libomnithread-99f9d0d3.so.4.1 +0 -0
  442. salome_kernel.libs/libwith_loggerTraceCollector-6341a194.so +0 -0
  443. salome_kernel.libs/libwith_loggerTraceCollector.so +0 -0
  444. salome_kernel.libs/libxml2-3998bec4.so.2.9.1 +0 -0
@@ -0,0 +1,648 @@
1
+ # -*- coding: iso-8859-1 -*-
2
+ # Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE
3
+ #
4
+ # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
5
+ # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6
+ #
7
+ # This library is free software; you can redistribute it and/or
8
+ # modify it under the terms of the GNU Lesser General Public
9
+ # License as published by the Free Software Foundation; either
10
+ # version 2.1 of the License, or (at your option) any later version.
11
+ #
12
+ # This library is distributed in the hope that it will be useful,
13
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ # Lesser General Public License for more details.
16
+ #
17
+ # You should have received a copy of the GNU Lesser General Public
18
+ # License along with this library; if not, write to the Free Software
19
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20
+ #
21
+ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22
+ #
23
+
24
+ # File : salome.py renamed as __init__.py for python packaging (gboulant)
25
+ # Author : Paul RASCLE, EDF
26
+ # Module : SALOME
27
+ #
28
+ """
29
+ Module salome gives access to Salome resources.
30
+
31
+ variables:
32
+
33
+ - salome.orb : CORBA
34
+ - salome.naming_service : instance of naming Service class
35
+ - methods:
36
+ - Resolve(name) : find a CORBA object (ior) by its pathname
37
+ - Register(name) : register a CORBA object under a pathname
38
+
39
+ - salome.lcc : instance of lifeCycleCORBA class
40
+ - methods:
41
+ - FindOrLoadComponent(server,name) :
42
+ obtain an Engine (CORBA object)
43
+ or launch the Engine if not found,
44
+ with a Server name and an Engine name
45
+
46
+ - salome.sg : salome object to communicate with the graphical user interface (if any)
47
+ - methods:
48
+ - updateObjBrowser():
49
+
50
+ - SelectedCount(): returns number of selected objects
51
+ - getSelected(i): returns entry of selected object number i
52
+ - getAllSelected(): returns list of entry of selected objects
53
+ - AddIObject(Entry): select an existing Interactive object
54
+ - RemoveIObject(Entry): remove object from selection
55
+ - ClearIObjects(): clear selection
56
+
57
+ - Display(*Entry):
58
+ - DisplayOnly(Entry):
59
+ - Erase(Entry):
60
+ - DisplayAll():
61
+ - EraseAll():
62
+
63
+ - IDToObject(Entry): returns CORBA reference from entry
64
+
65
+ - salome.myStudyName : active Study Name
66
+ - salome.myStudy : the active Study itself (CORBA ior)
67
+ - methods : defined in SALOMEDS.idl
68
+
69
+ """
70
+ ## @package salome
71
+ # Module salome gives access to Salome resources.
72
+ #
73
+ # \param salome.orb : CORBA orb object
74
+ # \param salome.naming_service : instance of naming Service class (SALOME_NamingServicePy::SALOME_NamingServicePy_i)
75
+ # \param salome.lcc : instance of lifeCycleCORBA class (SALOME_LifeCycleCORBA)
76
+ # \param salome.sg : Salome object to communicate with the graphical user interface, if running (see interface in salome_iapp::SalomeOutsideGUI)
77
+ # \param salome.myStudyName : active Study Name
78
+ # \param salome.myStudy : the active Study (interface SALOMEDS::Study)
79
+
80
+ #
81
+ # ==========================================================================
82
+ #
83
+ # The function extend_path is used here to aggregate in a single
84
+ # virtual python package all the python sub-packages embedded in each
85
+ # SALOME modules (python "namespace" pattern).
86
+ #
87
+ ROOT_PYTHONPACKAGE_NAME="salome"
88
+ #
89
+ # This root package name is expected to be found as a directory in
90
+ # some paths of the sys.path variable, especially the paths
91
+ # <MODULE_ROOT_DIR>/lib/pythonX.Y/site-packages/salome where are
92
+ # installed the python files. These paths are theorically appended by
93
+ # the SALOME main runner and should be in the sys.path at this point
94
+ # of the application. The extend_path is looking then for directories
95
+ # of the type:
96
+ #
97
+ # <MODULE_ROOT_DIR>/lib/pythonX.Y/site-packages/salome/<ROOT_PYTHONPACKAGE_NAME>
98
+ #
99
+ # And append them to the sys.path. These directories are supposed to
100
+ # be the pieces to be aggregated as a single virtual python package.
101
+ #
102
+ import os, sys
103
+ from salome.kernel.salome_utils import verbose
104
+ from salome.kernel import version_and_config
105
+ from pathlib import Path
106
+
107
+ __version__ = version_and_config.version
108
+
109
+ __config_datetime__ = version_and_config.config_datetime
110
+
111
+ del version_and_config
112
+
113
+ MATCH_ENDING_PATTERN="site-packages" + os.path.sep + "salome"
114
+
115
+ def extend_path(pname):
116
+ for dir in sys.path:
117
+ if not isinstance(dir, str) or not os.path.isdir(dir) or not dir.endswith(MATCH_ENDING_PATTERN):
118
+ continue
119
+ subdir = os.path.join(dir, pname)
120
+ # XXX This may still add duplicate entries to path on
121
+ # case-insensitive filesystems
122
+ if os.path.isdir(subdir) and subdir not in __path__:
123
+ if verbose(): print("INFO - The directory %s is appended to sys.path" % subdir)
124
+ __path__.append(subdir)
125
+
126
+ extend_path(ROOT_PYTHONPACKAGE_NAME)
127
+
128
+ # ==========================================================================
129
+ # the wheel should not require any environment variables to be set
130
+
131
+ # set KERNEL_ROOT_DIR to the root dir of the salome.kernel module, where we copied the /share directory
132
+ os.environ.setdefault("KERNEL_ROOT_DIR", str(Path(__file__).parents[1]))
133
+
134
+ # same for PATH, we copied the /bin directory to the root dir of salome.kernel
135
+ os.environ["PATH"] += ":" + str(Path(__file__).parents[1] / "bin" / "salome")
136
+
137
+ # for salomeContext module
138
+ sys.path.append(str(Path(__file__).parents[1] / "bin" / "salome"))
139
+
140
+ os.environ.setdefault("APPLI", str(Path(__file__).parents[2] / "bin" / "salome" / "appli" / "salome"))
141
+ # ==========================================================================
142
+ #
143
+
144
+ from salome.kernel.salome_kernel_utils import *
145
+ from salome.kernel.salome_study import *
146
+ from salome.kernel.salome_iapp import *
147
+
148
+ orb, lcc, naming_service, cm, sg, esm, dsm, logm, modulcat, rm, lm = None,None,None,None,None,None,None,None,None,None,None
149
+ myStudy, myStudyName = None,None
150
+
151
+ salome_initial=True
152
+
153
+ def standalone():
154
+ pass
155
+
156
+ def withServers():
157
+ from .. import KernelBasis
158
+ KernelBasis.setSSLMode(False)
159
+
160
+ def salome_init(path=None, embedded=False, iorfakensfile=None, forced=False):
161
+ """
162
+ Initialize SALOME client process (that can also be server).
163
+ 3 modes of initialization exists:
164
+ - SSL mode (see salome_init_without_session)
165
+ - SSL mode attached in the context of python execution inside SALOME_Container_No_NS_Serv server (typically YACS)
166
+ - Classical mode (see salome_init_with_session)
167
+ :param iorfakensfile: filename inside which IOR of fake NS will be written
168
+ :param forced: tell if the multi-initialization protection mecanism of salome_init must be skiped of not
169
+ (typically in the context where a path to a study is given whereas a previous initialisation without it was done)
170
+ """
171
+ if not forced:
172
+ if lcc is not None:# multi-initialization protection mecanism is based on lcc global var
173
+ return
174
+ PATH_TO_STUDY_FILE_TO_INITIATE = "PATH_TO_STUDY_FILE_TO_INITIATE"
175
+ from .. import KernelBasis
176
+ if KernelBasis.getSSLMode():
177
+ if KernelBasis.getIOROfEmbeddedNS() == "":
178
+ import os
179
+ # make runSalome.py -t study.hdf toto.py
180
+ if path is None and PATH_TO_STUDY_FILE_TO_INITIATE in os.environ:
181
+ path = os.environ[PATH_TO_STUDY_FILE_TO_INITIATE]
182
+ salome_init_without_session(path, embedded, iorfakensfile)
183
+ else:
184
+ salome_init_without_session_attached(path, embedded)
185
+ else:
186
+ salome_init_with_session(path, embedded)
187
+
188
+ def salome_init_without_session_common(path=None, embedded=False):
189
+ from ..ORBConfigFile_impl import writeORBConfigFileSSL
190
+ OMNIORB_USER_PATH = "OMNIORB_USER_PATH"
191
+ def RemoveOmniorbConfigFile():
192
+ import os
193
+ if "OMNIORB_CONFIG" in os.environ:
194
+ fileToRemove = os.environ["OMNIORB_CONFIG"]
195
+ if os.path.exists(fileToRemove):
196
+ os.unlink(fileToRemove)
197
+
198
+ if OMNIORB_USER_PATH in os.environ:
199
+ import atexit
200
+ writeORBConfigFileSSL(os.environ[OMNIORB_USER_PATH],kwargs={"with_pid":True})
201
+ atexit.register(RemoveOmniorbConfigFile)
202
+
203
+ global lcc,naming_service,myStudy,myStudyName,orb,modulcat,sg
204
+ from .. import KernelBasis
205
+ KernelBasis.setSSLMode(True)
206
+ from .. import KernelDS
207
+ myStudy = KernelDS.myStudy()
208
+ import CORBA
209
+ orb=CORBA.ORB_init([''])
210
+ from .. import KernelModuleCatalog
211
+ from .. import SALOME_ModuleCatalog
212
+ from ..salome_kernel_utils import list_of_catalogs_regarding_environement
213
+ modulcat = KernelModuleCatalog.myModuleCatalog( list_of_catalogs_regarding_environement() )
214
+ #
215
+ poa = orb.resolve_initial_references("RootPOA")
216
+ poaManager = poa._get_the_POAManager()
217
+ poaManager.activate()
218
+ #
219
+ sg = salome_iapp_init(embedded)
220
+ salome_study_init_without_session(path)
221
+ #
222
+ from ..NamingService import NamingService
223
+ naming_service = NamingService()
224
+ myStudyName = myStudy.Name
225
+
226
+ def salome_init_without_session(path=None, embedded=False, iorfakensfile=None):
227
+ """
228
+ Force creation of all servants needed by SALOME session in the current process.
229
+ A Fake NamingService is created storing reference of all servants in the current process.
230
+ """
231
+ salome_init_without_session_common(path,embedded)
232
+ global lcc,cm,dsm,esm,rm,logm,lm
233
+ from .. import KernelLauncher
234
+ cm = KernelLauncher.myContainerManager()
235
+ type(cm).SetOverrideEnvForContainersSimple = ContainerManagerSetOverrideEnvForContainersSimple
236
+ rm = KernelLauncher.myResourcesManager()
237
+ type(rm).GetResourceDefinition2 = ResourcesManagerGetResourceDefinition
238
+ from ..LifeCycleCORBA import LifeCycleCORBASSL
239
+ lcc = LifeCycleCORBASSL()
240
+ # create a FactoryServer Container servant
241
+ from .. import KernelContainer
242
+ KernelContainer.myContainer()
243
+ lm = KernelLauncher.myLockMaster()
244
+ # activate poaManager to accept co-localized CORBA calls.
245
+ from ..KernelSDS import GetDSMInstance
246
+ import sys
247
+ if hasattr(sys, 'argv'):
248
+ argv = sys.argv
249
+ else:
250
+ argv = ['']
251
+ dsm = GetDSMInstance(argv)
252
+ # esm inherits from SALOME_CPythonHelper singleton already initialized by GetDSMInstance
253
+ # esm inherits also from SALOME_ResourcesManager creation/initialization (concerning SingleThreadPOA POA) when KernelLauncher.GetContainerManager() has been called
254
+ esm = KernelLauncher.GetExternalServer()
255
+ # idem for logm
256
+ logm = KernelLauncher.myLogManager()
257
+ type(logm).NaiveFetch = LogManagerNaiveFetch
258
+ type(logm).Fetch = LogManagerFetch
259
+ type(logm).DumpInFile = LogManagerDumpInFile
260
+ type(logm).LaunchMonitoringDumpFile = LogManagerLaunchMonitoringDumpFile
261
+ type(logm).FinalFetchBeforeDying = LogManagerFinalFetchBeforeDying
262
+ type(logm).GetLatestMonitoringDumpFile = LogManagerGetLatestMonitoringDumpFile
263
+ type(logm).DumpIORInFile = LogManagerDumpIORInFile
264
+ #
265
+ from .. import KernelLogger
266
+ naming_service.Register(KernelLogger.myLogger(),"/Logger")
267
+ #
268
+ from ..NamingService import NamingService
269
+ if iorfakensfile is not None:
270
+ with open(iorfakensfile,"w") as iorfakensf:
271
+ iorfakensf.write(NamingService.IOROfNS())
272
+
273
+ CM_NAME_IN_NS = "/ContainerManager"
274
+ RM_NAME_IN_NS = "/ResourcesManager"
275
+ DSM_NAME_IN_NS = "/DataServerManager"
276
+ ESM_NAME_IN_NS = "/ExternalServers"
277
+ LOGM_NAME_IN_NS = "/LogManager"
278
+
279
+ def salome_init_without_session_attached(path=None, embedded=False):
280
+ """
281
+ Configuration SSL inside a python interpretor launched in the SALOME_Container_No_NS_Serv.
282
+ In this configuration, a local FakeNamingService is created and remote objects are stored in it.
283
+ lcc is pointing to the FakeNamingService above.
284
+ """
285
+ salome_init_without_session_common(path,embedded)
286
+ global lcc,cm,dsm,esm,rm,logm,lm
287
+ import CORBA
288
+ orb=CORBA.ORB_init([''])
289
+ from .. import Engines
290
+ from .. import KernelBasis
291
+ from .. import KernelLauncher
292
+ nsAbroad = orb.string_to_object( KernelBasis.getIOROfEmbeddedNS() )
293
+ from .. import SALOME
294
+ cm = orb.string_to_object( nsAbroad.Resolve(CM_NAME_IN_NS).decode() )
295
+ type(cm).SetOverrideEnvForContainersSimple = ContainerManagerSetOverrideEnvForContainersSimple
296
+ naming_service.Register(cm,CM_NAME_IN_NS)
297
+ rm = orb.string_to_object( nsAbroad.Resolve(RM_NAME_IN_NS).decode() )
298
+ type(rm).GetResourceDefinition2 = ResourcesManagerGetResourceDefinition
299
+ naming_service.Register(rm,RM_NAME_IN_NS)
300
+ #
301
+ from ..LifeCycleCORBA import LifeCycleCORBASSL
302
+ lcc = LifeCycleCORBASSL()
303
+ dsm = orb.string_to_object( nsAbroad.Resolve(DSM_NAME_IN_NS).decode() )
304
+ naming_service.Register(dsm,DSM_NAME_IN_NS)
305
+ #
306
+ esm = orb.string_to_object( nsAbroad.Resolve(ESM_NAME_IN_NS).decode() )
307
+ naming_service.Register(esm,ESM_NAME_IN_NS)
308
+ #
309
+ logm = orb.string_to_object( nsAbroad.Resolve(LOGM_NAME_IN_NS).decode() )
310
+ naming_service.Register(logm,LOGM_NAME_IN_NS)
311
+ #
312
+ lm = orb.string_to_object( nsAbroad.Resolve(KernelLauncher.GetLockMasterEntryInNS()).decode() )
313
+ naming_service.Register(lm,KernelLauncher.GetLockMasterEntryInNS())
314
+
315
+ def salome_init_with_session(path=None, embedded=False):
316
+ """
317
+ Performs only once SALOME general purpose initialisation for scripts.
318
+ Provides:
319
+ orb reference to CORBA
320
+ lcc a LifeCycleCorba instance
321
+ naming_service a naming service instance
322
+ cm reference to the container manager
323
+ esm reference to external server manager
324
+ dsm reference to shared dataserver manager
325
+ modulcat reference to modulecatalog instance
326
+ sg access to SALOME GUI (when linked with IAPP GUI)
327
+ myStudy active study itself (CORBA reference)
328
+ myStudyName active study name
329
+ """
330
+ global salome_initial
331
+ global orb, lcc, naming_service, cm, esm, dsm, modulcat
332
+ global sg
333
+ global myStudy, myStudyName
334
+ from salome.kernel import KernelBasis
335
+ KernelBasis.setSSLMode(False)
336
+ try:
337
+ if salome_initial:
338
+ salome_initial=False
339
+ sg = salome_iapp_init(embedded)
340
+ orb, lcc, naming_service, cm, esm, dsm, modulcat = salome_kernel_init()
341
+ type(cm).SetOverrideEnvForContainersSimple = ContainerManagerSetOverrideEnvForContainersSimple
342
+ myStudy, myStudyName = salome_study_init(path)
343
+ pass
344
+ pass
345
+ except RuntimeError as inst:
346
+ # wait a little to avoid trace mix
347
+ import time
348
+ time.sleep(0.2)
349
+ x = inst
350
+ print("salome.salome_init_with_session():", x)
351
+ print("""
352
+ ============================================
353
+ May be there is no running SALOME session
354
+ salome.salome_init() is intended to be used
355
+ within an already running session
356
+ ============================================
357
+ """)
358
+ raise
359
+
360
+ def salome_close():
361
+ global salome_initial, myStudy, myStudyName, lcc
362
+ try:
363
+ # study can be clear either from GUI or directly with salome.myStudy.Clear()
364
+ myStudy.Clear()
365
+ except Exception:
366
+ pass
367
+ salome_initial=True
368
+ salome_iapp_close()
369
+ salome_study_close()
370
+ myStudy, myStudyName = None, None
371
+ lcc = None # to salome_init to rebuild all in case of salome_init after salome_close
372
+ from .. import KernelBasis
373
+ if KernelBasis.getSSLMode() and not KernelBasis.getGUIMode():
374
+ from .. import KernelDS
375
+ KernelDS.KillGlobalSessionInstance()
376
+ from .. import KernelSDS
377
+ KernelSDS.KillCPythonHelper()
378
+ pass
379
+
380
+ def salome_NS():
381
+ import CORBA
382
+ import CosNaming
383
+ orb = CORBA.ORB_init()
384
+ ns0 = orb.resolve_initial_references("NameService")
385
+ return ns0._narrow(CosNaming.NamingContext)
386
+
387
+ def salome_walk_on_containers(ns,root):
388
+ import CosNaming
389
+ it = ns.list(0)[1]
390
+ if not it:
391
+ return
392
+ cont = True
393
+ while cont:
394
+ cont,obj = it.next_one()
395
+ if cont:
396
+ if obj.binding_name[0].kind == "object":
397
+ from .. import Engines
398
+ corbaObj = ns.resolve(obj.binding_name)
399
+ if isinstance(corbaObj,Engines._objref_Container):
400
+ yield corbaObj,(root,obj.binding_name[0].id)
401
+ else:
402
+ father = ns.resolve([obj.binding_name[0]])
403
+ for elt,elt2 in salome_walk_on_containers(father,root+[obj.binding_name[0].id]):
404
+ yield elt,elt2
405
+ pass
406
+ pass
407
+ pass
408
+
409
+ def salome_shutdown_containers_with_session():
410
+ salome_init()
411
+ ns=salome_NS()
412
+ li = [elt for elt in salome_walk_on_containers(ns,[""])]
413
+ print("Number of containers in NS : {}".format(len(li)))
414
+ for cont,(root,cont_name) in li:
415
+ try:
416
+ cont.Shutdown()
417
+ except Exception:
418
+ pass
419
+ ref_in_ns = "/".join(root+[cont_name])
420
+ naming_service.Destroy_Name(ref_in_ns)
421
+ print("Number of containers in NS after clean : {}".format( len( list(salome_walk_on_containers(ns,[""])) )))
422
+
423
+ def retrieve_containers_in_ns():
424
+ return [elt for elt in naming_service.repr() if "/Containers/" == elt[:12]]
425
+
426
+ def get_all_containers():
427
+ containersEntries = retrieve_containers_in_ns()
428
+ return [naming_service.Resolve(containerEntry) for containerEntry in containersEntries]
429
+
430
+ def salome_shutdown_containers_without_session():
431
+ for cont in get_all_containers():
432
+ try:
433
+ cont.Shutdown()
434
+ except:
435
+ pass
436
+
437
+ def salome_shutdown_containers():
438
+ from .. import KernelBasis
439
+ if KernelBasis.getSSLMode():
440
+ salome_shutdown_containers_without_session()
441
+ else:
442
+ salome_shutdown_containers_with_session()
443
+
444
+ class SessionContextManager:
445
+ def __enter__(self):
446
+ standalone()
447
+ salome_init()
448
+ def __exit__(self, type, value, traceback):
449
+ salome_close()
450
+
451
+ def ResourcesManagerGetResourceDefinition(self, machine):
452
+ """
453
+ Implementation pickle ready
454
+ """
455
+ ret = self.GetResourceDefinition( machine )
456
+ ret.__class__.__module__ = "salome.kernel.Engines"
457
+ return ret
458
+
459
+ def ContainerManagerSetOverrideEnvForContainersSimple(self,env):
460
+ from .. import Engines
461
+ envEff = [ Engines.KeyValPairString(key=k,val=v) for k,v in env ]
462
+ return self.SetOverrideEnvForContainers( envEff )
463
+
464
+ def LogManagerNaiveFetch(self):
465
+ """
466
+ Fetch data from server with multiple CORBA invokations.
467
+ """
468
+ from .. import SALOME_ContainerHelper
469
+ return [SALOME_ContainerHelper.ContainerLogInfoClt(elt) for elt in self.listOfContainerLogs()]
470
+
471
+ def LogManagerFetch(self,clearMemory = False):
472
+ """
473
+ Fetch data from server in one shot mode.
474
+ """
475
+ from ..SALOME_ContainerHelper import unserializeLogManager
476
+ return unserializeLogManager( self.getAllStruct(clearMemory) )
477
+
478
+ def LogManagerDumpInFile(self,fileName,clearMemory = False):
479
+ with open(fileName,"wb") as f:
480
+ f.write( self.getAllStruct( clearMemory ) )
481
+
482
+
483
+ class LogManagerLaunchMonitoringFileCtxMgr:
484
+ def __init__(self, intervalInMs, outFileName):
485
+ self._interval_in_ms = intervalInMs
486
+ self._out_filename = outFileName
487
+ self._monitoring_params = None
488
+ def __enter__(self):
489
+ from .. import salome
490
+ self._monitoring_params = salome.logm.LaunchMonitoringDumpFile(self._interval_in_ms, self._out_filename)
491
+ return self._monitoring_params
492
+ def __exit__(self,exctype, exc, tb):
493
+ from .. import SALOME_PyNode
494
+ from .. import salome
495
+ SALOME_PyNode.StopMonitoring( self._monitoring_params )
496
+ salome.logm.GetLatestMonitoringDumpFile()
497
+ pass
498
+
499
+ def LogManagerLaunchMonitoringDumpFile(self, intervalInMs, outFileName):
500
+ """
501
+ This method loops indefinitely every intervalInMs milliseconds to dump the singleton
502
+ content of perf log stored in salome.logm.
503
+ This method runs in a dedicated subprocess that can be killed at any time.
504
+ So subprocess code must deal with.
505
+
506
+ See also LogManagerGetLatestMonitoringDumpFile
507
+ """
508
+ global orb,logm
509
+ ior = orb.object_to_string( logm )
510
+ import os
511
+ outFileName2 = os.path.abspath( os.path.expanduser(outFileName) )
512
+ import tempfile
513
+ import logging
514
+ from .. import SALOME_PyNode
515
+ from .. import KernelBasis
516
+ # outFileNameSave stores the content of outFileName during phase of dumping
517
+ with tempfile.NamedTemporaryFile(prefix=os.path.basename(outFileName2),dir=os.path.dirname(outFileName2)) as f:
518
+ outFileNameSave = f.name
519
+ with tempfile.NamedTemporaryFile(prefix="htopmain_",suffix=".py") as f:
520
+ tempPyFile = f.name
521
+ with open(tempPyFile,"w") as f:
522
+ f.write("""from salome.kernel import Engines
523
+ import os
524
+ import shutil
525
+ import CORBA
526
+ import time
527
+ orb=CORBA.ORB_init([''], CORBA.ORB_ID)
528
+ logm = orb.string_to_object("{ior}")
529
+ outFileName = "{outFileName}"
530
+ outFileNameSave = "{outFileNameSave}"
531
+ logm.setFileNamePairOfLogger(outFileName, outFileNameSave )
532
+ from salome.kernel import salome
533
+ while(True):
534
+ if os.path.exists( outFileName ):
535
+ shutil.copy(outFileName,outFileNameSave)
536
+ logm.versionB_IsTheLatestValidVersion()
537
+ salome.LogManagerDumpInFile(logm,outFileName)
538
+ logm.versionA_IsTheLatestValidVersion()
539
+ time.sleep( {intervalInMs} / 1000.0 )
540
+ """.format( **locals()))
541
+ logging.debug( "File for monitoring dump file : {}".format(tempPyFile) )
542
+ pyFileName = SALOME_PyNode.FileDeleter( tempPyFile )
543
+ pid = KernelBasis.LaunchMonitoring( tempPyFile )
544
+ return SALOME_PyNode.MonitoringInfo(pyFileName,intervalInMs,None,pid)
545
+
546
+ def LogManagerDumpIORInFile(self, iorFileName):
547
+ global logm
548
+ with open(iorFileName,"w") as f:
549
+ f.write( orb.object_to_string( logm ) )
550
+
551
+ def LogManagerLoadFromFile(fileName):
552
+ from salome.kernel.SALOME_ContainerHelper import unserializeLogManager
553
+ with open(fileName,"rb") as f:
554
+ data = f.read()
555
+ return unserializeLogManager( data )
556
+
557
+ def LogManagerLoadFromIORFile( iorFile ):
558
+ global orb
559
+ def LoadAndWrite(logm,tempFileName):
560
+ from salome.kernel import SALOME_PyNode
561
+ logm.putStructInFileAtomic( False, tempFileName )
562
+ tempFileAuto = SALOME_PyNode.FileDeleter( tempFileName )
563
+ ret = LogManagerLoadFromFile( tempFileAuto.filename )
564
+ return ret
565
+ with open(iorFile,"r") as f:
566
+ ior = f.read()
567
+ from salome.kernel import Engines
568
+ import tempfile
569
+ salome_init_without_session()
570
+ logm = orb.string_to_object( ior )
571
+ with tempfile.NamedTemporaryFile(dir=os.path.expanduser("~")) as f:
572
+ tempFileName = f.name
573
+ return LoadAndWrite( logm, tempFileName )
574
+
575
+ def LogManagerFinalFetchBeforeDying(self):
576
+ import shutil
577
+ a,b = self.getFileNamePairOfLogger()
578
+ self.DumpInFile( b )
579
+ shutil.move( b, a)
580
+
581
+ def LogManagerGetLatestMonitoringDumpFile(self):
582
+ import shutil
583
+ import logging
584
+ a,b = self.getFileNamePairOfLogger()
585
+ if a=="" or b=="":
586
+ return ""
587
+ if a == b:
588
+ return a
589
+ lastVersion = self.getLastVersionOfFileNameLogger()
590
+ if lastVersion == a:
591
+ logging.debug("LogManagerGetLatestMonitoringDumpFile SITUATION A")
592
+ if os.path.exists( b ):
593
+ os.remove( b )
594
+ self.FinalFetchBeforeDying()
595
+ return a
596
+ if lastVersion == b:
597
+ logging.debug("LogManagerGetLatestMonitoringDumpFile SITUATION B")
598
+ if os.path.exists( b ):
599
+ shutil.move( b, a)
600
+ self.FinalFetchBeforeDying()
601
+ return a
602
+ logging.warning("in LogManagerGetLatestMonitoringDumpFile an unexpected situation araises.")
603
+ return ""
604
+
605
+ class Barrier:
606
+ def __init__(self, nbClients):
607
+ import CORBA
608
+ orb=CORBA.ORB_init([''])
609
+ self._ior = orb.object_to_string( lm.buildRendezVous( nbClients ) )
610
+ def barrier(self):
611
+ import CORBA
612
+ from .. import Engines
613
+ orb=CORBA.ORB_init([''])
614
+ rvPtr = orb.string_to_object( self._ior )
615
+ rvPtr.acquire()
616
+
617
+ class LockGuardCM:
618
+ def __init__(self, key):
619
+ if lm is None:
620
+ raise RuntimeError("SALOME has not been initialized !")
621
+ self._lock = lm.getLockerFor( key )
622
+ def __enter__(self):
623
+ self._lock.acquire()
624
+ def __exit__(self,exctype, exc, tb):
625
+ self._lock.release()
626
+
627
+ class ContainerLauncherCM:
628
+ def __init__(self, cp, aggressiveShutdown = False):
629
+ """
630
+ :param cp: Engines.ContainerParameters instance specifying the request where the container will be launched
631
+ :param aggressiveShutdown:
632
+ """
633
+ self._cp = cp
634
+ self.aggressiveShutdown = aggressiveShutdown
635
+ def __enter__(self):
636
+ self._cont = cm.GiveContainer(self._cp)
637
+ return self._cont
638
+ def __exit__(self,exctype, exc, tb):
639
+ if not self.aggressiveShutdown:
640
+ self._cont.Shutdown()
641
+ else:
642
+ try:# we are in aggressive situation the following call is not expected to return normally
643
+ self._cont.ShutdownNow()
644
+ except:
645
+ pass
646
+
647
+ #to expose all objects to pydoc
648
+ __all__ = dir()