X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2FNeutralPythonConv.cxx;h=fc1e41c3c1636e7ea3e5030bba97c23bfc8460f1;hb=255150e4eec79294bbd06c7c464f309b4a264960;hp=add83cb4759933eef90035cd06335d797c9ff5f4;hpb=f4c10bf1781a76534bb1fa293aef541aef56148b;p=modules%2Fyacs.git diff --git a/src/runtime/NeutralPythonConv.cxx b/src/runtime/NeutralPythonConv.cxx index add83cb47..fc1e41c3c 100644 --- a/src/runtime/NeutralPythonConv.cxx +++ b/src/runtime/NeutralPythonConv.cxx @@ -1,21 +1,22 @@ -// Copyright (C) 2006-2008 CEA/DEN, EDF R&D +// Copyright (C) 2006-2023 CEA, EDF // -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. // -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + #include "TypeConversions.hxx" #include "NeutralPythonConv.hxx" #include "RuntimeSALOME.hxx" @@ -29,7 +30,7 @@ using namespace YACS::ENGINE; using namespace std; -void NeutralPyDouble::put(const void *data) throw(ConversionException) +void NeutralPyDouble::put(const void *data) { put((YACS::ENGINE::Any *)data); } @@ -38,7 +39,7 @@ void NeutralPyDouble::put(const void *data) throw(ConversionException) /*! * \param data : YACS::ENGINE::Any object */ -void NeutralPyDouble::put(YACS::ENGINE::Any *data) throw(ConversionException) +void NeutralPyDouble::put(YACS::ENGINE::Any *data) { InterpreterUnlocker loc; PyObject* ob=convertNeutralPyObject(edGetType(),data); @@ -48,7 +49,7 @@ void NeutralPyDouble::put(YACS::ENGINE::Any *data) throw(ConversionException) } -void NeutralPyInt::put(const void *data) throw(ConversionException) +void NeutralPyInt::put(const void *data) { put((YACS::ENGINE::Any *)data); } @@ -57,7 +58,7 @@ void NeutralPyInt::put(const void *data) throw(ConversionException) /*! * \param data : YACS::ENGINE::Any object */ -void NeutralPyInt::put(YACS::ENGINE::Any *data) throw(ConversionException) +void NeutralPyInt::put(YACS::ENGINE::Any *data) { InterpreterUnlocker loc; PyObject* ob=convertNeutralPyObject(edGetType(),data); @@ -66,7 +67,7 @@ void NeutralPyInt::put(YACS::ENGINE::Any *data) throw(ConversionException) Py_DECREF(ob); } -void NeutralPyString::put(const void *data) throw(ConversionException) +void NeutralPyString::put(const void *data) { put((YACS::ENGINE::Any *)data); } @@ -75,7 +76,7 @@ void NeutralPyString::put(const void *data) throw(ConversionException) /*! * \param data : YACS::ENGINE::Any object */ -void NeutralPyString::put(YACS::ENGINE::Any *data) throw(ConversionException) +void NeutralPyString::put(YACS::ENGINE::Any *data) { InterpreterUnlocker loc; PyObject* ob=convertNeutralPyObject(edGetType(),data); @@ -84,7 +85,7 @@ void NeutralPyString::put(YACS::ENGINE::Any *data) throw(ConversionException) Py_DECREF(ob); } -void NeutralPyBool::put(const void *data) throw(ConversionException) +void NeutralPyBool::put(const void *data) { put((YACS::ENGINE::Any *)data); } @@ -93,7 +94,7 @@ void NeutralPyBool::put(const void *data) throw(ConversionException) /*! * \param data : YACS::ENGINE::Any object */ -void NeutralPyBool::put(YACS::ENGINE::Any *data) throw(ConversionException) +void NeutralPyBool::put(YACS::ENGINE::Any *data) { InterpreterUnlocker loc; PyObject* ob=convertNeutralPyObject(edGetType(),data); @@ -102,7 +103,7 @@ void NeutralPyBool::put(YACS::ENGINE::Any *data) throw(ConversionException) Py_DECREF(ob); } -void NeutralPyObjref::put(const void *data) throw(ConversionException) +void NeutralPyObjref::put(const void *data) { put((YACS::ENGINE::Any *)data); } @@ -111,7 +112,7 @@ void NeutralPyObjref::put(const void *data) throw(ConversionException) /*! * \param data : Neutral::Any object */ -void NeutralPyObjref::put(YACS::ENGINE::Any *data) throw(ConversionException) +void NeutralPyObjref::put(YACS::ENGINE::Any *data) { InterpreterUnlocker loc; PyObject* ob=convertNeutralPyObject(edGetType(),data); @@ -121,7 +122,7 @@ void NeutralPyObjref::put(YACS::ENGINE::Any *data) throw(ConversionException) DEBTRACE( "ob refcnt: " << ob->ob_refcnt ); } -void NeutralPySequence::put(const void *data) throw(ConversionException) +void NeutralPySequence::put(const void *data) { put((YACS::ENGINE::Any *)data); } @@ -130,7 +131,7 @@ void NeutralPySequence::put(const void *data) throw(ConversionException) /*! * \param data : Neutral::Any object */ -void NeutralPySequence::put(YACS::ENGINE::Any *data) throw(ConversionException) +void NeutralPySequence::put(YACS::ENGINE::Any *data) { DEBTRACE( "--------NeutralPySequence::put" ); InterpreterUnlocker loc; @@ -146,4 +147,21 @@ void NeutralPySequence::put(YACS::ENGINE::Any *data) throw(ConversionException) DEBTRACE( "ob refcnt: " << ob->ob_refcnt ); } +void NeutralPyStruct::put(const void *data) +{ + put((YACS::ENGINE::Any *)data); +} +//!Convert a Neutral::Any Struct to a PyObject Struct +/*! + * \param data : Neutral::Any object + */ +void NeutralPyStruct::put(YACS::ENGINE::Any *data) +{ + InterpreterUnlocker loc; + PyObject* ob=convertNeutralPyObject(edGetType(),data); + DEBTRACE( "ob refcnt: " << ob->ob_refcnt ); + _port->put(ob); + Py_DECREF(ob); + DEBTRACE( "ob refcnt: " << ob->ob_refcnt ); +}