+// SUPERV GraphEditor : contains classes that permit edition of graphs
+//
+// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// 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 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
+//
+//
+//
+// File : DataFlowEditor_InNode.hxx
+// Module : SUPERV
+
#ifndef _DATAFLOWEDITOR_INNODE_HXX
#define _DATAFLOWEDITOR_INNODE_HXX
+#include "DataFlowBase_Graph.hxx"
#include "DataFlowBase_FactoryNode.hxx"
#include "DataFlowBase_GOTONode.hxx"
#include "DataFlowBase_LoopNode.hxx"
GraphBase::EndOfLoopNode * _EndOfLoopNode ;
GraphBase::SwitchNode * _SwitchNode ;
GraphBase::EndOfSwitchNode * _EndOfSwitchNode ;
+ GraphBase::Graph * _GraphMacroNode ;
public:
InNode() ;
+// InNode(GraphBase::GOTONode * aGOTONode ) ;
InNode( CORBA::ORB_ptr ORB,
SALOME_NamingService* ptrNamingService ,
GraphBase::ListOfFuncName aFuncName ,
const int NodeX ,
const int NodeY ,
int * Graph_prof_debug = NULL ,
- ostream * Graph_fdebug = NULL ) ;
+ ofstream * Graph_fdebug = NULL ) ;
virtual ~InNode() ;
char * Name() const { return _ComputingNode->Name() ; } ;
return _ComputingNode->IsOneOfInLineNodes() ; } ;
const bool IsOneOfGOTONodes() const {
return _ComputingNode->IsOneOfGOTONodes() ; } ;
+ const bool IsMacroNode() const {
+ return _ComputingNode->IsMacroNode() ; } ;
const bool IsDataFlowNode() const {
return _ComputingNode->IsDataFlowNode() ; } ;
+ const bool IsDataStreamNode() const {
+ return _ComputingNode->IsDataStreamNode() ; } ;
const bool IsGOTONode() const {
return _ComputingNode->IsGOTONode() ; } ;
const bool IsLoopNode() const {
return _SwitchNode ; } ;
GraphBase::EndOfSwitchNode * EndOfSwitchNode() {
return _EndOfSwitchNode ; } ;
+ GraphBase::Graph * GraphMacroNode() {
+ return _GraphMacroNode ; } ;
SUPERV::CNode_var ObjRef() const { return _ComputingNode->ObjRef() ; } ;
void SetObjRef(SUPERV::CNode_var aNode) {
_ComputingNode->SetObjRef( aNode ) ; } ;
+ CNode_Impl * ObjImpl() const { return _ComputingNode->ObjImpl() ; } ;
+ void SetObjImpl( CNode_Impl * aGraph ) {
+ _ComputingNode->SetObjImpl( aGraph ) ; } ;
+
const SALOME_ModuleCatalog::Service * GetService() const {
return _ComputingNode->GetService() ; } ;
return _ComputingNode->GetInfo() ; } ;
GraphBase::InPort * AddInPort( const char * InputParameterName ,
- const char * InputParameterType ) {
+ const char * InputParameterType ,
+ const SUPERV::KindOfPort aKindOfPort ) {
return _ComputingNode->AddInPort( InputParameterName ,
- InputParameterType ) ; } ;
+ InputParameterType ,
+ aKindOfPort ) ; } ;
GraphBase::OutPort * AddOutPort( const char * OutputParameterName ,
- const char * OutputParameterType ) {
+ const char * OutputParameterType ,
+ const SUPERV::KindOfPort aKindOfPort ) {
return _ComputingNode->AddOutPort( OutputParameterName ,
- OutputParameterType ) ; } ;
+ OutputParameterType ,
+ aKindOfPort ) ; } ;
+ int IncrDataStreamInPorts() {
+ return _ComputingNode->IncrDataStreamInPorts() ;
+ } ;
+ int IncrDataStreamOutPorts() {
+ return _ComputingNode->IncrDataStreamOutPorts() ;
+ } ;
void DelInPort( const char * InputParameterName ) {
_ComputingNode->DelInPort( InputParameterName ) ; } ;
int SubGraph() {
return _ComputingNode->SubGraph() ; } ;
+ int SubStreamGraph() {
+ return _ComputingNode->SubStreamGraph() ; } ;
char * ComponentName() const {
return _FactoryNode->ComponentName() ; } ;