#include "TypeCode.hxx"
#include "SalomeProc.hxx"
+ #include "Basics_Utils.hxx"
#include "SALOME_NamingService.hxx"
+#include "SALOME_KernelServices.hxx"
#include "SALOMEDS.hh"
#include "SALOMEDS_Attributes.hh"
// save in file if ref is given
if(_ref != "")
{
- KERNEL::getStudyServant()->SaveAs(_ref.c_str(), false, false);
- aStudyManager->SaveAs(Kernel_Utils::decode_s(_ref),myStudy, false);
++ KERNEL::getStudyServant()->SaveAs(Kernel_Utils::decode_s( _ref ), false, false);
}
DEBTRACE("+++++++ end StudyOutNode::execute +++++++++++" );
}
<PyFunc><![CDATA[ lcc = LifeCycleCORBA(orb) ]]></PyFunc>
<PyFunc><![CDATA[ # --- create a naming service instance ]]></PyFunc>
<PyFunc><![CDATA[ naming_service = SALOME_NamingServicePy_i(orb) ]]></PyFunc>
- <PyFunc><![CDATA[ # --- get Study Manager reference ]]></PyFunc>
- <PyFunc><![CDATA[ obj = naming_service.Resolve('myStudyManager') ]]></PyFunc>
- <PyFunc><![CDATA[ StudyManager = obj._narrow(SALOMEDS.StudyManager) ]]></PyFunc>
<PyFunc><![CDATA[ # --- load visu component ]]></PyFunc>
<PyFunc><![CDATA[ aVisu = lcc.FindOrLoadComponent("FactoryServer","VISU") ]]></PyFunc>
- <PyFunc><![CDATA[ print "InitDisplay --> aVisu ", aVisu ]]></PyFunc>
- <PyFunc><![CDATA[ aStudy = StudyManager.GetStudyByID(1) ]]></PyFunc>
- <PyFunc><![CDATA[ aVisu.SetCurrentStudy(aStudy) ]]></PyFunc>
+ <PyFunc><![CDATA[ print("InitDisplay --> aVisu ", aVisu) ]]></PyFunc>
<PyFunc><![CDATA[ time.sleep(2) ]]></PyFunc>
<PyFunc><![CDATA[ aViewManager=aVisu.GetViewManager() ]]></PyFunc>
- <PyFunc><![CDATA[ print "InitDisplay --> aViewManager ", aViewManager ]]></PyFunc>
+ <PyFunc><![CDATA[ print("InitDisplay --> aViewManager ", aViewManager) ]]></PyFunc>
<PyFunc><![CDATA[ #time.sleep(2) ]]></PyFunc>
<PyFunc><![CDATA[ #aView=aViewManager.GetCurrentView() ]]></PyFunc>
<PyFunc><![CDATA[ aView=aViewManager.Create3DView() ]]></PyFunc>
[command line options] :
--help : affichage de l'aide
--gui : lancement du GUI
- --logger : redirection des messages dans un fichier
- --xterm : les serveurs ouvrent une fen�tre xterm et les messages sont affich�s dans cette fen�tre
- --modules=module1,module2,... : o� modulen est le nom d'un module Salome � charger dans le catalogue
+ --logger : redirection des messages dans un fichier
---xterm : les serveurs ouvrent une fenêtre xterm et les messages sont affichés dans cette fenêtre
---modules=module1,module2,... : où modulen est le nom d'un module Salome à charger dans le catalogue
++--xterm : les serveurs ouvrent une fen??tre xterm et les messages sont affich??s dans cette fen??tre
++--modules=module1,module2,... : o?? modulen est le nom d'un module Salome ?? charger dans le catalogue
--containers=cpp,python,superv: lancement des containers cpp, python et de supervision
- --killall : arr�t des serveurs de salome
---killall : arrêt des serveurs de salome
++--killall : arr??t des serveurs de salome
- La variable d'environnement <modulen>_ROOT_DIR doit etre pr�alablement
- positionn�e (modulen doit etre en majuscule).
- La variable d'environnement <modulen>_ROOT_DIR doit etre préalablement
- positionnée (modulen doit etre en majuscule).
++ La variable d'environnement <modulen>_ROOT_DIR doit etre pr??alablement
++ positionn??e (modulen doit etre en majuscule).
KERNEL_ROOT_DIR est obligatoire.
"""
# -----------------------------------------------------------------------------
#
- # Fonction d'arr�t de salome
-# Fonction d'arrêt de salome
++# Fonction d'arr??t de salome
#
def killSalome():
# -----------------------------------------------------------------------------
#
- # V�rification des variables d'environnement
-# Vérification des variables d'environnement
++# V??rification des variables d'environnement
#
try:
- kernel_root_dir=os.environ["KERNEL_ROOT_DIR"]
- modules_root_dir["KERNEL"]=kernel_root_dir
+ kernel_root_dir=os.environ["KERNEL_ROOT_DIR"]
+ modules_root_dir["KERNEL"]=kernel_root_dir
except:
- print usage
- sys.exit(1)
+ print(usage)
+ sys.exit(1)
for module in liste_modules :
- try:
- module=module.upper()
- module_root_dir=os.environ[module +"_ROOT_DIR"]
- modules_root_dir[module]=module_root_dir
- except:
- print usage
- sys.exit(1)
+ try:
+ module=module.upper()
+ module_root_dir=os.environ[module +"_ROOT_DIR"]
+ modules_root_dir[module]=module_root_dir
+ except:
+ print(usage)
+ sys.exit(1)
# il faut KERNEL en premier dans la liste des modules
# - l'ordre des modules dans le catalogue sera identique
- # - la liste des modules presents dans le catalogue est exploit�e pour charger les modules CORBA python,
-# - la liste des modules presents dans le catalogue est exploitée pour charger les modules CORBA python,
++# - la liste des modules presents dans le catalogue est exploit??e pour charger les modules CORBA python,
# il faut charger les modules python du KERNEL en premier
if "KERNEL" in liste_modules:liste_modules.remove("KERNEL")
# -----------------------------------------------------------------------------
#
- # D�finition des classes d'objets pour le lancement des Server CORBA
-# Définition des classes d'objets pour le lancement des Server CORBA
++# D??finition des classes d'objets pour le lancement des Server CORBA
#
class Server:
def startSalome():
- #
- # Lancement Session Loader
- #
- SessionLoader().run()
-
- #
- # Initialisation ORB et Naming Service
- #
- clt=orbmodule.client()
-
- # (non obligatoire) Lancement Logger Server et attente de sa
- # disponibilite dans le naming service
- #
- if with_logger:
- LoggerServer().run()
- clt.waitLogger("Logger")
-
- #
- # Lancement Registry Server
- #
- RegistryServer().run()
-
- #
- # Attente de la disponibilit� du Registry dans le Naming Service
- #
- clt.waitNS("/Registry")
-
- #
- # Lancement Catalog Server
- #
- cataServer=CatalogServer()
- cataServer.setpath(liste_modules)
- cataServer.run()
-
- #
- # Attente de la disponibilit� du Catalog Server dans le Naming Service
- #
- import SALOME_ModuleCatalog
- clt.waitNS("/Kernel/ModulCatalog",SALOME_ModuleCatalog.ModuleCatalog)
-
- #
- # Lancement SalomeDS Server
- #
- os.environ["CSF_PluginDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
- os.environ["CSF_SALOMEDS_ResourcesDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
- SalomeDSServer().run()
-
- if "GEOM" in liste_modules:
- print "GEOM OCAF Resources"
- os.environ["CSF_GEOMDS_ResourcesDefaults"]=os.path.join(modules_root_dir["GEOM"],"share","salome","resources")
-
-
- #
- # Attente de la disponibilit� du SalomeDS dans le Naming Service
- #
- clt.waitNS("/Study")
-
- #
- # Lancement Session Server
- #
- SessionServer().run()
-
- #
- # Attente de la disponibilit� du Session Server dans le Naming Service
- #
- import SALOME
- session=clt.waitNS("/Kernel/Session",SALOME.Session)
-
- #
- # Lancement containers
- #
- theComputer = os.getenv("HOSTNAME")
- theComputer = theComputer.split('.')[0]
-
- #
- # Lancement Container C++ local
- #
- if with_container_cpp:
- ContainerCPPServer().run()
- #
- # Attente de la disponibilit� du Container C++ local
- # dans le Naming Service
- #
- clt.waitNS("/Containers/" + theComputer + "/FactoryServer")
- #
- # Lancement Container Python local
- #
- if with_container_python:
- ContainerPYServer().run()
- #
- # Attente de la disponibilit� du Container Python local
- # dans le Naming Service
- #
- clt.waitNS("/Containers/" + theComputer + "/FactoryServerPy")
-
- if with_container_superv:
- #
- # Lancement Container Supervision local
- #
- ContainerSUPERVServer().run()
- #
- # Attente de la disponibilit� du Container Supervision local
+ #
+ # Lancement Session Loader
+ #
+ SessionLoader().run()
+
+ #
+ # Initialisation ORB et Naming Service
+ #
+ clt=orbmodule.client()
+
+ # (non obligatoire) Lancement Logger Server et attente de sa
+ # disponibilite dans le naming service
+ #
+ if with_logger:
+ LoggerServer().run()
+ clt.waitLogger("Logger")
+
+ #
+ # Lancement Registry Server
+ #
+ RegistryServer().run()
+
+ #
- # Attente de la disponibilité du Registry dans le Naming Service
++ # Attente de la disponibilit?? du Registry dans le Naming Service
+ #
+ clt.waitNS("/Registry")
+
+ #
+ # Lancement Catalog Server
+ #
+ cataServer=CatalogServer()
+ cataServer.setpath(liste_modules)
+ cataServer.run()
+
+ #
- # Attente de la disponibilité du Catalog Server dans le Naming Service
++ # Attente de la disponibilit?? du Catalog Server dans le Naming Service
+ #
+ import SALOME_ModuleCatalog
+ clt.waitNS("/Kernel/ModulCatalog",SALOME_ModuleCatalog.ModuleCatalog)
+
+ #
+ # Lancement SalomeDS Server
+ #
+ os.environ["CSF_PluginDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
+ os.environ["CSF_SALOMEDS_ResourcesDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
+ SalomeDSServer().run()
+
+ if "GEOM" in liste_modules:
+ print("GEOM OCAF Resources")
+ os.environ["CSF_GEOMDS_ResourcesDefaults"]=os.path.join(modules_root_dir["GEOM"],"share","salome","resources")
+
+
+ #
- # Attente de la disponibilité du SalomeDS dans le Naming Service
++ # Attente de la disponibilit?? du SalomeDS dans le Naming Service
+ #
+ clt.waitNS("/myStudyManager")
+
+ #
+ # Lancement Session Server
+ #
+ SessionServer().run()
+
+ #
- # Attente de la disponibilité du Session Server dans le Naming Service
++ # Attente de la disponibilit?? du Session Server dans le Naming Service
+ #
+ import SALOME
+ session=clt.waitNS("/Kernel/Session",SALOME.Session)
+
+ #
+ # Lancement containers
+ #
+ theComputer = os.getenv("HOSTNAME")
+ theComputer = theComputer.split('.')[0]
+
+ #
+ # Lancement Container C++ local
+ #
+ if with_container_cpp:
+ ContainerCPPServer().run()
+ #
- # Attente de la disponibilité du Container C++ local
++ # Attente de la disponibilit?? du Container C++ local
# dans le Naming Service
- #
- clt.waitNS("/Containers/" + theComputer + "/SuperVisionContainer")
- #
- # Activation du GUI de Session Server
- #
- #session.GetInterface()
+ #
+ clt.waitNS("/Containers/" + theComputer + "/FactoryServer")
+ #
+ # Lancement Container Python local
+ #
+ if with_container_python:
+ ContainerPYServer().run()
+ #
- # Attente de la disponibilité du Container Python local
++ # Attente de la disponibilit?? du Container Python local
+ # dans le Naming Service
+ #
+ clt.waitNS("/Containers/" + theComputer + "/FactoryServerPy")
+
+ if with_container_superv:
+ #
+ # Lancement Container Supervision local
+ #
+ ContainerSUPERVServer().run()
+ #
- # Attente de la disponibilité du Container Supervision local
++ # Attente de la disponibilit?? du Container Supervision local
+ # dans le Naming Service
+ #
+ clt.waitNS("/Containers/" + theComputer + "/SuperVisionContainer")
+ #
+ # Activation du GUI de Session Server
+ #
+ #session.GetInterface()
- end_time = os.times()
- print
- print "Start SALOME, elpased time : %5.1f seconds"% (end_time[4] - init_time[4])
+ end_time = os.times()
+ print()
+ print("Start SALOME, elpased time : %5.1f seconds"% (end_time[4] - init_time[4]))
- return clt
+ return clt
#
# -----------------------------------------------------------------------------
#
if __name__ == "__main__":
- clt=None
- try:
- clt = startSalome()
- except:
- print
- print
- print "--- erreur au lancement Salome ---"
-
- #print process_id
-
-
- filedict='/tmp/'+os.getenv('USER')+'_SALOME_pidict'
- #filedict='/tmp/'+os.getlogin()+'_SALOME_pidict'
-
- fpid=open(filedict, 'w')
- pickle.dump(process_id,fpid)
- fpid.close()
-
- print """
-
- Sauvegarde du dictionnaire des process dans , %s
- Pour tuer les process SALOME, executer : python killSalome.py depuis
- une console, ou bien killSalome() depuis le present interpreteur,
- s'il n'est pas ferm�.
-
- runSalome, avec l'option --killall, commence par tuer les process restants
- d'une execution pr�c�dente.
-
- Pour lancer uniquement le GUI, executer startGUI() depuis le present interpreteur,
- s'il n'est pas ferm�.
-
- """ % filedict
-
- #
- # Impression arborescence Naming Service
- #
-
- if clt != None:
- print
- print " --- registered objects tree in Naming Service ---"
- clt.showNS()
- session=clt.waitNS("/Kernel/Session")
- catalog=clt.waitNS("/Kernel/ModulCatalog")
- import socket
- container = clt.waitNS("/Containers/" + socket.gethostname().split('.')[0] + "/FactoryServerPy")
-
- if os.path.isfile("~/.salome/pystartup"):
- f=open(os.path.expanduser("~/.salome/pystartup"),'w')
- PYTHONSTARTUP=f.read()
- f.close()
- else:
- PYTHONSTARTUP="""
- # Add auto-completion and a stored history file of commands to your Python
- # interactive interpreter. Requires Python 2.0+, readline. Autocomplete is
- # bound to the TAB key by default (you can change it - see readline docs).
- #
- # Store the history in ~/.salome/pyhistory,
- #
- import atexit
- import os
- import readline
- import rlcompleter
- readline.parse_and_bind('tab: complete')
+ clt=None
+ try:
+ clt = startSalome()
+ except:
+ print()
+ print()
+ print("--- erreur au lancement Salome ---")
+
+ #print process_id
+
+
+ filedict='/tmp/'+os.getenv('USER')+'_SALOME_pidict'
+ #filedict='/tmp/'+os.getlogin()+'_SALOME_pidict'
+
+ fpid=open(filedict, 'w')
+ pickle.dump(process_id,fpid)
+ fpid.close()
+
+ print("""
+
+ Sauvegarde du dictionnaire des process dans , %s
+ Pour tuer les process SALOME, executer : python killSalome.py depuis
+ une console, ou bien killSalome() depuis le present interpreteur,
- s'il n'est pas fermé.
++ s'il n'est pas ferm??.
+
+ runSalome, avec l'option --killall, commence par tuer les process restants
- d'une execution précédente.
++ d'une execution pr??c??dente.
+
+ Pour lancer uniquement le GUI, executer startGUI() depuis le present interpreteur,
- s'il n'est pas fermé.
++ s'il n'est pas ferm??.
+
+ """ % filedict)
+
+ #
+ # Impression arborescence Naming Service
+ #
+
+ if clt != None:
+ print()
+ print(" --- registered objects tree in Naming Service ---")
+ clt.showNS()
+ session=clt.waitNS("/Kernel/Session")
+ catalog=clt.waitNS("/Kernel/ModulCatalog")
+ import socket
+ container = clt.waitNS("/Containers/" + socket.gethostname().split('.')[0] + "/FactoryServerPy")
+
+ if os.path.isfile("~/.salome/pystartup"):
+ f=open(os.path.expanduser("~/.salome/pystartup"),'w')
+ PYTHONSTARTUP=f.read()
+ f.close()
+ else:
+ PYTHONSTARTUP="""
+ # Add auto-completion and a stored history file of commands to your Python
+ # interactive interpreter. Requires Python 2.0+, readline. Autocomplete is
+ # bound to the TAB key by default (you can change it - see readline docs).
+ #
+ # Store the history in ~/.salome/pyhistory,
+ #
+ import atexit
+ import os
+ import readline
+ import rlcompleter
+ readline.parse_and_bind('tab: complete')
- historyPath = os.path.expanduser("~/.salome/pyhistory")
+ historyPath = os.path.expanduser("~/.salome/pyhistory")
- def save_history(historyPath=historyPath):
- import readline
- readline.write_history_file(historyPath)
+ def save_history(historyPath=historyPath):
+ import readline
+ readline.write_history_file(historyPath)
- if os.path.exists(historyPath):
- readline.read_history_file(historyPath)
+ if os.path.exists(historyPath):
+ readline.read_history_file(historyPath)
- atexit.register(save_history)
- del os, atexit, readline, rlcompleter, save_history, historyPath
- """
- f=open(os.path.expanduser("~/.salome/pystartup"),'w')
- f.write(PYTHONSTARTUP)
- f.close()
+ atexit.register(save_history)
+ del os, atexit, readline, rlcompleter, save_history, historyPath
+ """
+ f=open(os.path.expanduser("~/.salome/pystartup"),'w')
+ f.write(PYTHONSTARTUP)
+ f.close()
- exec PYTHONSTARTUP in {}
-
+ exec(PYTHONSTARTUP, {})
[command line options] :
--help : affichage de l'aide
--gui : lancement du GUI
- --logger : redirection des messages dans un fichier
- --xterm : les serveurs ouvrent une fen�tre xterm et les messages sont affich�s dans cette fen�tre
- --modules=module1,module2,... : o� modulen est le nom d'un module Salome � charger dans le catalogue
+ --logger : redirection des messages dans un fichier
---xterm : les serveurs ouvrent une fenêtre xterm et les messages sont affichés dans cette fenêtre
---modules=module1,module2,... : où modulen est le nom d'un module Salome à charger dans le catalogue
++--xterm : les serveurs ouvrent une fen??tre xterm et les messages sont affich??s dans cette fen??tre
++--modules=module1,module2,... : o?? modulen est le nom d'un module Salome ?? charger dans le catalogue
--containers=cpp,python,superv: lancement des containers cpp, python et de supervision
- --killall : arr�t des serveurs de salome
---killall : arrêt des serveurs de salome
++--killall : arr??t des serveurs de salome
- La variable d'environnement <modulen>_ROOT_DIR doit etre pr�alablement
- positionn�e (modulen doit etre en majuscule).
- La variable d'environnement <modulen>_ROOT_DIR doit etre préalablement
- positionnée (modulen doit etre en majuscule).
++ La variable d'environnement <modulen>_ROOT_DIR doit etre pr??alablement
++ positionn??e (modulen doit etre en majuscule).
KERNEL_ROOT_DIR est obligatoire.
"""
# -----------------------------------------------------------------------------
#
- # Fonction d'arr�t de salome
-# Fonction d'arrêt de salome
++# Fonction d'arr??t de salome
#
def killSalome():
# -----------------------------------------------------------------------------
#
- # V�rification des variables d'environnement
-# Vérification des variables d'environnement
++# V??rification des variables d'environnement
#
try:
- kernel_root_dir=os.environ["KERNEL_ROOT_DIR"]
- modules_root_dir["KERNEL"]=kernel_root_dir
+ kernel_root_dir=os.environ["KERNEL_ROOT_DIR"]
+ modules_root_dir["KERNEL"]=kernel_root_dir
except:
- print usage
- sys.exit(1)
+ print(usage)
+ sys.exit(1)
for module in liste_modules :
- try:
- module=module.upper()
- module_root_dir=os.environ[module +"_ROOT_DIR"]
- modules_root_dir[module]=module_root_dir
- except:
- print usage
- sys.exit(1)
+ try:
+ module=module.upper()
+ module_root_dir=os.environ[module +"_ROOT_DIR"]
+ modules_root_dir[module]=module_root_dir
+ except:
+ print(usage)
+ sys.exit(1)
# il faut KERNEL en premier dans la liste des modules
# - l'ordre des modules dans le catalogue sera identique
- # - la liste des modules presents dans le catalogue est exploit�e pour charger les modules CORBA python,
-# - la liste des modules presents dans le catalogue est exploitée pour charger les modules CORBA python,
++# - la liste des modules presents dans le catalogue est exploit??e pour charger les modules CORBA python,
# il faut charger les modules python du KERNEL en premier
if "KERNEL" in liste_modules:liste_modules.remove("KERNEL")
# -----------------------------------------------------------------------------
#
- # D�finition des classes d'objets pour le lancement des Server CORBA
-# Définition des classes d'objets pour le lancement des Server CORBA
++# D??finition des classes d'objets pour le lancement des Server CORBA
#
class Server:
def startSalome():
- #
- # Lancement Session Loader
- #
- SessionLoader().run()
-
- #
- # Initialisation ORB et Naming Service
- #
- clt=orbmodule.client()
-
- # (non obligatoire) Lancement Logger Server et attente de sa
- # disponibilite dans le naming service
- #
- if with_logger:
- LoggerServer().run()
- clt.waitLogger("Logger")
-
- #
- # Lancement Registry Server
- #
- RegistryServer().run()
-
- #
- # Attente de la disponibilit� du Registry dans le Naming Service
- #
- clt.waitNS("/Registry")
-
- #
- # Lancement Catalog Server
- #
- cataServer=CatalogServer()
- cataServer.setpath(liste_modules)
- cataServer.run()
-
- #
- # Attente de la disponibilit� du Catalog Server dans le Naming Service
- #
- import SALOME_ModuleCatalog
- clt.waitNS("/Kernel/ModulCatalog",SALOME_ModuleCatalog.ModuleCatalog)
-
- #
- # Lancement SalomeDS Server
- #
- os.environ["CSF_PluginDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
- os.environ["CSF_SALOMEDS_ResourcesDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
- SalomeDSServer().run()
-
- if "GEOM" in liste_modules:
- print "GEOM OCAF Resources"
- os.environ["CSF_GEOMDS_ResourcesDefaults"]=os.path.join(modules_root_dir["GEOM"],"share","salome","resources")
-
-
- #
- # Attente de la disponibilit� du SalomeDS dans le Naming Service
- #
- clt.waitNS("/Study")
-
- #
- # Lancement Session Server
- #
- SessionServer().run()
-
- #
- # Attente de la disponibilit� du Session Server dans le Naming Service
- #
- import SALOME
- session=clt.waitNS("/Kernel/Session",SALOME.Session)
-
- #
- # Lancement containers
- #
- theComputer = os.getenv("HOSTNAME")
- theComputer = theComputer.split('.')[0]
-
- #
- # Lancement Container C++ local
- #
- if with_container_cpp:
- ContainerCPPServer().run()
- #
- # Attente de la disponibilit� du Container C++ local
- # dans le Naming Service
- #
- clt.waitNS("/Containers/" + theComputer + "/FactoryServer")
- #
- # Lancement Container Python local
- #
- if with_container_python:
- ContainerPYServer().run()
- #
- # Attente de la disponibilit� du Container Python local
- # dans le Naming Service
- #
- clt.waitNS("/Containers/" + theComputer + "/FactoryServerPy")
-
- if with_container_superv:
- #
- # Lancement Container Supervision local
- #
- ContainerSUPERVServer().run()
- #
- # Attente de la disponibilit� du Container Supervision local
+ #
+ # Lancement Session Loader
+ #
+ SessionLoader().run()
+
+ #
+ # Initialisation ORB et Naming Service
+ #
+ clt=orbmodule.client()
+
+ # (non obligatoire) Lancement Logger Server et attente de sa
+ # disponibilite dans le naming service
+ #
+ if with_logger:
+ LoggerServer().run()
+ clt.waitLogger("Logger")
+
+ #
+ # Lancement Registry Server
+ #
+ RegistryServer().run()
+
+ #
- # Attente de la disponibilité du Registry dans le Naming Service
++ # Attente de la disponibilit?? du Registry dans le Naming Service
+ #
+ clt.waitNS("/Registry")
+
+ #
+ # Lancement Catalog Server
+ #
+ cataServer=CatalogServer()
+ cataServer.setpath(liste_modules)
+ cataServer.run()
+
+ #
- # Attente de la disponibilité du Catalog Server dans le Naming Service
++ # Attente de la disponibilit?? du Catalog Server dans le Naming Service
+ #
+ import SALOME_ModuleCatalog
+ clt.waitNS("/Kernel/ModulCatalog",SALOME_ModuleCatalog.ModuleCatalog)
+
+ #
+ # Lancement SalomeDS Server
+ #
+ os.environ["CSF_PluginDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
+ os.environ["CSF_SALOMEDS_ResourcesDefaults"]=os.path.join(kernel_root_dir,"share","salome","resources")
+ SalomeDSServer().run()
+
+ if "GEOM" in liste_modules:
+ print("GEOM OCAF Resources")
+ os.environ["CSF_GEOMDS_ResourcesDefaults"]=os.path.join(modules_root_dir["GEOM"],"share","salome","resources")
+
+
+ #
- # Attente de la disponibilité du SalomeDS dans le Naming Service
++ # Attente de la disponibilit?? du SalomeDS dans le Naming Service
+ #
+ clt.waitNS("/myStudyManager")
+
+ #
+ # Lancement Session Server
+ #
+ SessionServer().run()
+
+ #
- # Attente de la disponibilité du Session Server dans le Naming Service
++ # Attente de la disponibilit?? du Session Server dans le Naming Service
+ #
+ import SALOME
+ session=clt.waitNS("/Kernel/Session",SALOME.Session)
+
+ #
+ # Lancement containers
+ #
+ theComputer = os.getenv("HOSTNAME")
+ theComputer = theComputer.split('.')[0]
+
+ #
+ # Lancement Container C++ local
+ #
+ if with_container_cpp:
+ ContainerCPPServer().run()
+ #
- # Attente de la disponibilité du Container C++ local
++ # Attente de la disponibilit?? du Container C++ local
# dans le Naming Service
- #
- clt.waitNS("/Containers/" + theComputer + "/SuperVisionContainer")
- #
- # Activation du GUI de Session Server
- #
- #session.GetInterface()
+ #
+ clt.waitNS("/Containers/" + theComputer + "/FactoryServer")
+ #
+ # Lancement Container Python local
+ #
+ if with_container_python:
+ ContainerPYServer().run()
+ #
- # Attente de la disponibilité du Container Python local
++ # Attente de la disponibilit?? du Container Python local
+ # dans le Naming Service
+ #
+ clt.waitNS("/Containers/" + theComputer + "/FactoryServerPy")
+
+ if with_container_superv:
+ #
+ # Lancement Container Supervision local
+ #
+ ContainerSUPERVServer().run()
+ #
- # Attente de la disponibilité du Container Supervision local
++ # Attente de la disponibilit?? du Container Supervision local
+ # dans le Naming Service
+ #
+ clt.waitNS("/Containers/" + theComputer + "/SuperVisionContainer")
+ #
+ # Activation du GUI de Session Server
+ #
+ #session.GetInterface()
- end_time = os.times()
- print
- print "Start SALOME, elpased time : %5.1f seconds"% (end_time[4] - init_time[4])
+ end_time = os.times()
+ print()
+ print("Start SALOME, elpased time : %5.1f seconds"% (end_time[4] - init_time[4]))
- return clt
+ return clt
#
# -----------------------------------------------------------------------------
#
if __name__ == "__main__":
- clt=None
- try:
- clt = startSalome()
- except:
- print
- print
- print "--- erreur au lancement Salome ---"
-
- #print process_id
-
-
- filedict='/tmp/'+os.getenv('USER')+'_SALOME_pidict'
- #filedict='/tmp/'+os.getlogin()+'_SALOME_pidict'
-
- fpid=open(filedict, 'w')
- pickle.dump(process_id,fpid)
- fpid.close()
-
- print """
-
- Sauvegarde du dictionnaire des process dans , %s
- Pour tuer les process SALOME, executer : python killSalome.py depuis
- une console, ou bien killSalome() depuis le present interpreteur,
- s'il n'est pas ferm�.
-
- runSalome, avec l'option --killall, commence par tuer les process restants
- d'une execution pr�c�dente.
-
- Pour lancer uniquement le GUI, executer startGUI() depuis le present interpreteur,
- s'il n'est pas ferm�.
-
- """ % filedict
-
- #
- # Impression arborescence Naming Service
- #
-
- if clt != None:
- print
- print " --- registered objects tree in Naming Service ---"
- clt.showNS()
- session=clt.waitNS("/Kernel/Session")
- catalog=clt.waitNS("/Kernel/ModulCatalog")
- import socket
- container = clt.waitNS("/Containers/" + socket.gethostname().split('.')[0] + "/FactoryServerPy")
-
- if os.path.isfile("~/.salome/pystartup"):
- f=open(os.path.expanduser("~/.salome/pystartup"),'w')
- PYTHONSTARTUP=f.read()
- f.close()
- else:
- PYTHONSTARTUP="""
- # Add auto-completion and a stored history file of commands to your Python
- # interactive interpreter. Requires Python 2.0+, readline. Autocomplete is
- # bound to the TAB key by default (you can change it - see readline docs).
- #
- # Store the history in ~/.salome/pyhistory,
- #
- import atexit
- import os
- import readline
- import rlcompleter
- readline.parse_and_bind('tab: complete')
+ clt=None
+ try:
+ clt = startSalome()
+ except:
+ print()
+ print()
+ print("--- erreur au lancement Salome ---")
+
+ #print process_id
+
+
+ filedict='/tmp/'+os.getenv('USER')+'_SALOME_pidict'
+ #filedict='/tmp/'+os.getlogin()+'_SALOME_pidict'
+
+ fpid=open(filedict, 'w')
+ pickle.dump(process_id,fpid)
+ fpid.close()
+
+ print("""
+
+ Sauvegarde du dictionnaire des process dans , %s
+ Pour tuer les process SALOME, executer : python killSalome.py depuis
+ une console, ou bien killSalome() depuis le present interpreteur,
- s'il n'est pas fermé.
++ s'il n'est pas ferm??.
+
+ runSalome, avec l'option --killall, commence par tuer les process restants
- d'une execution précédente.
++ d'une execution pr??c??dente.
+
+ Pour lancer uniquement le GUI, executer startGUI() depuis le present interpreteur,
- s'il n'est pas fermé.
++ s'il n'est pas ferm??.
+
+ """ % filedict)
+
+ #
+ # Impression arborescence Naming Service
+ #
+
+ if clt != None:
+ print()
+ print(" --- registered objects tree in Naming Service ---")
+ clt.showNS()
+ session=clt.waitNS("/Kernel/Session")
+ catalog=clt.waitNS("/Kernel/ModulCatalog")
+ import socket
+ container = clt.waitNS("/Containers/" + socket.gethostname().split('.')[0] + "/FactoryServerPy")
+
+ if os.path.isfile("~/.salome/pystartup"):
+ f=open(os.path.expanduser("~/.salome/pystartup"),'w')
+ PYTHONSTARTUP=f.read()
+ f.close()
+ else:
+ PYTHONSTARTUP="""
+ # Add auto-completion and a stored history file of commands to your Python
+ # interactive interpreter. Requires Python 2.0+, readline. Autocomplete is
+ # bound to the TAB key by default (you can change it - see readline docs).
+ #
+ # Store the history in ~/.salome/pyhistory,
+ #
+ import atexit
+ import os
+ import readline
+ import rlcompleter
+ readline.parse_and_bind('tab: complete')
- historyPath = os.path.expanduser("~/.salome/pyhistory")
+ historyPath = os.path.expanduser("~/.salome/pyhistory")
- def save_history(historyPath=historyPath):
- import readline
- readline.write_history_file(historyPath)
+ def save_history(historyPath=historyPath):
+ import readline
+ readline.write_history_file(historyPath)
- if os.path.exists(historyPath):
- readline.read_history_file(historyPath)
+ if os.path.exists(historyPath):
+ readline.read_history_file(historyPath)
- atexit.register(save_history)
- del os, atexit, readline, rlcompleter, save_history, historyPath
- """
- f=open(os.path.expanduser("~/.salome/pystartup"),'w')
- f.write(PYTHONSTARTUP)
- f.close()
+ atexit.register(save_history)
+ del os, atexit, readline, rlcompleter, save_history, historyPath
+ """
+ f=open(os.path.expanduser("~/.salome/pystartup"),'w')
+ f.write(PYTHONSTARTUP)
+ f.close()
- exec PYTHONSTARTUP in {}
-
+ exec(PYTHONSTARTUP, {})
<code> param['hostname']=machine</code>
<code> param['container_name']=container</code>
<code> compo=salome.lcc.LoadComponent(param, "HELLO")</code>
- <code> print compo.hello(p1)</code>
- <code> print p1</code>
- <code> print(compo.hello(salome.myStudy, p1))</code>
++ <code> print(compo.hello(p1))</code>
+ <code> print(p1)</code>
</function>
<load container="A"/>
<inport name="p1" type="string"/>
<code> param['hostname']=machine</code>
<code> param['container_name']=container</code>
<code> compo=salome.lcc.LoadComponent(param, "HELLO")</code>
- <code> print compo.hello(p1)</code>
- <code> print p1</code>
- <code> print(compo.hello(salome.myStudy, p1))</code>
++ <code> print(compo.hello(p1))</code>
+ <code> print(p1)</code>
</function>
<inport name="p1" type="string"/>
</sinline>
<code> param['hostname']=machine</code>
<code> param['container_name']=container</code>
<code> compo=salome.lcc.LoadComponent(param, "HELLO")</code>
- <code> print compo.hello(p1)</code>
- <code> print p1</code>
- <code> print(compo.hello(salome.myStudy, p1))</code>
++ <code> print(compo.hello(p1))</code>
+ <code> print(p1)</code>
</function>
<load container="A"/>
<inport name="p1" type="string"/>
<code> param['hostname']=machine</code>
<code> param['container_name']=container</code>
<code> compo=salome.lcc.LoadComponent(param, "HELLO")</code>
- <code> print compo.hello(p1)</code>
- <code> print p1</code>
- <code> print(compo.hello(salome.myStudy, p1))</code>
++ <code> print(compo.hello(p1))</code>
+ <code> print(p1)</code>
</function>
<inport name="p1" type="string"/>
</sinline>