SuspendDoneState , SuspendErroredState ,
KillState , StopState ,
ReRunState , ReStartState ,
- NumberOfGraphStates } ;
+ LoadingState, NumberOfGraphStates } ;
/*! A sequence of string values.
*/
Engines::Component ComponentRef( in string aComputerContainer ,
in string aComponentName ) ;
-/*!
- Creates a link connecting two ports (%Output %Port and %Input %Port) of the nodes in a Graph
-*/
+ /*! Creates a link connecting two ports (%Output %Port and %Input %Port) of the nodes in a Graph
+ */
SUPERV::Link Link( in SUPERV::Port OutputPort ,
in SUPERV::Port InputPort ) ;
-/*!
-Imports a graph into a file with XML format
-\param anXmlFile String parameter defining the name of the XML file.
-\return True, if the graph has been successfully imported.
-*/
+ /*!
+ Imports a graph into a file with XML format
+ \param anXmlFile String parameter defining the name of the XML file.
+ \return True, if the graph has been successfully imported.
+ */
boolean Import( in string anXmlFile ) ;
-/*!
-Exports a graph from a file with XML format
-\param anXmlFile String parameter defining the name of the XML file.
-\return True, if the graph has been successfully imported.
-*/
+
+ /*!
+ Exports a graph from a file with XML format
+ \param anXmlFile String parameter defining the name of the XML file.
+ \return True, if the graph has been successfully imported.
+ */
boolean Export( in string anXmlFile ) ;
-/*!
-Returns True if the graph is read Only.
-*/
+
+ /*!
+ Returns True if the graph is read Only.
+ */
boolean IsReadOnly() ;
-/*!
- Starts asynchronous execution of the graph.
-*/
+ /*!
+ Starts asynchronous execution of the graph.
+ */
boolean Run() ;
-/*!
- Assigns to the %Node an %Event and a %State of the %Node, if the Event is
- available. And returns immediately Nil, NoEvent and NoState if not.
- Returns false if the graph is finished, suspended, killed or stopped.
-\param aNode %Node for which this method is called
-\param anEvent An operation, which has been performed on this node(graph).
-\param aState Current state of the graph
-*/
+ /*!
+ Assigns to the %Node an %Event and a %State of the %Node, if the Event is
+ available. And returns immediately Nil, NoEvent and NoState if not.
+ Returns false if the graph is finished, suspended, killed or stopped.
+ \param aNode %Node for which this method is called
+ \param anEvent An operation, which has been performed on this node(graph).
+ \param aState Current state of the graph
+ */
boolean EventNoW( out SUPERV::CNode aNode , out SUPERV::GraphEvent anEvent ,
out SUPERV::GraphState aState ) ;
-/*!
- Assigns to the %Node an %Event and a %State of the %Node, if the Event is
- available. Waits if it is not available at the current moment.
- Returns false if the graph is finished, suspended, killed or stopped.
-\param aNode %Node for which this method is called
-\param anEvent An operation, which has been performed on this node(graph).
-\param aState Current state of the graph
-*/
+ /*!
+ Assigns to the %Node an %Event and a %State of the %Node, if the Event is
+ available. Waits if it is not available at the current moment.
+ Returns false if the graph is finished, suspended, killed or stopped.
+ \param aNode %Node for which this method is called
+ \param anEvent An operation, which has been performed on this node(graph).
+ \param aState Current state of the graph
+ */
boolean Event( out SUPERV::CNode aNode , out SUPERV::GraphEvent anEvent ,
out SUPERV::GraphState aState ) ;
-
+
// Same as Event but execution of the thread is suspended between the
// return of EventW and the next call to EventW
-/*!
- Assigns to the %Node an %Event and a %State of the %Node, if the Event is
- available. And returns immediately Nil, NoEvent and NoState if not.
- Returns false if the graph is finished, suspended, killed or stopped.
-\note <BR>Execution of the thread is suspended between the return of this
-method and its next usage.
-\param aNode %Node for which this method is called
-\param anEvent An operation, which has been performed on this node(graph).
-\param aState Current state of the graph
-*/
+ /*!
+ Assigns to the %Node an %Event and a %State of the %Node, if the Event is
+ available. And returns immediately Nil, NoEvent and NoState if not.
+ Returns false if the graph is finished, suspended, killed or stopped.
+ \note <BR>Execution of the thread is suspended between the return of this
+ method and its next usage.
+ \param aNode %Node for which this method is called
+ \param anEvent An operation, which has been performed on this node(graph).
+ \param aState Current state of the graph
+ */
boolean EventW( out SUPERV::CNode aNode , out SUPERV::GraphEvent anEvent ,
out SUPERV::GraphState aState ) ;
-/*! \name Methods used for inner debugging purposes of threads management :
-*/
-/*@{*/
-
+ /*! \name Methods used for inner debugging purposes of threads management :
+ */
+ /*@{*/
+
long EventQSize() ;
long LevelMax() ;
SUPERV::ListOfNodes LevelNodes( in long aLevel ) ;
long ThreadsMax() ;
+
+ /*@}*/
-/*@}*/
-
-/*!
-Returns the number of currently running threads.
-*/
+ /*!
+ Returns the number of currently running threads.
+ */
long Threads();
-/*!
-Returns the number of suspended threads.
-*/
+ /*!
+ Returns the number of suspended threads.
+ */
long SuspendedThreads();
-/*!
-Returns True if the graph is valid.
-*/
+ /*!
+ Returns True if the graph is valid.
+ */
boolean IsValid() ;
-/*!
-Returns True if the graph can be executed.
-*/
+ /*!
+ Returns True if the graph can be executed.
+ */
boolean IsExecutable() ;
-/*!
-Returns True if the graph is being currently edited.
-*/
+ /*!
+ Returns True if the graph is being currently edited.
+ */
boolean IsEditing() ;
-/*!
-Returns True if the graph is being currently executed.
-*/
+ /*!
+ Returns True if the graph is being currently executed.
+ */
boolean IsExecuting() ;
-
+
long LastLevelDone() ;
-
-/*!
- Launches step-by-step execution of the graph.
-\note The execution is suspended immediatly after performance of operations of the first node and
-user can specify the nodes, where execution will be again suspended after its resuming.
-*/
+
+ /*!
+ Launches step-by-step execution of the graph.
+ \note The execution is suspended immediatly after performance of operations of the first node and
+ user can specify the nodes, where execution will be again suspended after its resuming.
+ */
boolean Start() ;
-/*!
-Allows to copy one graph into another.
-*/
+ /*!
+ Allows to copy one graph into another.
+ */
SUPERV::Graph Copy() ;
-/*!
-Convert a FlowGraph to a StreamGraph.
-*/
+ /*!
+ Convert a FlowGraph to a StreamGraph.
+ */
SUPERV::StreamGraph ToStreamGraph() ;
-/*!
-Merges two graphs
-*/
+ /*!
+ Merges two graphs
+ */
boolean Merge( in Graph aGraph ) ;
-/*!
-Returns a list of nodes of the graph.
-*/
+ /*!
+ Returns a list of nodes of the graph.
+ */
SUPERV::ListOfNodes Nodes() ;
-/*!
-Returns a list of links of the graph.
-*/
+ /*!
+ Returns a list of links of the graph.
+ */
SUPERV::ListOfLinks GLinks() ;
-/*!
-Gets IOR of the garph.
-*/
+ /*!
+ Gets IOR of the garph.
+ */
string getIOR();
-
-/*!
-Returns the number of independent subgraphs
-*/
+
+ /*!
+ Returns the number of independent subgraphs
+ */
long SubGraphsNumber() ;
-/*!
-Returns a list of Nodes of a SubGraph.
-*/
+ /*!
+ Returns a list of Nodes of a SubGraph.
+ */
SUPERV::ListOfNodes SubGraphsNodes( in long SubGraphNumber ) ;
+ /*! Forces use of Editor's data model and destroy of Executor
+ */
+ void Editing();
+
} ;
// void Destroy() ;
+ /*! Checks if the types of Ports that it connects are compatible
+ */
+ boolean IsValid();
+
} ;