Salome HOME
New access protocol rsync.
[modules/kernel.git] / src / KERNEL_PY / __init__.py
old mode 100644 (file)
new mode 100755 (executable)
index d3cc1bd..47b0b2c
@@ -1,5 +1,5 @@
 #  -*- coding: iso-8859-1 -*-
-# Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
 #
 # Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -7,7 +7,7 @@
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 # License as published by the Free Software Foundation; either
-# version 2.1 of the License.
+# version 2.1 of the License, or (at your option) any later version.
 #
 # This library is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -26,7 +26,7 @@
 #  Module : SALOME
 #
 """ 
-Module salome gives access to Salome ressources.
+Module salome gives access to Salome resources.
 
 variables:
 
@@ -71,7 +71,7 @@ variables:
 
 """
 ## @package salome
-# Module salome gives access to Salome ressources.
+# Module salome gives access to Salome resources.
 #
 #  \param salome.orb             : CORBA orb object
 #  \param salome.naming_service  : instance of naming Service class (SALOME_NamingServicePy::SALOME_NamingServicePy_i)
@@ -192,7 +192,7 @@ def setCurrentStudyId(theStudyId=0):
 salome_initial=1
 def salome_init(theStudyId=0,embedded=0):
     """
-    Performs only once SALOME general purpose intialisation for scripts.
+    Performs only once SALOME general purpose initialisation for scripts.
     optional argument : theStudyId
       When in embedded interpreter inside IAPP, theStudyId is not used
       When used without GUI (external interpreter)
@@ -221,7 +221,7 @@ def salome_init(theStudyId=0,embedded=0):
             salome_initial=0
             sg = salome_iapp_init(embedded)
             orb, lcc, naming_service, cm = salome_kernel_init()
-            myStudyManager, myStudyId, myStudy, myStudyName =salome_study_init(theStudyId)
+            myStudyManager, myStudyId, myStudy, myStudyName = salome_study_init(theStudyId)
             pass
         pass
     except RuntimeError, inst:
@@ -233,11 +233,25 @@ def salome_init(theStudyId=0,embedded=0):
         print """
         ============================================
         May be there is no running SALOME session
-        salome.salome_init() is intented to be used
+        salome.salome_init() is intended to be used
         within an already running session
         ============================================
         """
         raise
+    
+def salome_close():
+    global salome_initial, myStudy, myStudyId, myStudyName
+    try:
+        # study can be closed either from GUI or directly with salome.myStudy.Close()
+        myStudy.Close()
+    except:
+        pass
+    salome_initial=1
+    salome_iapp_close()
+    salome_study_close()
+    myStudyId, myStudy, myStudyName=None,None,None
+    pass
+
 
 #to expose all objects to pydoc
 __all__=dir()