*/
SUPERV::Port OutPort( in string aParameterName , in string aParameterType ) ;
-/*! Creates an Input DataStreamPort in an Inline node.
-\param aParameterName This value sets the name of the parameter which will be defined in this port.
-\param aParameterType This value sets the type of the parameter which will be defined in this port.
-*/
- SUPERV::StreamPort InStreamPort( in string aParameterName , in SALOME_ModuleCatalog::DataStreamType aParameterType , in SALOME_ModuleCatalog::DataStreamDependency aDependency ) ;
+ /*! Creates an Input DataStreamPort in an Inline node.
+ \param aParameterName This value sets the name of the parameter which will be defined in this port.
+ \param aParameterType This value sets the type of the parameter which will be defined in this port.
+ */
+ SUPERV::StreamPort InStreamPort (in string aParameterName, in string aParameterType,
+ in SALOME_ModuleCatalog::DataStreamDependency aDependency);
-/*! Creates an Output DataStreamPort in an Inline node.
-\param aParameterName This value sets the name of the parameter which will be defined in this port.
-\param aParameterType This value sets the type of the parameter which will be defined in this port.
-*/
- SUPERV::StreamPort OutStreamPort( in string aParameterName , in SALOME_ModuleCatalog::DataStreamType aParameterType , in SALOME_ModuleCatalog::DataStreamDependency aDependency ) ;
+ /*! Creates an Output DataStreamPort in an Inline node.
+ \param aParameterName This value sets the name of the parameter which will be defined in this port.
+ \param aParameterType This value sets the type of the parameter which will be defined in this port.
+ */
+ SUPERV::StreamPort OutStreamPort (in string aParameterName, in string aParameterType,
+ in SALOME_ModuleCatalog::DataStreamDependency aDependency);
+ };
- } ;
/*! \brief %GNode class
This class is necessary for management of GOTO/EndLoop/EndSwitch nodes in the dataflow.
SUPERV::FNode FNode( in string aComponentName ,
in string anInterfaceName ,
in SALOME_ModuleCatalog::Service aService ,
- in boolean isCimpl ) ;
+ in SALOME_ModuleCatalog::ImplType implType ) ;
/*! Creates an InLine Node in a Graph.
*/
return *_fdebug ;
}
+/*
string DataStreamTypeToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) {
string aIdlType ;
switch ( aDataStreamType ) {
}
return aDataStreamType ;
}
+*/
+int StringToDataStreamType (const char * aIdlType)
+{
+ int aDataStreamType;
+ if (!strcmp(aIdlType, "Unknown")) aDataStreamType = 0; //SALOME_ModuleCatalog::DATASTREAM_UNKNOWN
+ else if (!strcmp(aIdlType, "int")) aDataStreamType = 1; //SALOME_ModuleCatalog::DATASTREAM_INTEGER
+ else if (!strcmp(aIdlType, "float")) aDataStreamType = 2; //SALOME_ModuleCatalog::DATASTREAM_FLOAT
+ else if (!strcmp(aIdlType, "double")) aDataStreamType = 3; //SALOME_ModuleCatalog::DATASTREAM_DOUBLE
+ else if (!strcmp(aIdlType, "string")) aDataStreamType = 4; //SALOME_ModuleCatalog::DATASTREAM_STRING
+ else if (!strcmp(aIdlType, "bool")) aDataStreamType = 5; //SALOME_ModuleCatalog::DATASTREAM_BOOLEAN
+ else aDataStreamType = 0; //SALOME_ModuleCatalog::DATASTREAM_UNKNOWN
+ return aDataStreamType;
+}
string KindOfDataStreamTraceToString( SUPERV::KindOfDataStreamTrace aDataStreamTrace ) {
string aTrace ;
return aDependency;
}
-string DataStreamToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) {
+string DataStreamToString (const char* aDataStreamType)
+{
+ string aStreamType ;
+ string type (aDataStreamType);
+
+ if (type == "Unknown") aStreamType = "Unknown";
+ else if (type == "int") aStreamType = "ENTIER";
+ else if (type == "float") aStreamType = "REEL";
+ else if (type == "double") aStreamType = "DOUBLE";
+ else if (type == "string") aStreamType = "CHAINE";
+ else if (type == "bool") aStreamType = "LOGIQUE";
+ else aStreamType = "?";
+
+ return aStreamType;
+}
+
+/*
+string DataStreamToString( const char* aDataStreamType ) {
string aStreamType ;
switch ( aDataStreamType ) {
case SALOME_ModuleCatalog::DATASTREAM_UNKNOWN : {
return f;
}
-
+*/
return t;
}
-string DataStreamTypeToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) ;
-SALOME_ModuleCatalog::DataStreamType StringToDataStreamType( const char * aIdlType ) ;
+//string DataStreamTypeToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) ;
+int StringToDataStreamType( const char * aIdlType ) ;
string KindOfDataStreamTraceToString( SUPERV::KindOfDataStreamTrace aDataStreamTrace ) ;
string DataStreamDependencyToString( const SALOME_ModuleCatalog::DataStreamDependency aDataStreamDependency ) ;
-string DataStreamToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) ;
+string DataStreamToString( const char* aDataStreamType ) ;
//enum StatusOfPort { NotConnected , PortConnected , PortAndDataConnected ,
enum StatusOfPort { NotConnected , PortConnected ,
} ;
-ostream & operator<< (ostream &,const SALOME_ModuleCatalog::DataStreamType &);
+//ostream & operator<< (ostream &,const SALOME_ModuleCatalog::DataStreamType &);
#endif
<< " " << anInPort->Kind() << endl ;
GraphBase::InPort * aNewInPort ;
if ( anInPort->IsDataStream() ) {
- aNewInPort = AddInDataStreamPort( anInPort->PortName() , StringToDataStreamType( anInPort->PortType() ) ,
- anInPort->Dependency() , anInPort->Kind() ) ;
+ aNewInPort = AddInDataStreamPort( anInPort->PortName(), anInPort->PortType(),
+ anInPort->Dependency(), anInPort->Kind() ) ;
}
else if ( anInPort->IsParam() || anInPort->IsInLine() ) {
aNewInPort = AddInPort( anInPort->PortName() , anInPort->PortType() , anInPort->Kind() ) ;
cdebug << "SetMacroPorts Out" << i << " " << anOutPort->PortName() << " " << anOutPort->PortType()
<< " " << anOutPort->Kind() << endl ;
if ( anOutPort->IsDataStream() ) {
- AddOutDataStreamPort( anOutPort->PortName() , StringToDataStreamType( anOutPort->PortType() ) ,
- anOutPort->Dependency() , anOutPort->Kind() ) ;
+ AddOutDataStreamPort( anOutPort->PortName(), anOutPort->PortType(),
+ anOutPort->Dependency(), anOutPort->Kind() ) ;
}
else if ( anOutPort->IsParam() || anOutPort->IsInLine() ) {
AddOutPort( anOutPort->PortName() , anOutPort->PortType() , anOutPort->Kind() ) ;
GraphBase::PortsOfNode::DelOutPort( OutputParameterName ) ;
}
-GraphBase::InDataStreamPort * GraphBase::ComputingNode::AddInDataStreamPort( const char * InputParameterName ,
- const SALOME_ModuleCatalog::DataStreamType InputParameterType ,
+GraphBase::InDataStreamPort * GraphBase::ComputingNode::AddInDataStreamPort( const char * InputParameterName,
+ const char * InputParameterType,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ,
const SUPERV::KindOfPort aKindOfPort ,
int index ) {
aDataStreamPort = (GraphBase::InDataStreamPort * ) GraphBase::PortsOfNode::AddInPort( _ORB , NamePtr() ,
Kind() ,
InputParameterName ,
- DataStreamTypeToString( InputParameterType ).c_str() ,
+ InputParameterType ,
aKindOfPort ,
index ,
_Graph_prof_debug ,
}
return aDataStreamPort ;
}
-GraphBase::OutDataStreamPort * GraphBase::ComputingNode::AddOutDataStreamPort( const char * OutputParameterName ,
- const SALOME_ModuleCatalog::DataStreamType OutputParameterType ,
+GraphBase::OutDataStreamPort * GraphBase::ComputingNode::AddOutDataStreamPort( const char * OutputParameterName,
+ const char * OutputParameterType,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ,
const SUPERV::KindOfPort aKindOfPort ,
int index ) {
// IncrDataStreamOutPorts() ;
GraphBase::OutDataStreamPort * aDataStreamPort ;
- aDataStreamPort = (GraphBase::OutDataStreamPort * ) GraphBase::PortsOfNode::AddOutPort( _ORB , NamePtr() ,
- Kind() ,
- OutputParameterName ,
- DataStreamTypeToString( OutputParameterType ).c_str() ,
+ aDataStreamPort = (GraphBase::OutDataStreamPort * ) GraphBase::PortsOfNode::AddOutPort( _ORB , NamePtr(),
+ Kind(),
+ OutputParameterName,
+ OutputParameterType,
aKindOfPort ,
index ,
_Graph_prof_debug ,
DataStreamlist.appendChild(inParameter) ;
QDomElement inParametertype = Graph.createElement("inParameter-type") ;
QString aType ;
- aType = aType.setNum( StringToDataStreamType( anInPort->PortType() ) ) ;
- cdebug << "SaveXML " << anInPort->PortType() << " --> " << StringToDataStreamType( anInPort->PortType() )
+ aType = aType.setNum( StringToDataStreamType(anInPort->PortType()) ) ;
+ cdebug << "SaveXML " << anInPort->PortType() << " --> " << anInPort->PortType()
<< " " << aType << endl ;
aField = Graph.createTextNode( aType ) ;
inParameter.appendChild(inParametertype) ;
DataStreamlist.appendChild(outParameter) ;
QDomElement outParametertype = Graph.createElement("outParameter-type") ;
QString aType ;
- aType = aType.setNum( StringToDataStreamType( anOutPort->PortType() ) ) ;
- cdebug << "SaveXML " << anOutPort->PortType() << " --> " << StringToDataStreamType( anOutPort->PortType() )
+ aType = aType.setNum( StringToDataStreamType(anOutPort->PortType()) ) ;
+ cdebug << "SaveXML " << anOutPort->PortType() << " --> " << anOutPort->PortType()
<< " " << aType << endl ;
aField = Graph.createTextNode( aType ) ;
outParameter.appendChild(outParametertype) ;
}
f << " " << Name() << "_ServiceinStreamParameter = []" << endl ;
for ( i = 0 ; i < (int ) ServiceInStreamParameter().length() ; i++ ) {
- f << " " << Name() << "_ServiceinStreamParameter.append( SALOME_ModuleCatalog.ServicesDataStreamParameter( SALOME_ModuleCatalog."
- << ServiceInStreamParameter()[i].Parametertype << " , '"
+ f << " " << Name() << "_ServiceinStreamParameter.append( SALOME_ModuleCatalog.ServicesDataStreamParameter( '"
+ << ServiceInStreamParameter()[i].Parametertype << "' , '"
<< ServiceInStreamParameter()[i].Parametername << "' , SALOME_ModuleCatalog."
<< ServiceInStreamParameter()[i].Parameterdependency << " ) )" << endl ;
}
f << " " << Name() << "_ServiceoutStreamParameter = []" << endl ;
for ( i = 0 ; i < (int ) ServiceOutStreamParameter().length() ; i++ ) {
- f << " " << Name() << "_ServiceoutStreamParameter.append( SALOME_ModuleCatalog.ServicesDataStreamParameter( SALOME_ModuleCatalog."
- << ServiceOutStreamParameter()[i].Parametertype << " , '"
+ f << " " << Name() << "_ServiceoutStreamParameter.append( SALOME_ModuleCatalog.ServicesDataStreamParameter( '"
+ << ServiceOutStreamParameter()[i].Parametertype << "' , '"
<< ServiceOutStreamParameter()[i].Parametername << "' , SALOME_ModuleCatalog."
<< ServiceOutStreamParameter()[i].Parameterdependency << " ) )" << endl ;
}
}
else if ( anInPort->IsDataStream() ) {
f << " " << "I" << Name() << anInPort->PortName() << " = " << Name()
- << ".InStreamPort( '" << anInPort->PortName()
- << "' , SALOME_ModuleCatalog." << StringToDataStreamType( anInPort->PortType() )
- << " , SALOME_ModuleCatalog." << anInPort->Dependency() << " )" << endl ;
+ << ".InStreamPort( '" << anInPort->PortName() << "' , '" << anInPort->PortType()
+ << "' , SALOME_ModuleCatalog." << anInPort->Dependency() << " )" << endl ;
SUPERV::KindOfSchema aKindOfSchema ;
SUPERV::KindOfInterpolation aKindOfInterpolation ;
SUPERV::KindOfExtrapolation aKindOfExtrapolation ;
else if ( anOutPort->IsDataStream() ) {
f << " " << "O" << Name() << anOutPort->PortName() << " = " << Name()
<< ".OutStreamPort( '" << anOutPort->PortName()
- << "' , SALOME_ModuleCatalog." << StringToDataStreamType( anOutPort->PortType() )
- << " , SALOME_ModuleCatalog." << anOutPort->Dependency() << " )" << endl ;
+ << "' , '" << anOutPort->PortType()
+ << "' , SALOME_ModuleCatalog." << anOutPort->Dependency() << " )" << endl ;
long aNumberOfValues ;
aNumberOfValues = ((GraphBase::OutDataStreamPort * ) anOutPort)->NumberOfValues() ;
f << " " << "O" << Name() << anOutPort->PortName() << ".SetNumberOfValues( " << aNumberOfValues << " )"
else if ( anInPort->IsDataStream() ) {
f << " " << "I" << EndName << anInPort->PortName() << " = " << EndName
<< ".InStreamPort( '" << anInPort->PortName()
- << "' , SALOME_ModuleCatalog." << StringToDataStreamType( anInPort->PortType() )
- << " , SALOME_ModuleCatalog." << anInPort->Dependency() << " )" << endl ;
+ << "' , '" << anInPort->PortType()
+ << "' , SALOME_ModuleCatalog." << anInPort->Dependency() << " )" << endl ;
SUPERV::KindOfSchema aKindOfSchema ;
SUPERV::KindOfInterpolation aKindOfInterpolation ;
SUPERV::KindOfExtrapolation aKindOfExtrapolation ;
else if ( anOutPort->IsDataStream() ) {
f << " " << "O" << EndName << anOutPort->PortName() << " = " << EndName
<< ".OutStreamPort( '" << anOutPort->PortName()
- << "' , SALOME_ModuleCatalog." << StringToDataStreamType( anOutPort->PortType() )
- << " , SALOME_ModuleCatalog." << anOutPort->Dependency() << " )" << endl ;
+ << "' , '" << anOutPort->PortType()
+ << "' , SALOME_ModuleCatalog." << anOutPort->Dependency() << " )" << endl ;
long aNumberOfValues ;
aNumberOfValues = ((GraphBase::OutDataStreamPort * ) anOutPort)->NumberOfValues() ;
f << " " << "O" << EndName << anOutPort->PortName() << ".SetNumberOfValues( " << aNumberOfValues << " )"
else if ( anInPort->IsDataStream() ) {
f << " " << "I" << EndName << anInPort->PortName() << " = " << EndName
<< ".InStreamPort( '" << anInPort->PortName()
- << "' , SALOME_ModuleCatalog." << StringToDataStreamType( anInPort->PortType() )
- << " , SALOME_ModuleCatalog." << anInPort->Dependency() << " )" << endl ;
+ << "' , '" << anInPort->PortType()
+ << "' , SALOME_ModuleCatalog." << anInPort->Dependency() << " )" << endl ;
SUPERV::KindOfSchema aKindOfSchema ;
SUPERV::KindOfInterpolation aKindOfInterpolation ;
SUPERV::KindOfExtrapolation aKindOfExtrapolation ;
else if ( anOutPort->IsDataStream() ) {
f << " " << "O" << EndName << anOutPort->PortName() << " = " << EndName
<< ".OutStreamPort( '" << anOutPort->PortName()
- << "' , SALOME_ModuleCatalog." << StringToDataStreamType( anOutPort->PortType() )
- << " , SALOME_ModuleCatalog." << anOutPort->Dependency() << " )" << endl ;
+ << "' , '" << anOutPort->PortType()
+ << "' , SALOME_ModuleCatalog." << anOutPort->Dependency() << " )" << endl ;
long aNumberOfValues ;
aNumberOfValues = ((GraphBase::OutDataStreamPort * ) anOutPort)->NumberOfValues() ;
f << " " << "O" << EndName << anOutPort->PortName() << ".SetNumberOfValues( " << aNumberOfValues << " )"
if ( anInPort->IsDataStream() ) {
if ( IsOneOfInLineNodes() ) {
f << " " << "I" << Name() << anInPort->PortName() << " = "
- << Name() << ".InStreamPort( '" << anInPort->PortName() << "' , SALOME_ModuleCatalog."
- << StringToDataStreamType( anInPort->PortType() ) << " , SALOME_ModuleCatalog."
+ << Name() << ".InStreamPort( '" << anInPort->PortName() << "' , '"
+ << anInPort->PortType() << "' , SALOME_ModuleCatalog."
<< anInPort->Dependency() << " )" << endl ;
}
else {
if ( anOutPort->IsDataStream() ) {
if ( IsOneOfInLineNodes() ) {
f << " " << "O" << Name() << anOutPort->PortName() << " = "
- << Name() << ".OutStreamPort( '" << anOutPort->PortName() << "' , SALOME_ModuleCatalog."
- << StringToDataStreamType( anOutPort->PortType() ) << " , SALOME_ModuleCatalog."
+ << Name() << ".OutStreamPort( '" << anOutPort->PortName() << "' , '"
+ << anOutPort->PortType() << "' , SALOME_ModuleCatalog."
<< anOutPort->Dependency() << " )" << endl ;
}
else {
void DelOutDataStreamPort( const char * OutputParameterName ) ;
InDataStreamPort * AddInDataStreamPort( const char * InputParameterName ,
- const SALOME_ModuleCatalog::DataStreamType InputParameterType ,
+ const char * InputParameterType ,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ,
const SUPERV::KindOfPort aKindOfPort ,
int index = -1 ) ;
OutDataStreamPort * AddOutDataStreamPort( const char * OutputParameterName ,
- const SALOME_ModuleCatalog::DataStreamType OutputParameterType ,
+ const char * OutputParameterType ,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ,
const SUPERV::KindOfPort aKindOfPort ,
int index = -1 ) ;
const GraphBase::InPort * anInPort ;
anInPort = aCNode->GetNodeInPort( iostream ) ;
if ( anInPort->IsDataStream() ) {
- cdebug << "GraphBase::Graph::GetNodes In" << iostream << " " << aCNode->Name() << " " << anInPort->NodeName() << " " << anInPort->PortName()
- << endl ;
- (*_list_nodes)[ind].theListOfInDataStreams[streamind].theDataStreamParameter.Parametertype = StringToDataStreamType( anInPort->PortType() ) ;
+ cdebug << "GraphBase::Graph::GetNodes In" << iostream << " " << aCNode->Name()
+ << " " << anInPort->NodeName() << " " << anInPort->PortName() << endl;
+ (*_list_nodes)[ind].theListOfInDataStreams[streamind].theDataStreamParameter.Parametertype = CORBA::string_dup( anInPort->PortType() ) ;
(*_list_nodes)[ind].theListOfInDataStreams[streamind].theDataStreamParameter.Parametername = CORBA::string_dup( anInPort->PortName() ) ;
(*_list_nodes)[ind].theListOfInDataStreams[streamind].theDataStreamParameter.Parameterdependency = anInPort->Dependency() ;
SUPERV::KindOfSchema aKindOfSchema ;
if ( anOutPort->IsDataStream() ) {
cdebug << "GraphBase::Graph::GetNodes Out" << iostream << " " << aCNode->Name() << " " << anOutPort->NodeName() << " " << anOutPort->PortName() << " "
<< endl ;
- (*_list_nodes)[ind].theListOfOutDataStreams[streamind].theDataStreamParameter.Parametertype = StringToDataStreamType( anOutPort->PortType() ) ;
+ (*_list_nodes)[ind].theListOfOutDataStreams[streamind].theDataStreamParameter.Parametertype = CORBA::string_dup( anOutPort->PortType() ) ;
(*_list_nodes)[ind].theListOfOutDataStreams[streamind].theDataStreamParameter.Parametername = CORBA::string_dup( anOutPort->PortName() ) ;
(*_list_nodes)[ind].theListOfOutDataStreams[streamind].theDataStreamParameter.Parameterdependency = anOutPort->Dependency() ;
long aNumberOfValues = ((GraphBase::OutDataStreamPort * ) anOutPort)->NumberOfValues() ;
// DataService( _Orb , aService , InPortsKind , OutPortsKind , Graph_prof_debug() , Graph_fdebug() ) ;
for ( i = 0 ; i < innbr ; i++ ) {
if ( InPortsKind[ i ] == SUPERV::DataStreamParameter ) {
- GraphBase::InDataStreamPort * anInPort = AddInDataStreamPort( aService.ServiceinParameter[ i ].Parametername ,
- StringToDataStreamType( aService.ServiceinParameter[ i ].Parametertype ) ,
+ GraphBase::InDataStreamPort * anInPort = AddInDataStreamPort( aService.ServiceinParameter[ i ].Parametername,
+ aService.ServiceinParameter[ i ].Parametertype,
InDataStreamDependency[ i ] ,
SUPERV::DataStreamParameter ) ;
anInPort->SetParams( InKindOfSchema[ i ] ,
for ( i = 0 ; i < outnbr ; i++ ) {
if ( OutPortsKind[ i ] == SUPERV::DataStreamParameter ) {
GraphBase::OutDataStreamPort * anOutPort = AddOutDataStreamPort( aService.ServiceoutParameter[ i ].Parametername ,
- StringToDataStreamType( aService.ServiceoutParameter[ i ].Parametertype ) ,
+ aService.ServiceoutParameter[ i ].Parametertype ,
OutDataStreamDependency[ i ] ,
SUPERV::DataStreamParameter ) ;
anOutPort->NumberOfValues( OutNumberOfValues[ i ] ) ;
}
else if ( aINode->GetChangeNodeInPort(j)->IsDataStream() ) {
aService.ServiceinDataStreamParameter.length( InStreamService+1 ) ;
- aService.ServiceinDataStreamParameter[InStreamService].Parametertype = StringToDataStreamType( aINode->GetChangeNodeInPort(j)->PortType() ) ;
+ aService.ServiceinDataStreamParameter[InStreamService].Parametertype = CORBA::string_dup( aINode->GetChangeNodeInPort(j)->PortType() ) ;
aService.ServiceinDataStreamParameter[InStreamService].Parametername = CORBA::string_dup( aINode->GetChangeNodeInPort(j)->PortName() ) ;
aService.ServiceinDataStreamParameter[InStreamService++].Parameterdependency = aINode->GetChangeNodeInPort(j)->Dependency() ;
aINode->IncrDataStreamInPorts() ;
}
else if ( aINode->GetChangeNodeOutPort(j)->IsDataStream() ) {
aService.ServiceoutDataStreamParameter.length( OutStreamService+1 ) ;
- aService.ServiceoutDataStreamParameter[OutStreamService].Parametertype = StringToDataStreamType( aINode->GetChangeNodeOutPort(j)->PortType() ) ;
+ aService.ServiceoutDataStreamParameter[OutStreamService].Parametertype = CORBA::string_dup( aINode->GetChangeNodeOutPort(j)->PortType() ) ;
aService.ServiceoutDataStreamParameter[OutStreamService].Parametername = CORBA::string_dup( aINode->GetChangeNodeOutPort(j)->PortName() ) ;
aService.ServiceoutDataStreamParameter[OutStreamService++].Parameterdependency = aINode->GetChangeNodeOutPort(j)->Dependency() ;
aINode->IncrDataStreamOutPorts() ;
case SUPERV::FactoryNode :
{
- SUPERV::FNode_var aFNode = dataflow->FNode( SUPERV::FNode::_narrow(aNode)->GetComponentName(),
- SUPERV::FNode::_narrow(aNode)->GetInterfaceName(),
- *SUPERV::FNode::_narrow(aNode)->Service(),
- SUPERV::FNode::_narrow(aNode)->IsCimpl()); // mkr : PAL11273
+ SUPERV::FNode_var aNodeFNode = SUPERV::FNode::_narrow(aNode);
+ SALOME_ModuleCatalog::ImplType anImplType = SALOME_ModuleCatalog::SO;
+ if (!aNodeFNode->IsCimpl()) anImplType = SALOME_ModuleCatalog::PY;
+ SUPERV::FNode_var aFNode = dataflow->FNode(aNodeFNode->GetComponentName(),
+ aNodeFNode->GetInterfaceName(),
+ *aNodeFNode->Service(),
+ anImplType); // mkr : PAL11273
if (CORBA::is_nil(aFNode)) {
QMessageBox::warning(SUIT_Session::session()->activeApplication()->desktop(), tr("ERROR"), tr("MSG_CANT_CREATE_NODE"));
return;
}
-char* getDataStreamParameterName(int aType)
+char* getDataStreamParameterName(const char * aType)
{
- switch(aType) {
- case 1:
+ QString type (aType);
+
+ if (aType == "int") // 1
return "integer";
- case 2:
+ if (aType == "float") // 2
return "float";
- case 3:
+ if (aType == "double") // 3
return "double";
- case 4:
+ if (aType == "string") // 4
return "string";
- case 6:
+ if (aType == "bool") // 6 ??
return "boolean";
- default:
- return "unknown";
- }
+
+ return "unknown";
}
void SUPERVGUI_Service::initialise() {
long nbStreamPortsOut = Service->ServiceoutDataStreamParameter.length();
for (int m=0; m<nbStreamPortsOut; m++) {
- SALOME_ModuleCatalog::ServicesDataStreamParameter* PortOut = &(Service->ServiceoutDataStreamParameter[m]);
+ SALOME_ModuleCatalog::ServicesDataStreamParameter* PortOut =
+ &(Service->ServiceoutDataStreamParameter[m]);
QListViewItem* myPortOutItem =
new QListViewItem(myServiceItem, (char*)PortOut->Parametername,
- getDataStreamParameterName(PortOut->Parametertype), "DataStream Out");
+ getDataStreamParameterName(PortOut->Parametertype), "DataStream Out");
myPortOutItem->setSelectable(false);
}
SUPERV::FNode_ptr Graph_Impl::FNode( const char * NodeComponentName ,
const char * NodeInterfaceName ,
const SALOME_ModuleCatalog::Service &NodeService ,
- bool isCimpl ) {
+ const SALOME_ModuleCatalog::ImplType ImplType ) {
beginService( "Graph_Impl::FNode" );
SUPERV::FNode_var iobject = SUPERV::FNode::_nil() ;
+ bool isCimpl = true;
+ switch (ImplType)
+ {
+ case SALOME_ModuleCatalog::PY:
+ isCimpl = false;
+ break;
+ case SALOME_ModuleCatalog::SO:
+ case SALOME_ModuleCatalog::EXE:
+ default:
+ ;
+ }
if ( DataFlowEditor()->IsEditing() && !DataFlowEditor()->IsReadOnly() && !IsMacro() ) {
FNode_Impl * myNode = new FNode_Impl( _Orb , _Poa , _ContId ,
instanceName() , interfaceName() ,
if ( RetVal ) {
for ( i = 0 ; i < (int ) aGraphNodes->FNodes.length() ; i++ ) {
SUPERV::FNode_var aNode = (aGraphNodes->FNodes)[ i ] ;
+ SALOME_ModuleCatalog::ImplType implType = SALOME_ModuleCatalog::SO;
+ if (!aNode->IsCimpl()) implType = SALOME_ModuleCatalog::PY;
SUPERV::FNode_ptr myNode = FNode( aNode->GetComponentName() ,
aNode->GetInterfaceName() ,
*(aNode->Service()) ,
- aNode->IsCimpl() ) ; // mkr : PAL11273
+ implType ) ; // mkr : PAL11273
if ( !CORBA::is_nil( myNode ) ) {
myNode->SetName( aNode->Name() ) ;
myNode->SetAuthor( aNode->Author() ) ;
SUPERV::ListOfStreamPorts myStreamPorts = *(aNode->StreamPorts()) ;
for ( j = 0 ; j < (int ) myStreamPorts.length() ; j++ ) {
if ( myStreamPorts[ j ]->IsInput() ) {
- aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
else {
- aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
}
}
SUPERV::ListOfStreamPorts myStreamPorts = *(aNode->StreamPorts()) ;
for ( j = 0 ; j < (int ) myStreamPorts.length() ; j++ ) {
if ( myStreamPorts[ j ]->IsInput() ) {
- aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
else {
- aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
}
}
SUPERV::ListOfStreamPorts myStreamPorts = *(aNode->StreamPorts()) ;
for ( j = 0 ; j < (int ) myStreamPorts.length() ; j++ ) {
if ( myStreamPorts[ j ]->IsInput() ) {
- aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
else {
- aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
}
}
SUPERV::ListOfStreamPorts myStreamLoopPorts = *(myEndOfLoop->StreamPorts()) ;
for ( j = 0 ; j < (int ) myStreamLoopPorts.length() ; j++ ) {
if ( myStreamLoopPorts[ j ]->IsInput() ) {
- aPort = myNode->InStreamPort( myStreamLoopPorts[ j ]->Name() , StringToDataStreamType( myStreamLoopPorts[ j ]->Type() ) , myStreamLoopPorts[ j ]->Dependency() ) ;
+ aPort = myNode->InStreamPort( myStreamLoopPorts[ j ]->Name(), myStreamLoopPorts[ j ]->Type(), myStreamLoopPorts[ j ]->Dependency() ) ;
}
else {
- aPort = myNode->OutStreamPort( myStreamLoopPorts[ j ]->Name() , StringToDataStreamType( myStreamLoopPorts[ j ]->Type() ) , myStreamLoopPorts[ j ]->Dependency() ) ;
+ aPort = myNode->OutStreamPort( myStreamLoopPorts[ j ]->Name(), myStreamLoopPorts[ j ]->Type(), myStreamLoopPorts[ j ]->Dependency() ) ;
}
}
}
SUPERV::ListOfStreamPorts myStreamPorts = *(aNode->StreamPorts()) ;
for ( j = 0 ; j < (int ) myStreamPorts.length() ; j++ ) {
if ( myStreamPorts[ j ]->IsInput() ) {
- aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->InStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
else {
- aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name() , StringToDataStreamType( myStreamPorts[ j ]->Type() ) , myStreamPorts[ j ]->Dependency() ) ;
+ aPort = myNode->OutStreamPort( myStreamPorts[ j ]->Name(), myStreamPorts[ j ]->Type(), myStreamPorts[ j ]->Dependency() ) ;
}
}
}
SUPERV::ListOfStreamPorts myStreamSwitchPorts = *(myEndOfSwitch->StreamPorts()) ;
for ( j = 0 ; j < (int ) myStreamSwitchPorts.length() ; j++ ) {
if ( myStreamSwitchPorts[ j ]->IsInput() ) {
- aPort = anEndOfSwitch->InStreamPort( myStreamSwitchPorts[ j ]->Name() , StringToDataStreamType( myStreamSwitchPorts[ j ]->Type() ) , myStreamSwitchPorts[ j ]->Dependency() ) ; // mkr : IPAL11394 (add port to !EndSwitch! node)
+ aPort = anEndOfSwitch->InStreamPort( myStreamSwitchPorts[ j ]->Name(), myStreamSwitchPorts[ j ]->Type(), myStreamSwitchPorts[ j ]->Dependency() ) ; // mkr : IPAL11394 (add port to !EndSwitch! node)
}
else {
- aPort = anEndOfSwitch->OutStreamPort( myStreamSwitchPorts[ j ]->Name() , StringToDataStreamType( myStreamSwitchPorts[ j ]->Type() ) , myStreamSwitchPorts[ j ]->Dependency() ) ; // mkr : IPAL11394 (add port to !EndSwitch! node)
+ aPort = anEndOfSwitch->OutStreamPort( myStreamSwitchPorts[ j ]->Name(), myStreamSwitchPorts[ j ]->Type(), myStreamSwitchPorts[ j ]->Dependency() ) ; // mkr : IPAL11394 (add port to !EndSwitch! node)
}
}
}
const char * NodeComponentName ,
const char * InterfaceName ,
const SALOME_ModuleCatalog::Service &NodeService ,
- bool isCimpl ) ; // mkr : PAL11273 : C++ implementation by default
+ const SALOME_ModuleCatalog::ImplType ImplType ) ; // mkr : PAL11273 : C++ implementation by default
virtual SUPERV::INode_ptr INode(
const char * FuncName ,
const SUPERV::ListOfStrings & PythonFunction ) ;
return SUPERV::Port::_duplicate( Outobject );
}
-SUPERV::StreamPort_ptr INode_Impl::InStreamPort( const char *aParameterName ,
- const SALOME_ModuleCatalog::DataStreamType aParameterType ,
+SUPERV::StreamPort_ptr INode_Impl::InStreamPort( const char * aParameterName ,
+ const char * aParameterType ,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ) {
SUPERV::StreamPort_ptr Inobject = SUPERV::StreamPort::_nil() ;
if ( DataFlowEditor()->Graph()->IsDataStreamNode() ) {
}
SUPERV::StreamPort_ptr INode_Impl::OutStreamPort( const char * aParameterName ,
- const SALOME_ModuleCatalog::DataStreamType aParameterType ,
+ const char * aParameterType ,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ) {
StreamPort_Impl * myOutStreamPort = NULL ;
SUPERV::StreamPort_ptr Outobject = SUPERV::StreamPort::_nil() ;
const char * aParameterType ) ;
virtual SUPERV::StreamPort_ptr InStreamPort( const char * aParameterName ,
- const SALOME_ModuleCatalog::DataStreamType aParameterType ,
+ const char * aParameterType ,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ) ;
virtual SUPERV::StreamPort_ptr OutStreamPort( const char * aParameterName ,
- const SALOME_ModuleCatalog::DataStreamType aParameterType ,
+ const char * aParameterType ,
const SALOME_ModuleCatalog::DataStreamDependency aDependency ) ;
} ;