Salome HOME
Traces
[modules/superv.git] / src / GraphEditor / DataFlowEditor_InNode.cxx
index 034c99e097b880557548bd59c75072d115e9b3f6..ff472c467ddfa0950013dc19b12130c4a6f2c8de 100644 (file)
 //  Module : SUPERV
 
 using namespace std;
-#include <string.h>
-#include <strstream>
-#include <iostream>
+//#include <string.h>
+//#include <sstream>
+//#include <iostream>
 
 #include "DataFlowEditor_InNode.hxx"
 
 GraphEditor::InNode::InNode() {
 }
 
+#if 0
+GraphEditor::InNode::InNode(GraphBase::GOTONode * aGOTONode ) {
+  _ComputingNode = aGOTONode ;
+  _GOTONode = aGOTONode ;
+}
+#endif
+
+//ostream * fdebug = NULL ;
 GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB, 
-                            SALOME_NamingService* ptrNamingService ,
+                            SALOME_NamingService * ptrNamingService ,
                              GraphBase::ListOfFuncName aFuncName ,
                              GraphBase::ListOfPythonFunctions aPythonFunction ,
                              const SALOME_ModuleCatalog::Service& aService ,
                              const char * ComponentName ,
-                             const char* NodeInterfaceName ,
+                             const char * NodeInterfaceName ,
                              const char * NodeName ,
                              const SUPERV::KindOfNode akind ,
                              const SUPERV::SDate NodeFirstCreation ,
@@ -50,12 +58,18 @@ GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB,
                              const char * NodeComputer ,
                              const char * NodeComment ,
                              const bool   GeneratedName ,
-                             const int X ,
-                             const int Y ,
+                             const int NodeX ,
+                             const int NodeY ,
                              int * Graph_prof_debug,
-                             ostream * Graph_fdebug) {
+                             ofstream * Graph_fdebug) {
   SetDebug( ORB , Graph_prof_debug , Graph_fdebug ) ;
-
+//  cout << "GraphEditor::InNode::InNode GraphBase::Base::_fdebug " << GraphBase::Base::_fdebug << endl ;
+  cdebug_in << "GraphEditor::InNode::InNode" << endl ;
+//  if ( GraphBase::Base::_fdebug )
+//    *GraphBase::Base::_fdebug << endl << "xxx-->" << " " << "GraphEditor::InNode::InNode" << endl ;
+//  if ( fdebug )
+//    (*fdebug) << endl << "xxxxxx-->" << " " << "GraphEditor::InNode::InNode" << endl ;
+//  cout << "GraphEditor::InNode::InNode GraphBase::Base::_fdebug " << GraphBase::Base::_fdebug << endl ;
   _ComputingNode = NULL ;
   _FactoryNode = NULL ;
   _InLineNode = NULL ;
@@ -66,19 +80,20 @@ GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB,
   _EndOfSwitchNode = NULL ;
   switch ( akind ) {
   case SUPERV::ComputingNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::ComputingNode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::ComputingNode : " << NodeName << endl ;
     _ComputingNode = new GraphBase::ComputingNode( ORB , ptrNamingService , aService ,
                                                    NodeName , akind ,
                                                    NodeFirstCreation ,
                                                    NodeLastModification  ,
                                                    NodeEditorRelease , NodeAuthor ,
                                                    NodeComment , GeneratedName ,
-                                                   X , Y ,
+                                                   NodeX , NodeY ,
                                                    Graph_prof_debug , Graph_fdebug ) ;
     break ;
   }
   case SUPERV::FactoryNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::FactoryNode : " << NodeName ;
+//    cout << "GraphEditor::InNode::InNode SUPERV::FactoryNode : " << NodeName << endl ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::FactoryNode : " << NodeName << endl ;
     _FactoryNode = new GraphBase::FactoryNode( ORB , ptrNamingService , aService ,
                                                ComponentName , NodeInterfaceName ,
                                                NodeName , akind ,
@@ -86,39 +101,58 @@ GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB,
                                                NodeLastModification  ,
                                                NodeEditorRelease , NodeAuthor ,
                                                NodeComputer , NodeComment ,
-                                               GeneratedName , X , Y ,
+                                               GeneratedName , NodeX , NodeY ,
                                                Graph_prof_debug , Graph_fdebug ) ;
+//    cout << "GraphEditor::InNode::InNode SUPERV::FactoryNode : " << NodeName << endl ;
     _ComputingNode = (GraphBase::ComputingNode *) _FactoryNode ;
     break ;
   }
   case SUPERV::InLineNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::InLineNode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::InLineNode : " << NodeName << endl ;
     _InLineNode = new GraphBase::InLineNode( ORB , ptrNamingService ,
                                              aFuncName[0].c_str() , *aPythonFunction[0] ,
                                              NodeName , akind ,
                                              NodeFirstCreation , NodeLastModification  ,
                                              NodeEditorRelease , NodeAuthor ,
                                              NodeComment , GeneratedName ,
-                                             X , Y ,
+                                             NodeX , NodeY ,
                                              Graph_prof_debug , Graph_fdebug ) ;
     _ComputingNode = (GraphBase::ComputingNode *) _InLineNode ;
     break ;
   }
+  case SUPERV::MacroNode : {
+    cdebug << "GraphEditor::InNode::InNode SUPERV::MacroNode : " << NodeName << endl ;
+    _GraphMacroNode = new GraphBase::Graph( ORB , ptrNamingService ,
+//                                            aFuncName[0].c_str() , *aPythonFunction[0] ,
+                                            NodeName ,
+                                            akind ,
+//                                            NodeFirstCreation , NodeLastModification  ,
+//                                            NodeEditorRelease , NodeAuthor ,
+//                                            NodeComment , GeneratedName ,
+//                                            NodeX , NodeY ,
+                                            Graph_prof_debug , Graph_fdebug ) ;
+    _ComputingNode = (GraphBase::ComputingNode *) _GraphMacroNode ;
+    _InLineNode = (GraphBase::InLineNode *) _ComputingNode ;
+    _GOTONode = (GraphBase::GOTONode *) _InLineNode ;
+    _GraphMacroNode->Coordinates( NodeX , NodeY ) ;
+    break ;
+  }
   case SUPERV::GOTONode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::GOTONode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::GOTONode : " << NodeName << endl ;
     _GOTONode = new GraphBase::GOTONode( ORB , ptrNamingService ,
                                          aFuncName[0].c_str() , *aPythonFunction[0] ,
                                          NodeName , akind ,
                                          NodeFirstCreation , NodeLastModification  ,
                                          NodeEditorRelease , NodeAuthor ,
                                          NodeComment , GeneratedName ,
-                                         X , Y ,
+                                         NodeX , NodeY ,
                                          Graph_prof_debug , Graph_fdebug ) ;
     _ComputingNode = (GraphBase::ComputingNode *) _GOTONode ;
+    _InLineNode = (GraphBase::InLineNode *) _ComputingNode ;
     break ;
   }
   case SUPERV::LoopNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::LoopNode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::LoopNode : " << NodeName << endl ;
     _LoopNode = new GraphBase::LoopNode( ORB , ptrNamingService ,
                                          aFuncName[0].c_str() , *aPythonFunction[0] ,
                                          aFuncName[1].c_str() , *aPythonFunction[1] ,
@@ -127,14 +161,15 @@ GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB,
                                          NodeFirstCreation , NodeLastModification  ,
                                          NodeEditorRelease , NodeAuthor ,
                                          NodeComment , GeneratedName ,
-                                         X , Y ,
+                                         NodeX , NodeY ,
                                          Graph_prof_debug , Graph_fdebug ) ;
     _ComputingNode = (GraphBase::ComputingNode *) _LoopNode ;
     _GOTONode = (GraphBase::GOTONode *) _ComputingNode ;
+    _InLineNode = (GraphBase::InLineNode *) _ComputingNode ;
     break ;
   }
   case SUPERV::EndLoopNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::EndOfLoopNode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::EndOfLoopNode : " << NodeName << endl ;
     _EndOfLoopNode = new GraphBase::EndOfLoopNode(
                                          ORB , ptrNamingService ,
                                          aFuncName[0].c_str() , *aPythonFunction[0] ,
@@ -142,28 +177,30 @@ GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB,
                                          NodeFirstCreation , NodeLastModification  ,
                                          NodeEditorRelease , NodeAuthor ,
                                          NodeComment , GeneratedName ,
-                                         X , Y ,
+                                         NodeX , NodeY ,
                                          Graph_prof_debug , Graph_fdebug ) ;
     _ComputingNode = (GraphBase::ComputingNode *) _EndOfLoopNode ;
     _GOTONode = (GraphBase::GOTONode *) _ComputingNode ;
+    _InLineNode = (GraphBase::InLineNode *) _ComputingNode ;
     break ;
   }
   case SUPERV::SwitchNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::SwitchNode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::SwitchNode : " << NodeName << endl ;
     _SwitchNode = new GraphBase::SwitchNode( ORB , ptrNamingService ,
                                              aFuncName[0].c_str() , *aPythonFunction[0] ,
                                              NodeName , akind ,
                                              NodeFirstCreation , NodeLastModification  ,
                                              NodeEditorRelease , NodeAuthor ,
                                              NodeComment , GeneratedName ,
-                                             X , Y ,
+                                             NodeX , NodeY ,
                                              Graph_prof_debug , Graph_fdebug ) ;
     _ComputingNode = (GraphBase::ComputingNode *) _SwitchNode ;
     _GOTONode = (GraphBase::GOTONode *) _ComputingNode ;
+    _InLineNode = (GraphBase::InLineNode *) _ComputingNode ;
     break ;
   }
   case SUPERV::EndSwitchNode : {
-    cdebug << "GraphEditor::InNode::InNode SUPERV::EndOfSwitchNode : " << NodeName ;
+    cdebug << "GraphEditor::InNode::InNode SUPERV::EndOfSwitchNode : " << NodeName << endl ;
     _EndOfSwitchNode = new GraphBase::EndOfSwitchNode(
                                              ORB , ptrNamingService ,
                                              aFuncName[0].c_str() , *aPythonFunction[0] ,
@@ -171,16 +208,26 @@ GraphEditor::InNode::InNode( CORBA::ORB_ptr ORB,
                                              NodeFirstCreation , NodeLastModification  ,
                                              NodeEditorRelease , NodeAuthor ,
                                              NodeComment , GeneratedName ,
-                                             X , Y ,
+                                             NodeX , NodeY ,
                                              Graph_prof_debug , Graph_fdebug ) ;
     _ComputingNode = (GraphBase::ComputingNode *) _EndOfSwitchNode ;
     _GOTONode = (GraphBase::GOTONode *) _ComputingNode ;
+    _InLineNode = (GraphBase::InLineNode *) _ComputingNode ;
     break ;
   }
+  case SUPERV::DataFlowGraph : {
+    cdebug << "GraphEditor::InNode::InNode ERROR SUPERV::DataFlowGraph : " << NodeName << endl ;
+  }
+  case SUPERV::DataStreamGraph : {
+    cdebug << "GraphEditor::InNode::InNode ERROR SUPERV::DataStreamGraph : " << NodeName << endl ;
+  }
+  case SUPERV::UnknownNode : {
+    cdebug << "GraphEditor::InNode::InNode ERROR SUPERV::UnknownNode : " << NodeName << endl ;
+  }
   }
-  cdebug << "GraphEditor::InNode::InNode "  << (void *) this
-         << " _ComputingNode " << (void *) _ComputingNode  ;
   _ComputingNode->InNode( this ) ;
+  cdebug_out << "GraphEditor::InNode::InNode " << (void *) this
+             << " _ComputingNode " << (void *) _ComputingNode  << endl ;
 }
 
 GraphEditor::InNode::~InNode() {