1 # -*- coding: iso-8859-1 -*-
2 # Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
4 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
5 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
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.
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.
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
21 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
24 import batchmode_salome
25 import SALOME_ModuleCatalog
28 print("======================================================================")
29 print(" XML Catalog file generation from idl file")
30 print("======================================================================")
33 os.system('runIDLparser -Wbcatalog=x \
34 ${KERNEL_ROOT_DIR}/idl/salome/SALOME_TestModuleCatalog.idl')
36 print("======================================================================")
37 print(" Get Catalog ")
38 print("======================================================================")
39 obj = batchmode_salome.naming_service.Resolve('Kernel/ModulCatalog')
40 catalog = obj._narrow(SALOME_ModuleCatalog.ModuleCatalog)
41 catalog.GetComponentList()
44 print("======================================================================")
45 print(" Import xml file ")
46 print("======================================================================")
47 catalog.ImportXmlCatalogFile("x.xml")
51 print("======================================================================")
52 print(" Dump component <", name, "> ")
53 print("======================================================================")
54 C = catalog.GetComponent(name)
56 print("name : ", C._get_componentname())
57 print("username : ", C._get_componentusername())
58 print("type : ", C._get_component_type())
59 print("constraint : ", C._get_constraint())
60 print("icon : ", C._get_component_icone())
62 for iL in C.GetInterfaceList():
63 I = C.GetInterface(iL)
64 print("interface : ", I.interfacename)
65 for S in I.interfaceservicelist:
66 print(" service : ", S.ServiceName)
67 print(" ", len(S.ServiceinParameter), "in params : ")
68 for iP in S.ServiceinParameter:
69 print(' ' + iP.Parametername + '(' + iP.Parametertype + ')')
71 print(" ", len(S.ServiceoutParameter), "out params : ")
72 for iP in S.ServiceoutParameter:
73 print(' ' + iP.Parametername + '(' + iP.Parametertype + ')')
75 print(" ", len(S.ServiceinDataStreamParameter), "in datastream params : ")
76 for iP in S.ServiceinDataStreamParameter:
77 print(' ' + iP.Parametername + '(' + str(iP.Parametertype) + ', ' + \
78 str(iP.Parameterdependency) + ')')
80 print(" ", len(S.ServiceoutDataStreamParameter), "out datastream params : ")
81 for iP in S.ServiceoutDataStreamParameter:
82 print(' ' + iP.Parametername + '(' + str(iP.Parametertype) + ', ' + \
83 str(iP.Parameterdependency) + ')')