salome.kernel 9.14.0__cp39-cp39-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.

Potentially problematic release.


This version of salome.kernel might be problematic. Click here for more details.

Files changed (400) 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 +39 -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 +646 -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/version_and_config.py +24 -0
  301. salome/share/salome/resources/kernel/Anita semi square.ttf +0 -0
  302. salome/share/salome/resources/kernel/CatalogModulePersonnel.xml_skel +24 -0
  303. salome/share/salome/resources/kernel/CatalogResources.xml +4 -0
  304. salome/share/salome/resources/kernel/KERNELCatalog.xml +102 -0
  305. salome/share/salome/resources/kernel/SALOMEDS_Resources +10 -0
  306. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_LAN.py +19 -0
  307. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_MPICH.py +18 -0
  308. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_MPI_OPENMPI.py +21 -0
  309. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_LOCAL_NO_MPI.py +25 -0
  310. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_REMOTE.py +108 -0
  311. salome/share/salome/resources/kernel/ScriptsTemplate/SALOME_CM_REMOTE_OLD.py +115 -0
  312. salome/share/salome/resources/kernel/ScriptsTemplate/script_parameters.py +25 -0
  313. salome/share/salome/resources/kernel/app-template/CMakeLists.txt +125 -0
  314. salome/share/salome/resources/kernel/app-template/LICENCE +504 -0
  315. salome/share/salome/resources/kernel/app-template/README +0 -0
  316. salome/share/salome/resources/kernel/app-template/doc/CMakeLists.txt +31 -0
  317. salome/share/salome/resources/kernel/app-template/doc/README +1 -0
  318. salome/share/salome/resources/kernel/app-template/doc/conf.py.in +197 -0
  319. salome/share/salome/resources/kernel/app-template/doc/index.rst +14 -0
  320. salome/share/salome/resources/kernel/app-template/doc/intro.rst +4 -0
  321. salome/share/salome/resources/kernel/app-template/doc/link.rst +4 -0
  322. salome/share/salome/resources/kernel/app-template/resources/CMakeLists.txt +36 -0
  323. salome/share/salome/resources/kernel/app-template/resources/SalomeApp.xml.in +30 -0
  324. salome/share/salome/resources/kernel/app-template/resources/about.png +0 -0
  325. salome/share/salome/resources/kernel/app-template/resources/app_icon.png +0 -0
  326. salome/share/salome/resources/kernel/app-template/resources/app_logo.png +0 -0
  327. salome/share/salome/resources/kernel/app-template/resources/doc/CMakeLists.txt +27 -0
  328. salome/share/salome/resources/kernel/app-template/resources/doc/README +1 -0
  329. salome/share/salome/resources/kernel/app-template/resources/doc/sample.pdf +0 -0
  330. salome/share/salome/resources/kernel/app-template/resources/icon_about.png +0 -0
  331. salome/share/salome/resources/kernel/app-template/resources/splash.png +0 -0
  332. salome/share/salome/resources/kernel/app-template/src/CMakeLists.txt +22 -0
  333. salome/share/salome/resources/kernel/app-template/src/resources/CMakeLists.txt +34 -0
  334. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_images.ts +23 -0
  335. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_en.ts +35 -0
  336. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_fr.ts +35 -0
  337. salome/share/salome/resources/kernel/app-template/src/resources/LightApp_msg_ja.ts +35 -0
  338. salome/share/salome/resources/kernel/app-template/src/tests/CMakeLists.txt +29 -0
  339. salome/share/salome/resources/kernel/app-template/src/tests/README +1 -0
  340. salome/share/salome/resources/kernel/app-template/src/tests/helloWorld.py +1 -0
  341. salome/share/salome/resources/kernel/background.png +0 -0
  342. salome/share/salome/resources/kernel/channel.cfg +278 -0
  343. salome/share/salome/resources/kernel/testLauncher.xml +10 -0
  344. salome.kernel-9.14.0.dist-info/METADATA +24 -0
  345. salome.kernel-9.14.0.dist-info/RECORD +399 -0
  346. salome.kernel-9.14.0.dist-info/WHEEL +6 -0
  347. salome.kernel-9.14.0.dist-info/entry_points.txt +2 -0
  348. salome.kernel.libs/libArgvKeeper-822351d5.so +0 -0
  349. salome.kernel.libs/libCOS4-b4544fb9.so.2.5 +0 -0
  350. salome.kernel.libs/libCOSDynamic4-618dbb1d.so.2.5 +0 -0
  351. salome.kernel.libs/libCalciumC-a61b99a1.so +0 -0
  352. salome.kernel.libs/libDF-281cc999.so +0 -0
  353. salome.kernel.libs/libLauncher-09c39914.so +0 -0
  354. salome.kernel.libs/libLauncherWrapHelper-5ee25ab2.so +0 -0
  355. salome.kernel.libs/libOpUtil-8d37ccc8.so +0 -0
  356. salome.kernel.libs/libRegistry-e4a63a9e.so +0 -0
  357. salome.kernel.libs/libResourcesManager-f4ef9548.so +0 -0
  358. salome.kernel.libs/libSALOMEBasics-f4d874ac.so +0 -0
  359. salome.kernel.libs/libSALOMELocalTrace-a3992e5b.so +0 -0
  360. salome.kernel.libs/libSALOMELog-55805468.so +0 -0
  361. salome.kernel.libs/libSalomeCalcium-6800d8d0.so +0 -0
  362. salome.kernel.libs/libSalomeCatalog-96c5b2bc.so +0 -0
  363. salome.kernel.libs/libSalomeCommunication-451307b4.so +0 -0
  364. salome.kernel.libs/libSalomeContainer-d4557377.so +0 -0
  365. salome.kernel.libs/libSalomeContainerServer-372d46c2.so +0 -0
  366. salome.kernel.libs/libSalomeDS-34cd5abf.so +0 -0
  367. salome.kernel.libs/libSalomeDSCContainer-ee0cf498.so +0 -0
  368. salome.kernel.libs/libSalomeDSCSuperv-f529bca5.so +0 -0
  369. salome.kernel.libs/libSalomeDSCSupervBasic-e6a3b4cf.so +0 -0
  370. salome.kernel.libs/libSalomeDSClient-dc9947bb.so +0 -0
  371. salome.kernel.libs/libSalomeDSImpl-cb508584.so +0 -0
  372. salome.kernel.libs/libSalomeDatastream-755ff3cb.so +0 -0
  373. salome.kernel.libs/libSalomeGenericObj-3ccf0028.so +0 -0
  374. salome.kernel.libs/libSalomeHDFPersist-69945ed0.so +0 -0
  375. salome.kernel.libs/libSalomeIDLKernel-2eb1ed8e.so +0 -0
  376. salome.kernel.libs/libSalomeKernelHelpers-1514c9e0.so +0 -0
  377. salome.kernel.libs/libSalomeLauncher-f5fc4b7e.so +0 -0
  378. salome.kernel.libs/libSalomeLifeCycleCORBA-69902a7b.so +0 -0
  379. salome.kernel.libs/libSalomeLoggerServer-3668e9ae.so +0 -0
  380. salome.kernel.libs/libSalomeNS-a03a7eba.so +0 -0
  381. salome.kernel.libs/libSalomeNotification-66efcfbd.so +0 -0
  382. salome.kernel.libs/libSalomeORB-f304f4df.so +0 -0
  383. salome.kernel.libs/libSalomePalm-4204405e.so +0 -0
  384. salome.kernel.libs/libSalomeResourcesManager-fd411949.so +0 -0
  385. salome.kernel.libs/libSalomeSDS-896ae3bb.so +0 -0
  386. salome.kernel.libs/libSalomeTestComponentEngine-9899af25.so +0 -0
  387. salome.kernel.libs/libTOOLSDS-db8e8629.so +0 -0
  388. salome.kernel.libs/libbatch-6b5b319f.so +0 -0
  389. salome.kernel.libs/libboost_atomic-489c2d94.so.1.81.0 +0 -0
  390. salome.kernel.libs/libboost_filesystem-e610b554.so.1.81.0 +0 -0
  391. salome.kernel.libs/libboost_system-4a7650ea.so.1.81.0 +0 -0
  392. salome.kernel.libs/libcppunit-1-17e77af1.12.so.1.0.0 +0 -0
  393. salome.kernel.libs/libhdf5-60e81d69.so.103.0.0 +0 -0
  394. salome.kernel.libs/liblzma-004595ca.so.5.2.2 +0 -0
  395. salome.kernel.libs/libomniDynamic4-9edc765d.so.2.5 +0 -0
  396. salome.kernel.libs/libomniORB4-4725824d.so.2.5 +0 -0
  397. salome.kernel.libs/libomnithread-99f9d0d3.so.4.1 +0 -0
  398. salome.kernel.libs/libwith_loggerTraceCollector-6b94c51b.so +0 -0
  399. salome.kernel.libs/libwith_loggerTraceCollector.so +0 -0
  400. salome.kernel.libs/libxml2-3998bec4.so.2.9.1 +0 -0
@@ -0,0 +1,183 @@
1
+ # -*- coding: iso-8859-1 -*-
2
+ # Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE
3
+ #
4
+ # This library is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU Lesser General Public
6
+ # License as published by the Free Software Foundation; either
7
+ # version 2.1 of the License, or (at your option) any later version.
8
+ #
9
+ # This library is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
+ # Lesser General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU Lesser General Public
15
+ # License along with this library; if not, write to the Free Software
16
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
+ #
18
+ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19
+ #
20
+
21
+ # File : salome_notebook.py
22
+ # Author : Roman NIKOLAEV, Open CASCADE S.A.S.
23
+ # Module : SALOME
24
+ # $Header:
25
+ #
26
+ """
27
+ Module salome_notebook gives access to Salome Notebook.
28
+ """
29
+
30
+ from salome.kernel import salome
31
+
32
+ class PseudoStudyForNoteBook:
33
+
34
+ def __init__(self, **kwargs):
35
+ self.kwargs = kwargs
36
+ pass
37
+
38
+ def GetVariableNames(self):
39
+ return list(self.kwargs.keys())
40
+
41
+ def IsVariable(self, variableName):
42
+ return variableName in self.kwargs
43
+
44
+ def IsReal(self, variableName):
45
+ val = self.kwargs[variableName]
46
+ try:
47
+ float(val)
48
+ return True
49
+ except Exception:
50
+ pass
51
+ return False
52
+
53
+ IsInteger = IsReal
54
+ IsBoolean = IsReal
55
+
56
+ def IsString(self, variableName):
57
+ return not self.IsReal(variableName)
58
+
59
+ def GetString(self, variableName):
60
+ return self.kwargs[variableName]
61
+
62
+ def GetReal(self, variableName):
63
+ return float(self.kwargs[variableName])
64
+
65
+ GetInteger = GetReal
66
+ GetBoolean = GetReal
67
+
68
+ pass
69
+
70
+ class NoteBook:
71
+
72
+ def __init__(self, theIsEnablePublish=True):
73
+ if theIsEnablePublish:
74
+ self.myStudy = salome.myStudy
75
+ else:
76
+ self.myStudy = PseudoStudyForNoteBook()
77
+
78
+ def set(self, variableName, variable):
79
+ """
80
+ Create (or modify) variable with name "variableName"
81
+ and value equal "theValue".
82
+ """
83
+ if isinstance(variable, float):
84
+ self.myStudy.SetReal(variableName, variable)
85
+
86
+ elif isinstance(variable, int):
87
+ self.myStudy.SetInteger(variableName, variable)
88
+
89
+ elif isinstance(variable, bool):
90
+ self.myStudy.SetBoolean(variableName, variable)
91
+
92
+ elif isinstance(variable, str):
93
+ self.myStudy.SetString(variableName, variable)
94
+
95
+ def get(self, variableName):
96
+ """
97
+ Return value of the variable with name "variableName".
98
+ """
99
+ aResult = None
100
+ if self.myStudy.IsVariable(variableName):
101
+
102
+ if self.myStudy.IsReal(variableName):
103
+ aResult = self.myStudy.GetReal(variableName)
104
+
105
+ elif self.myStudy.IsInteger(variableName):
106
+ aResult = self.myStudy.GetInteger(variableName)
107
+
108
+ elif self.myStudy.IsBoolean(variableName):
109
+ aResult = self.myStudy.GetBoolean(variableName)
110
+
111
+ elif self.myStudy.IsString(variableName):
112
+ aResult = self.myStudy.GetString(variableName)
113
+ aResult_orig = aResult
114
+ list_of_variables = self.myStudy.GetVariableNames()
115
+ list_of_variables.remove(variableName)
116
+ # --
117
+ # To avoid the smallest strings to be replaced first,
118
+ # the list is sorted by decreasing lengths
119
+ # --
120
+ list_of_variables.sort(key=str.__len__)
121
+ list_of_variables.reverse()
122
+ for name in list_of_variables:
123
+ if aResult.find(name) >= 0:
124
+ val = self.get(name)
125
+ aResult = aResult.replace(name, "%s" % (val))
126
+ pass
127
+ pass
128
+ try:
129
+ aResult = eval(aResult)
130
+ except Exception as e:
131
+ msg = str(e)
132
+ msg += "\n"
133
+ msg += "A problem occurs while parsing "
134
+ msg += "the variable %s " % (variableName.__repr__())
135
+ msg += "with value %s ..." % (aResult_orig.__repr__())
136
+ msg += "\n"
137
+ msg += "Please, check your notebook !"
138
+ raise Exception(msg)
139
+ pass
140
+
141
+ return aResult
142
+
143
+ def isVariable(self, variableName):
144
+ """
145
+ Return true if variable with name "variableName"
146
+ exists in the study, otherwise return false.
147
+ """
148
+ return self.myStudy.IsVariable(variableName)
149
+
150
+ def setAs(self, variableName, typ):
151
+ value = self.get(variableName)
152
+ value = float(typ(value))
153
+ self.myStudy.SetStringAsDouble(variableName, value)
154
+ return
155
+
156
+ def setAsReal(self, variableName):
157
+ self.setAs(variableName, float)
158
+ return
159
+
160
+ def setAsInteger(self, variableName):
161
+ self.setAs(variableName, int)
162
+ return
163
+
164
+ def setAsBool(self, variableName):
165
+ self.setAs(variableName, bool)
166
+ return
167
+
168
+ def check(self):
169
+ for variableName in self.myStudy.GetVariableNames():
170
+ self.get(variableName)
171
+ pass
172
+ return
173
+
174
+ pass
175
+
176
+
177
+ def checkThisNoteBook(**kwargs):
178
+ note_book = NoteBook(False)
179
+ note_book.check()
180
+ return
181
+
182
+
183
+ notebook = NoteBook()
@@ -0,0 +1,94 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE
3
+ #
4
+ # This library is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU Lesser General Public
6
+ # License as published by the Free Software Foundation; either
7
+ # version 2.1 of the License, or (at your option) any later version.
8
+ #
9
+ # This library is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
+ # Lesser General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU Lesser General Public
15
+ # License along with this library; if not, write to the Free Software
16
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
+ #
18
+ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19
+ #
20
+
21
+ '''
22
+ SALOME utilities for process management.
23
+ '''
24
+
25
+ import os
26
+ import psutil
27
+
28
+
29
+ def getNumberOfCPUCores(): # pragma pylint: disable=invalid-name
30
+ '''
31
+ Get number of CPU cores in the calculation node.
32
+ :return Number of cores
33
+ '''
34
+ return psutil.cpu_count(logical=True)
35
+
36
+
37
+ def loadOfCPUCores(script=None): # pragma pylint: disable=invalid-name
38
+ '''
39
+ Get a load of each CPU core in the calculation node.
40
+
41
+ A script to compute loads can be customized via `script` parameter.
42
+ In that case, the script must either set `cpu_loads` variable (which
43
+ should be of list type), or specify `getCPULoads()` function returning
44
+ list as result. In both cases, the list's size must be equal to the value
45
+ returning by method `getNumberOfCPUCores()`, and each value in this list
46
+ must be in range [0, 1], otherwise exception is raised.
47
+
48
+ If `script` is not specified, default implementation is used.
49
+
50
+ :param script Custom script to calculate loads
51
+ :return List that contains loads of each CPU core.
52
+ '''
53
+ if not script:
54
+ return [x/100 for x in psutil.cpu_percent(interval=None, percpu=True)]
55
+ cpu_loads, loc = None, {}
56
+ exec(script, globals(), loc) # pragma pylint: disable=exec-used
57
+ cpu_loads = loc['getCPULoads']() if 'getCPULoads' in loc else loc.get('cpu_loads')
58
+ if cpu_loads is None:
59
+ raise ValueError('Bad script. Specify `getCPULoads` function or `cpu_loads` variable')
60
+ if not isinstance(cpu_loads, (list, tuple)):
61
+ raise TypeError('Bad script. Result must be list or tuple.')
62
+ size = getNumberOfCPUCores()
63
+ if len(cpu_loads) != size:
64
+ raise ValueError('Bad script. Result is of incorrect length (must be {})'.format(size))
65
+ values = [i for i in cpu_loads if 0 <= i <= 1]
66
+ if len(values) != size:
67
+ raise ValueError('Bad script. Values are not in [0, 1] range')
68
+ return [i for i in cpu_loads]
69
+
70
+
71
+ def getTotalPhysicalMemory(): # pragma pylint: disable=invalid-name
72
+ '''
73
+ Get total physical memory of the calculation node.
74
+ :return Size of physical memory, in megabytes.
75
+ '''
76
+ return int(psutil.virtual_memory().total/1024/1024)
77
+
78
+
79
+ def getTotalPhysicalMemoryInUse(): # pragma pylint: disable=invalid-name
80
+ '''
81
+ Get used physical memory of the calculation node.
82
+ :return Size of used physical memory, in megabytes.
83
+ '''
84
+ return int(psutil.virtual_memory().used/1024/1024)
85
+
86
+
87
+ def getTotalPhysicalMemoryInUseByMe(): # pragma pylint: disable=invalid-name
88
+ '''
89
+ Get physical memory occupied by the current process.
90
+ :return Size of physical memory, used by current process, in megabytes.
91
+ '''
92
+ process = psutil.Process(os.getpid())
93
+ memory_in_mb = int(process.memory_info().rss/1024/1024)
94
+ return memory_in_mb
@@ -0,0 +1,74 @@
1
+ # Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE
2
+ #
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.
7
+ #
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.
12
+ #
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
16
+ #
17
+ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18
+ #
19
+
20
+ # File : salome_pynode.py
21
+ # Author : Christian CAREMOLI, EDF
22
+ # Module : SALOME
23
+ # $Header$
24
+ #
25
+ """
26
+ When imported this module adds to CORBA proxy (from PyNode type) automatic pickle and unpickle
27
+ of arguments and results when calling execute method. It also converts the SALOME exception into a standard python
28
+ exception
29
+ """
30
+ import omniORB
31
+ import pickle
32
+ from . import SALOME
33
+ from . import Engines
34
+
35
+ class SmartPyNode(Engines._objref_PyNode):
36
+ def __init__(self):
37
+ Engines._objref_PyNode.__init__(self)
38
+
39
+ def execute(self,functionName,*args,**kws):
40
+ try:
41
+ args=pickle.dumps((args,kws),-1)
42
+ results=Engines._objref_PyNode.execute(self,functionName,args)
43
+ x=pickle.loads(results)
44
+ return x
45
+ except SALOME.SALOME_Exception as e:
46
+ raise ValueError(e.details.text)
47
+
48
+ def __getattr__(self,name):
49
+ """ a trick to be able to call directly a remote method by its name : no need to use execute"""
50
+ if name[0]== '_':
51
+ raise AttributeError(name)
52
+ def afunc(*args,**kws):
53
+ return self.execute(name,*args,**kws)
54
+ return afunc
55
+
56
+ class SmartPyScriptNode(Engines._objref_PyScriptNode):
57
+ def __init__(self):
58
+ Engines._objref_PyScriptNode.__init__(self)
59
+
60
+ def execute(self,outargsname,*args,**kws):
61
+ #the tuple args are ignored
62
+ try:
63
+ args=pickle.dumps(((),kws),-1)
64
+ results=Engines._objref_PyScriptNode.execute(self,outargsname,args)
65
+ x=pickle.loads(results)
66
+ return x
67
+ except SALOME.SALOME_Exception as e:
68
+ raise ValueError(e.details.text)
69
+
70
+ #Register the new proxy for PyNode
71
+ omniORB.registerObjref(Engines._objref_PyNode._NP_RepositoryId, SmartPyNode)
72
+ #Register the new proxy for PyScriptNode
73
+ omniORB.registerObjref(Engines._objref_PyScriptNode._NP_RepositoryId, SmartPyScriptNode)
74
+
@@ -0,0 +1,347 @@
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_study.py
25
+ # Author : Paul RASCLE, EDF
26
+ # Module : SALOME
27
+ # $Header$
28
+ #
29
+ from . import salome_kernel_utils
30
+ from . import SALOMEDS
31
+ from . import salome_iapp
32
+ from .launchConfigureParser import verbose
33
+
34
+ myStudy = None
35
+ myStudyName = None
36
+
37
+ #--------------------------------------------------------------------------
38
+
39
+ def DumpComponent(SO, Builder,offset):
40
+ global myStudy
41
+ it = myStudy.NewChildIterator(SO)
42
+ while it.More():
43
+ CSO = it.Value()
44
+ a=offset*"--" + ">" + CSO.GetID()
45
+ find,AtName = Builder.FindAttribute(CSO, "AttributeName")
46
+ if find:
47
+ a=a+":"+AtName.Value()
48
+ find,AtIOR = Builder.FindAttribute(CSO, "AttributeIOR")
49
+ if find:
50
+ a=a+":"+AtIOR.Value()
51
+ find,RefSO = CSO.ReferencedObject()
52
+ if find:
53
+ a=a+":"+RefSO.GetID()
54
+ print(a)
55
+ DumpComponent(CSO, Builder,offset+2)
56
+ it.Next()
57
+
58
+ #--------------------------------------------------------------------------
59
+
60
+ def DumpStudy():
61
+ """
62
+ Dump a study, given the ior
63
+ """
64
+ global myStudy
65
+ itcomp = myStudy.NewComponentIterator()
66
+ Builder = myStudy.NewBuilder()
67
+ while itcomp.More():
68
+ SC = itcomp.Value()
69
+ name = SC.ComponentDataType()
70
+ print("-> ComponentDataType is " + name)
71
+ DumpComponent(SC,Builder, 1)
72
+ itcomp.Next()
73
+
74
+ #--------------------------------------------------------------------------
75
+
76
+ def IDToObject(id):
77
+ global myStudy
78
+ myObj = None
79
+ mySO = myStudy.FindObjectID(id);
80
+ if mySO is not None:
81
+ ok, anAttr = mySO.FindAttribute("AttributeIOR")
82
+ if ok:
83
+ AtIOR = anAttr._narrow(SALOMEDS.AttributeIOR)
84
+ if AtIOR.Value() != "":
85
+ myObj = orb.string_to_object(AtIOR.Value())
86
+ return myObj
87
+
88
+ def ObjectToSObject(obj):
89
+ global myStudy
90
+ mySO = None
91
+ if obj is not None:
92
+ ior = orb.object_to_string(obj)
93
+ if ior != "":
94
+ mySO = myStudy.FindObjectIOR(ior)
95
+ return mySO
96
+
97
+ def ObjectToID(obj):
98
+ mySO = ObjectToSObject(obj)
99
+ if mySO:
100
+ return mySO.GetID()
101
+ return ""
102
+
103
+ def IDToSObject(id):
104
+ global myStudy
105
+ mySO = myStudy.FindObjectID(id);
106
+ return mySO
107
+
108
+ #--------------------------------------------------------------------------
109
+
110
+ def generateName(prefix = None):
111
+ import random;
112
+ int = random.randint(1,1000);
113
+ if prefix is None:
114
+ return "Study" + str(int)
115
+ else :
116
+ return prefix + str(int)
117
+
118
+ #--------------------------------------------------------------------------
119
+
120
+ def PersistentPresentation(theSO, theWithID):
121
+ global myStudy
122
+ # put the sobject's content (with subchildren) to the string
123
+ aResult = ""
124
+ attrs = theSO.GetAllAttributes()
125
+ aLen = len(attrs)
126
+ anUncopied = 0
127
+ for a in range(0,aLen):
128
+ attr = attrs[a]
129
+ if isinstance(attr,SALOMEDS._objref_AttributeTreeNode):
130
+ anUncopied += 1
131
+ elif isinstance(attr,SALOMEDS._objref_AttributeTarget):
132
+ anUncopied += 1
133
+ elif isinstance(attr,SALOMEDS._objref_AttributeReal) or \
134
+ isinstance(attr,SALOMEDS._objref_AttributeInteger) or \
135
+ isinstance(attr,SALOMEDS._objref_AttributeName) or \
136
+ isinstance(attr,SALOMEDS._objref_AttributeComment) or \
137
+ isinstance(attr,SALOMEDS._objref_AttributePersistentRef) or \
138
+ isinstance(attr,SALOMEDS._objref_AttributeLocalID) or \
139
+ isinstance(attr,SALOMEDS._objref_AttributeUserID):
140
+ aResult += " attribute value: " + str(attr.Value())
141
+ elif isinstance(attr,SALOMEDS._objref_AttributeIOR):
142
+ aResult += " attribute: IOR"
143
+ elif isinstance(attr,SALOMEDS._objref_AttributeSequenceOfReal) or \
144
+ isinstance(attr,SALOMEDS._objref_AttributeSequenceOfInteger):
145
+ aResult += " Sequence: " + str(attr.CorbaSequence())
146
+ elif isinstance(attr,SALOMEDS._objref_AttributeDrawable):
147
+ aResult += " Drawable: " + str(attr.IsDrawable())
148
+ elif isinstance(attr,SALOMEDS._objref_AttributeSelectable):
149
+ aResult += " Selectable: " + str(attr.IsSelectable())
150
+ elif isinstance(attr,SALOMEDS._objref_AttributeExpandable):
151
+ aResult += " Expandable: " + str(attr.IsExpandable())
152
+ elif isinstance(attr,SALOMEDS._objref_AttributeOpened):
153
+ aResult += " Opened: " + str(attr.IsOpened())
154
+ elif isinstance(attr,SALOMEDS._objref_AttributeTextColor):
155
+ aResult += " TextColor: " + str(attr.TextColor())
156
+ elif isinstance(attr,SALOMEDS._objref_AttributeTextHighlightColor):
157
+ aResult += " TextHighlightColor: " + str(attr.TextHighlightColor())
158
+ elif isinstance(attr,SALOMEDS._objref_AttributePixMap):
159
+ aResult += " PixMap: " + str(attr.GetPixMap())
160
+ elif isinstance(attr,SALOMEDS._objref_AttributeTableOfInteger) or \
161
+ isinstance(attr,SALOMEDS._objref_AttributeTableOfReal):
162
+ aResult += " Table with title: " + attr.GetTitle()
163
+ elif isinstance(attr,SALOMEDS._objref_AttributePythonObject):
164
+ aResult += " PythonObject: " + attr.GetObject()
165
+
166
+ if theWithID:
167
+ aResult = "sobject: " + theSO.GetID() + " nbattrs: " + str(aLen - anUncopied) + aResult + '\n'
168
+ else:
169
+ aResult = " nbattrs: " + str(aLen - anUncopied) + aResult + '\n'
170
+ anIter = myStudy.NewChildIterator(theSO)
171
+ while anIter.More():
172
+ aResult += PersistentPresentation(anIter.Value(), theWithID)
173
+ anIter.Next()
174
+ return aResult
175
+
176
+ #--------------------------------------------------------------------------
177
+
178
+ def GetTree(theSO):
179
+ # returns the document list tree (as list)
180
+ global myStudy
181
+ aResult = [theSO.GetID()]
182
+ anIter = myStudy.NewChildIterator(theSO)
183
+ while anIter.More():
184
+ aResult += GetTree(anIter.Value())
185
+ anIter.Next()
186
+ return aResult
187
+
188
+ #--------------------------------------------------------------------------
189
+
190
+ def CheckCopyPaste(theSO, theInfo ,theComponentPaste):
191
+ global myStudy
192
+
193
+ aRoot = theSO
194
+ while aRoot.GetID() != "0:":
195
+ aRoot = aRoot.GetFather()
196
+ aTree = GetTree(aRoot)
197
+ aStudyPersist = PersistentPresentation(aRoot, 1)
198
+
199
+ if not myStudy.CanCopy(theSO):
200
+ raise RuntimeError("<CanCopy> for "+theInfo+" returns false")
201
+
202
+ if not myStudy.Copy(theSO):
203
+ raise RuntimeError("<Copy> for "+theInfo+" returns false")
204
+
205
+
206
+ if not myStudy.CanPaste(theSO):
207
+ raise RuntimeError("<CanPaste> for "+theInfo+" returns false")
208
+
209
+ # check: before paste study is not changed check
210
+ if aStudyPersist != PersistentPresentation(aRoot, 1):
211
+ raise RuntimeError("Study is changed before Paste calling for "+theInfo)
212
+
213
+ aSObj = theSO
214
+ if theComponentPaste:
215
+ aSObj = theSO.GetFatherComponent()
216
+ theInfo = theInfo + "(paste for component)"
217
+ if myStudy.Paste(aSObj) == None:
218
+ raise RuntimeError("<Paste> for "+theInfo+" returns None object")
219
+ aNewTree = GetTree(aRoot)
220
+ aLen = len(aTree)
221
+ for a in range(0,aLen):
222
+ if aTree[a] != aNewTree[a]:
223
+ return myStudy.FindObjectID(aNewTree[a])
224
+
225
+ if aLen < len(aNewTree):
226
+ return myStudy.FindObjectID(aNewTree[aLen])
227
+
228
+ raise RuntimeError("After Copy calling the tree is not changed")
229
+
230
+ #--------------------------------------------------------------------------
231
+
232
+ def GetComponentVersion(theComponent, all_versions = False):
233
+ # returns the document list tree (as list)
234
+ global myStudy
235
+ props = myStudy.GetProperties()
236
+ stored_components = props.GetStoredComponents()
237
+ version = "no component data" # vsr: better raise an exception in this case?
238
+ if theComponent in stored_components:
239
+ if all_versions:
240
+ version = props.GetComponentVersions(theComponent)
241
+ for i in range(len(version)):
242
+ if not version[i]: version[i] = "unknown"
243
+ pass
244
+ pass
245
+ else:
246
+ version = props.GetComponentVersion(theComponent)
247
+ if not version: version = "unknown"
248
+ pass
249
+ pass
250
+ return version
251
+
252
+ #--------------------------------------------------------------------------
253
+
254
+ def FindFileInDataDir(filename):
255
+ import os
256
+ datadir = os.getenv("DATA_DIR")
257
+ if datadir is not None:
258
+ import string
259
+ dirs = string.split(datadir, ":")
260
+ for dir in dirs:
261
+ file = dir + "/" + filename
262
+ if os.path.exists(file):
263
+ return file;
264
+ datadir = os.getenv("KERNEL_ROOT_DIR") + "/examples/"
265
+ file = datadir + filename
266
+ if os.path.exists(file):
267
+ return file;
268
+
269
+ return None
270
+
271
+ #--------------------------------------------------------------------------
272
+
273
+ def openStudy(theStudyPath):
274
+ global myStudy, myStudyName
275
+ myStudy.Open(theStudyPath)
276
+ myStudyName = myStudy._get_Name()
277
+
278
+ #--------------------------------------------------------------------------
279
+
280
+ def salome_study_init_without_session(theStudyPath=None):
281
+ """
282
+ Performs only once study creation or connection.
283
+ optional argument : theStudyPath
284
+ None : attach to the currently active single study;
285
+ create new empty study if there is active study
286
+ <URL> (str) : open study with the given file name
287
+ """
288
+ global myStudy, myStudyName
289
+ global orb, lcc, naming_service, cm
290
+
291
+ if not myStudy:
292
+ import CORBA
293
+ orb = CORBA.ORB_init([''])
294
+
295
+ # get Study reference
296
+ from . import KernelDS
297
+ myStudy = KernelDS.myStudy()
298
+ pass
299
+
300
+ import types
301
+ if theStudyPath and isinstance(theStudyPath, (str, bytes)):
302
+ if isinstance(theStudyPath, bytes):
303
+ theStudyPath = str(theStudyPath, 'UTF8')
304
+ openStudy(theStudyPath)
305
+ else:
306
+ myStudy.Init()
307
+
308
+ myStudyName = myStudy._get_Name()
309
+
310
+ return myStudy, myStudyName
311
+
312
+ #--------------------------------------------------------------------------
313
+
314
+ def salome_study_init(theStudyPath=None):
315
+ """
316
+ Performs only once study creation or connection.
317
+ optional argument : theStudyPath
318
+ None : attach to the currently active single study;
319
+ create new empty study if there is active study
320
+ <URL> (str) : open study with the given file name
321
+ """
322
+ global myStudy, myStudyName
323
+ global orb, lcc, naming_service, cm
324
+
325
+ if not myStudy:
326
+ orb, lcc, naming_service, cm, _, _, _ = salome_kernel_utils.salome_kernel_init()
327
+
328
+ # get Study reference
329
+ obj = naming_service.Resolve('/Study')
330
+ myStudy = obj._narrow(SALOMEDS.Study)
331
+ pass
332
+
333
+ import types
334
+ if theStudyPath and isinstance(theStudyPath, (str, bytes)):
335
+ if isinstance(theStudyPath, bytes):
336
+ theStudyPath = str(theStudyPath, 'UTF8')
337
+ openStudy(theStudyPath)
338
+ else:
339
+ myStudy.Init()
340
+
341
+ myStudyName = myStudy._get_Name()
342
+
343
+ return myStudy, myStudyName
344
+
345
+ def salome_study_close():
346
+ global myStudy, myStudyName
347
+ myStudy, myStudyName = None, None