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
25 # Author : Paul RASCLE, EDF
30 from omniORB import CORBA
31 from LifeCycleCORBA import *
32 from libSALOME_Swig import *
34 from SALOME_NamingServicePy import *
36 #--------------------------------------------------------------------------
38 def DumpComponent(Study, SO, offset):
39 it = Study.NewChildIterator(SO)
40 Builder = Study.NewBuilder()
44 anAttr = Builder.FindOrCreateAttribute(CSO, "AttributeName")
45 AtName = anAttr._narrow(SALOMEDS.AttributeName)
46 t_name = AtName.Value()
53 print a + ">" + CSO.GetID() + " " + t_name[1]
54 t_RefSO = CSO.ReferencedObject()
62 print a + ">" + RefSO.GetID()
63 DumpComponent(Study, CSO, offset+2)
65 #--------------------------------------------------------------------------
68 itcomp = Study.NewComponentIterator()
72 name = SC.ComponentDataType()
73 print "-> ComponentDataType is " + name
74 DumpComponent(Study, SC, 1)
77 #--------------------------------------------------------------------------
80 orb = CORBA.ORB_init([''], CORBA.ORB_ID)
82 # create an LifeCycleCORBA instance
83 lcc = LifeCycleCORBA(orb)
85 # create an SALOMEGUI_Swig instance
88 #create an naming service instance
89 naming_service = SALOME_NamingServicePy_i(orb)
91 # get active study name and id
92 myStudyName = sg.getActiveStudyName()
95 myStudyId = sg.getActiveStudyId()
98 # get Study Manager reference
99 obj = naming_service.Resolve('myStudyManager')
100 myStudyManager = obj._narrow(SALOMEDS.StudyManager)
103 myStudy = myStudyManager.GetStudyByName(myStudyName)