2 # -*- coding: iso-8859-1 -*-
3 # Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
5 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
6 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
8 # This library is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU Lesser General Public
10 # License as published by the Free Software Foundation; either
11 # version 2.1 of the License.
13 # This library is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 # Lesser General Public License for more details.
18 # You should have received a copy of the GNU Lesser General Public
19 # License along with this library; if not, write to the Free Software
20 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 # 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 "======================================================================"
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) + ')'