1 // SUPERV GraphBase : contains fondamental classes for Services, Input Ports, Output Ports Links and Nodes.
3 // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
24 // File : DataFlowBase_InPort.cxx
25 // Author : Jean Rahuel, CEA
30 #include "DataFlowBase_InPort.hxx"
31 #include "DataFlowBase_OutPort.hxx"
33 char ** _PortStateName ;
35 GraphBase::InPort::InPort() :
37 _State = SUPERV::UndefinedState ;
39 _InitialOutPort = NULL ;
42 GraphBase::InPort::InPort(
43 const char *const * Name ,
44 const SALOME_ModuleCatalog::ServicesParameter aserviceParameter ,
45 const SUPERV::KindOfPort aKind ,
46 const SALOME_ModuleCatalog::DataStreamDependency aDependency ) :
47 Port( Name , aserviceParameter , aKind , aDependency ) {
48 _State = SUPERV::UndefinedState ;
50 _InitialOutPort = NULL ;
53 //GraphBase::InPort::~InPort() {
54 // cout << "InPort::~InPort()" << endl ;
57 bool GraphBase::InPort::IsConnected() const {
58 return ( _OutPort != NULL && !_OutPort->IsDataConnected() ) ;
61 bool GraphBase::InPort::IsDataConnected() const {
62 return ( _OutPort != NULL && _OutPort->IsDataConnected() ) ;
65 void GraphBase::InPort::StringValue(ostream & f ) const {
67 _OutPort->StringValue( f ) ;
72 ostream & operator<< (ostream &f ,const GraphBase::InPort &P) {
73 f << P.PortName() << ", "
74 << "type : " << P.PortType() << ", " ;
76 << P.NodeName() << ", ";