Salome HOME
Correction of bug for HPContainers shared by different scripts.
[modules/kernel.git] / idl / SALOME_PyNode.idl
index 401b3b0e906e828aaf66f91bed50d5ffcbe15c45..5faf372ac3ca3438794f0386f38fea947a8ffbb5 100644 (file)
@@ -38,26 +38,35 @@ module Engines
   typedef sequence<octet> pickledArgs;
   typedef sequence<string> listofstring;
 
-  interface PyNode : SALOME::GenericObj
+  interface PyNodeBase : SALOME::GenericObj
   {
+    /*!
+    This methode executes the python code in \a codeStr and can append/remove symboles in context to make them available or not for future call of execute on this.
+    \param [in] codeStr - the python code (without statement) to be executed, that can modify the context initialized at initialization.
+     */
+    void executeAnotherPieceOfCode(in string codeStr) raises (SALOME::SALOME_Exception);
+  };
 
+  interface PyNode : PyNodeBase
+  {
     /*! \brief execute a python function defined in the node
 
       \param functionName the python function defined in the node to execute
       \param inargs input argument values (tuple,dict) provided as a python pickle
       \return output argument values (tuple) as a python pickle
     */
-    pickledArgs execute(in string functionName,in pickledArgs inargs) raises (SALOME::SALOME_Exception);
+    pickledArgs execute(in string functionName, in pickledArgs inargs) raises (SALOME::SALOME_Exception);
 
   } ;
 
-  interface PyScriptNode : SALOME::GenericObj
+  interface PyScriptNode : PyNodeBase
   {
     /*!
-    This methode executes the python code in \a codeStr and can append/remove symboles in context to make them available or not for future call of execute on this.
-    \param [in] codeStr - the python code (without statement) to be executed, that can modify the context initialized at initialization.
+      This method compiles, but NOT EXECUTE, the code \a codeStr. The result of the compiled code will be used then
+      on execute step.
+      \param codeStr - the python code (without statement) to be executed, that can modify the context initialized at initialization.
      */
-    void executeAnotherPieceOfCode(in string codeStr)  raises (SALOME::SALOME_Exception);
+    void assignNewCompiledCode(in string codeStr) raises (SALOME::SALOME_Exception);
 
     /*! \brief execute a python script defined in the node