Salome HOME
Moved some functionality to VTKViewer_Utilities.h
[modules/kernel.git] / src / ModuleCatalog / SALOME_TestModuleCatalog.py
1 import batchmode_salome
2 import SALOME_ModuleCatalog
3
4 print
5 print "======================================================================"
6 print "           XML Catalog file generation from idl file"
7 print "======================================================================"
8
9 import os
10 os.system('runIDLparser -Wbcatalog=x \
11                  ${KERNEL_ROOT_DIR}/idl/salome/SALOME_TestModuleCatalog.idl')
12
13 print "======================================================================"
14 print "           Get Catalog "
15 print "======================================================================"
16 obj = batchmode_salome.naming_service.Resolve('Kernel/ModulCatalog')
17 catalog = obj._narrow(SALOME_ModuleCatalog.ModuleCatalog)
18 catalog.GetComponentList()
19
20 print 
21 print "======================================================================"
22 print "           Import xml file "
23 print "======================================================================"
24 catalog.ImportXmlCatalogFile("x.xml")
25
26 name = "AddComponent"
27 print 
28 print "======================================================================"
29 print "           Dump component <", name, "> "
30 print "======================================================================"
31 C = catalog.GetComponent(name)
32
33 print "name       : ", C._get_componentname()
34 print "username   : ", C._get_componentusername()
35 print "type       : ", C._get_component_type()
36 print "constraint : ", C._get_constraint()
37 print "icon       : ", C._get_component_icone()
38
39 for iL in C.GetInterfaceList():
40     I = C.GetInterface(iL)
41     print "interface  : ", I.interfacename
42     for S in I.interfaceservicelist:
43         print "  service : ", S.ServiceName
44         print "    ", len(S.ServiceinParameter), "in params : "
45         for iP in S.ServiceinParameter:
46             print '      ' + iP.Parametername + '(' + iP.Parametertype + ')'
47             pass
48         print "    ", len(S.ServiceoutParameter), "out params : "
49         for iP in S.ServiceoutParameter:
50             print '      ' + iP.Parametername + '(' + iP.Parametertype + ')'
51             pass
52         print "    ", len(S.ServiceinDataStreamParameter), "in datastream params : "
53         for iP in S.ServiceinDataStreamParameter:
54             print '      ' + iP.Parametername + '(' + str(iP.Parametertype) + ', ' + \
55                   str(iP.Parameterdependency) + ')'
56             pass
57         print "    ", len(S.ServiceoutDataStreamParameter), "out datastream params : "
58         for iP in S.ServiceoutDataStreamParameter:
59             print '      ' + iP.Parametername + '(' + str(iP.Parametertype) + ', ' + \
60                   str(iP.Parameterdependency) + ')'
61             pass
62         pass
63     pass
64