X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FContainer%2FSALOME_PyNode.py;h=2feb5d4c9ceb0ddd0efbd4c131d64df39a767c1c;hb=e61c3f5e439eae3822cb22176c5493668e5a7df5;hp=9cbc8a615f1f17f8ddceacc0786c790d1a341cd5;hpb=95dc0659dad5ce5ae4fdc9177fb34108c4d902e7;p=modules%2Fkernel.git diff --git a/src/Container/SALOME_PyNode.py b/src/Container/SALOME_PyNode.py index 9cbc8a615..2feb5d4c9 100644 --- a/src/Container/SALOME_PyNode.py +++ b/src/Container/SALOME_PyNode.py @@ -1,6 +1,6 @@ #! /usr/bin/env python # -*- coding: iso-8859-1 -*- -# Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -64,6 +64,10 @@ class PyNode_i (Engines__POA.PyNode,Generic): self.context["my_container"] = self.my_container exec ccode in self.context + def defineNewCustomVar(self,varName,valueOfVar): + self.context[varName] = cPickle.loads(valueOfVar) + pass + def executeAnotherPieceOfCode(self,code): """Called for initialization of container lodging self.""" try: @@ -98,6 +102,10 @@ class PyScriptNode_i (Engines__POA.PyScriptNode,Generic): self.context={} self.context["my_container"] = self.my_container + def defineNewCustomVar(self,varName,valueOfVar): + self.context[varName] = cPickle.loads(valueOfVar) + pass + def executeAnotherPieceOfCode(self,code): """Called for initialization of container lodging self.""" try: @@ -106,6 +114,13 @@ class PyScriptNode_i (Engines__POA.PyScriptNode,Generic): except: raise SALOME.SALOME_Exception(SALOME.ExceptionStruct(SALOME.BAD_PARAM,"","PyScriptNode (%s) : code to be executed \"%s\"" %(self.nodeName,code),0)) + def assignNewCompiledCode(self,codeStr): + try: + self.code=codeStr + self.ccode=compile(codeStr,self.nodeName,'exec') + except: + raise SALOME.SALOME_Exception(SALOME.ExceptionStruct(SALOME.BAD_PARAM,"","PyScriptNode.assignNewCompiledCode (%s) : code to be executed \"%s\"" %(self.nodeName,codeStr),0)) + def execute(self,outargsname,argsin): """Execute the script stored in attribute ccode with pickled args (argsin)""" try: