X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2Fengine%2FDataStreamPort.cxx;h=b43af41ab6cbe906db24a303c17b4c33a438cd24;hb=255150e4eec79294bbd06c7c464f309b4a264960;hp=258e21925338753ad4211be1ba59aca923246c60;hpb=ff62f5bf18722d2f93b2f924411bda0e9550d590;p=modules%2Fyacs.git diff --git a/src/engine/DataStreamPort.cxx b/src/engine/DataStreamPort.cxx index 258e21925..b43af41ab 100644 --- a/src/engine/DataStreamPort.cxx +++ b/src/engine/DataStreamPort.cxx @@ -1,14 +1,86 @@ +// 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, 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. +// +// 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 +// + #include "DataStreamPort.hxx" +#include using namespace YACS::ENGINE; +using namespace std; const char DataStreamPort::NAME[]="DataStreamPort"; -DataStreamPort::DataStreamPort(const std::string& name, Node *node, StreamType type):Port(node),_name(name),_edType(type) +DataStreamPort::DataStreamPort(const DataStreamPort& other, Node *newHelder):DataPort(other,newHelder),Port(other,newHelder),_propertyMap(other._propertyMap) +{ +} + +DataStreamPort::DataStreamPort(const std::string& name, Node *node, TypeCode* type):DataPort(name,node,type),Port(node) +{ +} + +DataStreamPort::~DataStreamPort() { } -std::string DataStreamPort::getNameOfTypeOfCurrentInstance() const +string DataStreamPort::getNameOfTypeOfCurrentInstance() const { return NAME; } + +//! Set a new value for a property of the port +/*! + * \param name : the name property + * \param value : the value property + */ +void DataStreamPort::setProperty(const std::string& name, const std::string& value) +{ + _propertyMap[name]=value; +} + +//! Get the value of a property of the port +/*! + * \param name : the name property + * \return the value property + */ +std::string DataStreamPort::getProperty(const std::string& name) +{ + return _propertyMap[name]; +} + +//! Set the values of all properties of the port +/*! + * \param properties : a map containing the values of properties + */ +void DataStreamPort::setProperties(std::map properties) +{ + _propertyMap.clear(); + std::map::iterator it; + for (it = properties.begin(); it != properties.end(); ++it) + { + setProperty((*it).first, (*it).second); // setProperty virtual and derived + } +} + +//! Initialize port properties at the start of calculation phase +/*! + * This method is called before the execution of the parent node. + * It is not used when the user sets properties + */ +void DataStreamPort::initPortProperties() +{ +}