]> SALOME platform Git repositories - modules/kernel.git/blob - src/KERNEL_PY/salome.py
Salome HOME
use omnipatch for tests on WIN32
[modules/kernel.git] / src / KERNEL_PY / salome.py
1 #  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
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. 
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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
19 #
20 #
21 #
22 #  File   : salome.py
23 #  Author : Paul RASCLE, EDF
24 #  Module : SALOME
25 #  $Header$
26
27 import sys
28 import omnipatch 
29
30 from salome_kernel import *
31 from salome_study import *
32 from salome_iapp import *
33
34 salome_initial=1
35 def salome_init(theStudyId=0):
36     """
37     Performs only once SALOME general purpose intialisation for scripts.
38     optional argument : theStudyId
39       When in embedded interpreter inside IAPP, theStudyId is not used
40       When used without GUI (external interpreter)
41         0      : create a new study (default).
42         n (>0) : try connection to study with Id = n, or create a new one
43                  if study not found.
44                  If study creation, its Id may be different from theStudyId !
45     Provides:
46     orb             reference to CORBA
47     lcc             a LifeCycleCorba instance
48     naming_service  a naming service instance
49     cm              reference to the container manager
50     sg              access to SALOME GUI (when linked with IAPP GUI)
51     myStudyManager  the study manager
52     myStudyId       active study identifier
53     myStudy         active study itself (CORBA reference)
54     myStudyName     active study name
55     """
56     global salome_initial
57     global orb, lcc, naming_service, cm
58     global sg
59     global myStudyManager, myStudyId, myStudy, myStudyName
60     
61     if salome_initial:
62         salome_initial=0
63         sg = salome_iapp_init()
64         orb, lcc, naming_service, cm = salome_kernel_init()
65         myStudyManager, myStudyId, myStudy, myStudyName =salome_study_init(theStudyId)
66