Salome HOME
Updated copyright comment
[modules/yacs.git] / src / wrappergen / src / HXX2SALOME_GENERIC_CLASS_NAME_SRC / bin / runSalome.py
index 4fcfc55bda86a357e500dbcf76f9248c11060ab0..e841002f7b785412f75466544293f1ff8a9c1080 100755 (executable)
@@ -1,5 +1,5 @@
-#!/usr/bin/env python
-# Copyright (C) 2006-2016  CEA/DEN, EDF R&D
+#!/usr/bin/env python3
+# Copyright (C) 2006-2024  CEA, EDF
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
@@ -24,30 +24,30 @@ usage="""USAGE: runSalome.py [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
+--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
 
- 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
 #
 
 def killSalome():
-    print "arret des serveurs SALOME"
-    for pid, cmd in process_id.items():
-        print "arret du process %s : %s"% (pid, cmd[0])
+    print("arret des serveurs SALOME")
+    for pid, cmd in list(process_id.items()):
+        print("arret du process %s : %s"% (pid, cmd[0]))
         try:
             os.kill(pid,signal.SIGKILL)
         except:
-            print "  ------------------ process %s : %s inexistant"% (pid, cmd[0])
-    print "arret du naming service"
+            print("  ------------------ process %s : %s inexistant"% (pid, cmd[0]))
+    print("arret du naming service")
     os.system("killall -9 omniNames")
 
 # -----------------------------------------------------------------------------
@@ -56,7 +56,7 @@ def killSalome():
 #
 
 def message(code, msg=''):
-    if msg: print msg
+    if msg: print(msg)
     sys.exit(code)
 
 import sys,os,string,glob,time,signal,pickle,getopt
@@ -78,7 +78,7 @@ with_container_superv=0
 try:
     for o, a in opts:
         if o in ('-h', '--help'):
-            print usage
+            print(usage)
             sys.exit(1)
         elif o in ('-g', '--gui'):
             with_gui=1
@@ -113,7 +113,7 @@ try:
                 fpid=open(filedict, 'r')
                 found = 1
             except:
-                print "le fichier %s des process SALOME n'est pas accessible"% filedict
+                print("le fichier %s des process SALOME n'est pas accessible"% filedict)
 
             if found:
                 process_id=pickle.load(fpid)
@@ -122,19 +122,19 @@ try:
                 process_id={}
                 os.remove(filedict)
 
-except getopt.error, msg:
-    print usage
+except getopt.error as msg:
+    print(usage)
     sys.exit(1)
 
 # -----------------------------------------------------------------------------
 #
-# 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
 except:
-    print usage
+    print(usage)
     sys.exit(1)
 
 for module in liste_modules :
@@ -143,12 +143,12 @@ for module in liste_modules :
         module_root_dir=os.environ[module +"_ROOT_DIR"]
         modules_root_dir[module]=module_root_dir
     except:
-        print usage
+        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,
 #   il faut charger les modules python du KERNEL en premier
 
 if "KERNEL" in liste_modules:liste_modules.remove("KERNEL")
@@ -156,13 +156,13 @@ liste_modules[:0]=["KERNEL"]
 #print liste_modules
 #print modules_root_dir
 
-os.environ["SALOMEPATH"]=":".join(modules_root_dir.values())
+os.environ["SALOMEPATH"]=":".join(list(modules_root_dir.values()))
 if "SUPERV" in liste_modules:with_container_superv=1
 
 
 # -----------------------------------------------------------------------------
 #
-# 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:
@@ -180,14 +180,15 @@ class Server:
 
 class CatalogServer(Server):
     SCMD1=['SALOME_ModuleCatalog_Server','-common']
-    SCMD2=['-personal','${HOME}/Salome/resources/CatalogModulePersonnel.xml']
+    home_dir=os.path.expanduser("~")
+    SCMD2=['-personal',os.path.join(home_dir,'Salome', 'resources', 'CatalogModulePersonnel.xml')]
 
     def setpath(self,liste_modules):
         cata_path=[]
         for module in liste_modules:
             module_root_dir=modules_root_dir[module]
             module_cata=module+"Catalog.xml"
-            print "   ", module_cata
+            print("   ", module_cata)
             cata_path.extend(glob.glob(os.path.join(module_root_dir,"share","salome","resources",module_cata)))
         self.CMD=self.SCMD1 + [string.join(cata_path,':')] + self.SCMD2
 
@@ -342,7 +343,7 @@ def startSalome():
     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")
 
@@ -354,7 +355,7 @@ def startSalome():
     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)
@@ -367,12 +368,12 @@ def startSalome():
     SalomeDSServer().run()
 
     if "GEOM" in liste_modules:
-        print "GEOM OCAF Resources"
+        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")
 
@@ -382,7 +383,7 @@ def startSalome():
     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)
@@ -399,7 +400,7 @@ def startSalome():
     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 + "/FactoryServer")
@@ -409,7 +410,7 @@ def startSalome():
     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")
@@ -420,7 +421,7 @@ def startSalome():
         #
         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")
@@ -430,8 +431,8 @@ def startSalome():
     #session.GetInterface()
 
     end_time = os.times()
-    print
-    print "Start SALOME, elpased time : %5.1f seconds"% (end_time[4] - init_time[4])
+    print()
+    print("Start SALOME, elpased time : %5.1f seconds"% (end_time[4] - init_time[4]))
 
     return clt
 
@@ -444,9 +445,9 @@ if __name__ == "__main__":
     try:
         clt = startSalome()
     except:
-        print
-        print
-        print "--- erreur au lancement Salome ---"
+        print()
+        print()
+        print("--- erreur au lancement Salome ---")
 
     #print process_id
 
@@ -458,28 +459,28 @@ if __name__ == "__main__":
     pickle.dump(process_id,fpid)
     fpid.close()
 
-    print """
+    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
+ """ % filedict)
 
     #
     #  Impression arborescence Naming Service
     #
 
     if clt != None:
-        print
-        print " --- registered objects tree in Naming Service ---"
+        print()
+        print(" --- registered objects tree in Naming Service ---")
         clt.showNS()
         session=clt.waitNS("/Kernel/Session")
         catalog=clt.waitNS("/Kernel/ModulCatalog")
@@ -520,4 +521,4 @@ if __name__ == "__main__":
         f.write(PYTHONSTARTUP)
         f.close()
 
-    exec PYTHONSTARTUP in {}
+    exec(PYTHONSTARTUP, {})