Salome HOME
Fix for bug IPAL9558 : Maintainance Mandrake porting: black rectangle in table view.
[modules/superv.git] / src / GraphBase / DataFlowBase_Base.hxx
index 2d77bdd193a4677a2f904dc064bf14e94b4a5bec..495d795f8bff95ac31241c37d3a60ecfd326e9ef 100644 (file)
@@ -81,8 +81,18 @@ inline char * my_strblkdup( const char * s ) {
   return t;
 }
 
-enum StatusOfPort { NotConnected , PortConnected , PortAndDataConnected ,
-                    DataConnected } ;
+string DataStreamTypeToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) ;
+SALOME_ModuleCatalog::DataStreamType StringToDataStreamType( const char * aIdlType ) ;
+
+string KindOfDataStreamTraceToString( SUPERV::KindOfDataStreamTrace aDataStreamTrace ) ;
+
+string DataStreamDependencyToString( const SALOME_ModuleCatalog::DataStreamDependency aDataStreamDependency ) ;
+
+string DataStreamToString( const SALOME_ModuleCatalog::DataStreamType aDataStreamType ) ;
+
+//enum StatusOfPort { NotConnected , PortConnected , PortAndDataConnected ,
+enum StatusOfPort { NotConnected , PortConnected ,
+                    DataConnected , ExternConnected } ;
 
 namespace GraphBase {
 
@@ -99,21 +109,36 @@ namespace GraphBase {
 
   typedef vector<const SUPERV::ListOfStrings *> ListOfPythonFunctions ;
 
-  struct NodeParameter {
-    SALOME_ModuleCatalog::ServicesParameter theInParameter ;
-    SALOME_ModuleCatalog::ServicesParameter theOutParameter ;
-  };
+  typedef vector<SALOME_ModuleCatalog::ServicesParameter> ListOfParameters;
+
+  struct InDataStreamParameter {
+     SALOME_ModuleCatalog::ServicesDataStreamParameter theDataStreamParameter ;
+     SUPERV::KindOfSchema                              theKindOfSchema ;
+     SUPERV::KindOfInterpolation                       theKindOfInterpolation ;
+     SUPERV::KindOfExtrapolation                       theKindOfExtrapolation ;
+   };
+  typedef vector<InDataStreamParameter> ListOfInDataStreamParameters;
 
-  typedef vector<NodeParameter> ListOfParameters;
+  struct OutDataStreamParameter {
+     SALOME_ModuleCatalog::ServicesDataStreamParameter theDataStreamParameter ;
+     long                                              theNumberOfValues ;
+   };
+  typedef vector<OutDataStreamParameter> ListOfOutDataStreamParameters;
 
   struct SNode {
     string                        theComponentName ;
     string                        theInterfaceName ;
     string                        theName ;
     SUPERV::KindOfNode            theKind ;
+    long                          theTimeout ;
+    SUPERV::KindOfDataStreamTrace theDataStreamTrace ;
+    double                        theDeltaTime ;
     string                        theCoupledNode ;
+//    int                           theDataStreamInArgsNumber ;
+//    int                           theDataStreamOutArgsNumber ;
     SALOME_ModuleCatalog::Service theService ;
-    ListOfParameters              theListOfParameters ;
+    ListOfInDataStreamParameters  theListOfInDataStreams ;
+    ListOfOutDataStreamParameters theListOfOutDataStreams ;
     ListOfFuncName                theListOfFuncName ;
     ListOfPythonFunctions         theListOfPythonFunctions ;
     SUPERV::SDate                 theFirstCreation ;
@@ -125,7 +150,7 @@ namespace GraphBase {
     SCoord                        theCoords ;
   };
 
-  typedef vector<SNode> ListOfNodes;
+  typedef vector<SNode> ListOfSNodes;
 
   struct ServicesData {
     SALOME_ModuleCatalog::ServicesParameter aDataParameter ;
@@ -143,16 +168,16 @@ namespace GraphBase {
     ListOfCoords aListOfCoords ;
   };
 
-  typedef vector<SLink> ListOfLinks;
+  typedef vector<SLink> ListOfSLinks;
 
   struct SGraph {
     SNode        Info ;
-    ListOfNodes  Nodes ;
-    ListOfLinks  Links ;
-    ListOfLinks  Datas ;
+    ListOfSNodes  Nodes ;
+    ListOfSLinks  Links ;
+    ListOfSLinks  Datas ;
   };
 
-  typedef vector<SGraph> ListOfGraphs;
+  typedef vector<SGraph> ListOfSGraphs;
 
   class Base {
 
@@ -175,14 +200,11 @@ namespace GraphBase {
       CORBA::Object_ptr StringToObject(char * obj ) const ;
 
   } ;
-# ifdef _DEBUG_
-
-//             *GraphBase::Base::_fdebug << "      " /*<< setw(3*(*GraphBase::Base::_prof_debug)) */<< " "
 
-#   define cdebug if ( GraphBase::Base::_fdebug )  *GraphBase::Base::_fdebug << "      " << " "
+# ifdef _DEBUG_
 
+#   define cdebug if ( GraphBase::Base::_fdebug )  *GraphBase::Base::_fdebug << "      "
 #   define cdebug_in if ( GraphBase::Base::_fdebug ) *GraphBase::Base::_fdebug << endl << "-->" << " "
-
 #   define cdebug_out if ( GraphBase::Base::_fdebug ) *GraphBase::Base::_fdebug << endl << "<--" << " "
 
 # else
@@ -192,8 +214,10 @@ namespace GraphBase {
 #   define cdebug_out cdebug
 #   define debugFile(x) 
 
-# endif
+#endif
 
 } ;
 
+ostream & operator<< (ostream &,const SALOME_ModuleCatalog::DataStreamType &);
+
 #endif