X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2FPythonNode.hxx;h=1c83f75820675c939acc526cbfccb75a54758305;hb=4dae3b5416a884361d80462dc4d6ccb59a6f2503;hp=abf6b3d86edc9065d092e66aa03a96e6bcbe44ae;hpb=73af7eeb5a583a94c41c3fd88d150adf3efc9063;p=modules%2Fyacs.git diff --git a/src/runtime/PythonNode.hxx b/src/runtime/PythonNode.hxx index abf6b3d86..1c83f7582 100644 --- a/src/runtime/PythonNode.hxx +++ b/src/runtime/PythonNode.hxx @@ -34,6 +34,11 @@ namespace YACS { class YACSRUNTIMESALOME_EXPORT PythonEntry { + public: + /*! return true only if ob is a proxy and destroy flag set to true*/ + static bool GetDestroyStatus( PyObject *ob ); + static void DoNotTouchFileIfProxy( PyObject *ob ); + static void UnlinkOnDestructorIfProxy( PyObject *ob ); protected: PythonEntry(); ~PythonEntry(); @@ -51,12 +56,13 @@ namespace YACS void loadRemoteContext(InlineNode *reqNode, Engines::Container_ptr objContainer, bool isInitializeRequested); static std::string GetContainerLog(const std::string& mode, Container *container, const Task *askingTask); virtual bool hasImposedResource()const; + static void IfProxyDoSomething( PyObject *ob, const char *meth ); protected: PyObject *_context; PyObject *_pyfuncSer; PyObject *_pyfuncUnser; PyObject *_pyfuncSimpleSer; - PyObject *_pyClsBigObject; + static PyObject *_pyClsBigObject; std::string _imposedResource; std::string _imposedContainer; public: