1 # -*- coding: iso-8859-1 -*-
2 # Copyright (C) 2007-2008 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.
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
23 import batchmode_salome
24 import SALOME_ModuleCatalog
27 print "======================================================================"
28 print " XML Catalog file generation from idl file"
29 print "======================================================================"
32 os.system('runIDLparser -Wbcatalog=x \
33 ${KERNEL_ROOT_DIR}/idl/salome/SALOME_TestModuleCatalog.idl')
35 print "======================================================================"
37 print "======================================================================"
38 obj = batchmode_salome.naming_service.Resolve('Kernel/ModulCatalog')
39 catalog = obj._narrow(SALOME_ModuleCatalog.ModuleCatalog)
40 catalog.GetComponentList()
43 print "======================================================================"
44 print " Import xml file "
45 print "======================================================================"
46 catalog.ImportXmlCatalogFile("x.xml")
50 print "======================================================================"
51 print " Dump component <", name, "> "
52 print "======================================================================"
53 C = catalog.GetComponent(name)
55 print "name : ", C._get_componentname()
56 print "username : ", C._get_componentusername()
57 print "type : ", C._get_component_type()
58 print "constraint : ", C._get_constraint()
59 print "icon : ", C._get_component_icone()
61 for iL in C.GetInterfaceList():
62 I = C.GetInterface(iL)
63 print "interface : ", I.interfacename
64 for S in I.interfaceservicelist:
65 print " service : ", S.ServiceName
66 print " ", len(S.ServiceinParameter), "in params : "
67 for iP in S.ServiceinParameter:
68 print ' ' + iP.Parametername + '(' + iP.Parametertype + ')'
70 print " ", len(S.ServiceoutParameter), "out params : "
71 for iP in S.ServiceoutParameter:
72 print ' ' + iP.Parametername + '(' + iP.Parametertype + ')'
74 print " ", len(S.ServiceinDataStreamParameter), "in datastream params : "
75 for iP in S.ServiceinDataStreamParameter:
76 print ' ' + iP.Parametername + '(' + str(iP.Parametertype) + ', ' + \
77 str(iP.Parameterdependency) + ')'
79 print " ", len(S.ServiceoutDataStreamParameter), "out datastream params : "
80 for iP in S.ServiceoutDataStreamParameter:
81 print ' ' + iP.Parametername + '(' + str(iP.Parametertype) + ', ' + \
82 str(iP.Parameterdependency) + ')'