Sage Modeling and Simulation Library

Ligature Members

The Ligature type exposes the following members.

Constructors


  Name Description
Public method Ligature()()()()
Default constructor for persistence only.
Public method Ligature(String)
Initializes a new instance of the Ligature class.
Public method Ligature(Vertex, Vertex, String)
Initializes a new instance of the Ligature class.

Methods


  Name Description
Protected method _PopulateClone
Populates the clone, adding clones of its children, and the edges relating them to the clone of this edge.
(Inherited from Edge.)
Public method Accept
Accepts a visitor, subsequently calling the visitor's Visit(this) method. See the Visitor design pattern for details.
(Inherited from Edge.)
Public method AddChainOfChildren
This method takes a list of edges, and first creates a chain out of them, and then adds that chain as a set of child tasks. Note that a restriction is that the edge to which these edges are being added cannot already have children assigned to it.
(Inherited from Edge.)
Public method AddChildEdge
Adds the child edge as a child to this edge. It will be attached at its pre-vertex to this one's pre-vertex, and at its post-vertex to this one's post-vertex. Any further sequencing between the provided edge and other edges is governed by otherwise-defined ligatures, synchronizers, etc.
(Inherited from Edge.)
Public method AddChildEdges
Adds the list of child edges as children to this edge. They are treated as equals, all attached at their pre-vertices to this one's pre-vertex, and at their post-vertices to this one's post-vertex. Any further sequencing between them is governed by otherwise-defined ligatures, synchronizers, etc.
(Inherited from Edge.)
Public method AddCofinish
Adds the slave Edge as a CoFinish. A CoFinish exists when a master edge's postVertex is not permitted to fire until the slave edge has completed. Thus, the master edge's postvertex will not be allowed to fire until the slave edge's postvertex has fired.
(Inherited from Edge.)
Public method AddCostart
Adds the slave Edge as a CoStart. A CoStart is an edge that is allowed to start as soon as this edge has started. Thus, the slave edge's prevertex will not be allowed to fire until this edge's prevertex has fired.
(Inherited from Edge.)
Public method AddPredecessor
Creates a Ligature between the provided edge's postVertex and this one's PreVertex, making the provided edge a predecessor to this one. This API also interacts with a ValidationService to enable it to correctly manage graph validity state.
(Inherited from Edge.)
Public method AddSuccessor
Creates a Ligature between the provided edge's preVertex and this one's postVertex, making the provided edge a successor to this one. This API also interacts with a ValidationService to enable it to correctly manage graph validity state.
(Inherited from Edge.)
Public method Clone
Creates a new object that is a copy of the current instance. This is not supported for ligatures.
Public method Static member CreateName(Edge, Edge)
Creates a name for this ligature based on the names of the from and to edges.
Public method Static member CreateName(Vertex, Vertex)
Creates a name for this ligature based on the names of the from and to vertices.
Protected method CreateVertices
Creates the pre and post vertices for this edge, providing them with default names and connecting them to this edge.
Public method DeserializeFrom
Reconstitutes this object from the specified XmlSerializationContext.
(Inherited from Edge.)
Public method Disconnect
Disconnects this instance from any parent edges, predecessors and successors. Child edges are left attached.
Public method Equals(System.Object)
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected method Finalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public method GetChildren
Gets the children (from a perspective of validity) of the implementer.
(Inherited from Edge.)
Public method GetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public method GetParent
Gets the parent edge to this one. If the graph is not hierarchical, this will be null.
(Inherited from Edge.)
Public method GetSuccessors
Gets the successors (from a perspective of validity) of the implementer.
(Inherited from Edge.)
Public method GetType
Gets the Type of the current instance.
(Inherited from Object.)
Public method GetVertex
Gets the pre- or post-vertex of this edge..
(Inherited from Edge.)
Protected method InitializeStructuralChangeHandlers
Initializes the structural change handlers - GainedPredecessorEvent, GainedSuccessorEvent, LostPredecessorEvent, and LostSuccessorEvent.
Public method InsertBetween
Inserts this edge between the two provided edges. This is done by calling [T:Edge#AddSuccessor] for this edge on the preEdge, and [T:Edge#AddPredecessor] for this edge on the postEdge.
(Inherited from Edge.)
Public method IsRunning
Determines whether the specified graph context is running.
(Inherited from Edge.)
Public method Join
This edge will immediately suspend execution until the otherEdge completes.
(Inherited from Edge.)
Protected method MemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public method NotifyOverallValidityChange
Called by the ValidationService upon an overall validity change.
(Inherited from Edge.)
Protected method OnExecutionComplete
Called when execution of this edge is complete.
(Inherited from Edge.)
Public method PreVertexSatisfied
Called by the pre-vertex when it has been satisfied - that is, all incoming edges and synchronizers to that vertex have fired.
Public method RemoveChildEdge
Removes the child edge, and the ligatures that establish it as a child (i.e. between the parent's pre-vertex and this one's pre-vertex, and the parent's post-vertex and this one's post-vertex.)
(Inherited from Edge.)
Public method RemoveChildEdges
Removes the child edges, and the ligatures that establish them as children (i.e. between the parent's pre-vertex and their pre-vertices, and the parent's post-vertex and their post-vertices.)
(Inherited from Edge.)
Public method RemoveCofinish
Removes a cofinish relationship between this edge and the provided slave edge, if such exists.
(Inherited from Edge.)
Public method RemoveCostart
Removes a costart relationship between this edge and the provided slave edge, if such exists.
(Inherited from Edge.)
Public method RemovePredecessor
Either removes a Ligature between the provided edge's postVertex and this one's PreVertex, removing the provided edge as a predecessor to this one. If the provided edge is a Ligature, then the ligature itself is disconnected from this edge. This API also interacts with a ValidationService to enable it to correctly manage graph validity state.
(Inherited from Edge.)
Public method RemoveSuccessor
Either removes a Ligature between the provided edge's preVertex and this one's PostVertex, removing the provided edge as a successor to this one. If the provided edge is a Ligature, then the ligature itself is disconnected from this edge. This API also interacts with a ValidationService to enable it to correctly manage graph validity state.
(Inherited from Edge.)
Public method SerializeTo
Stores this object to the specified XmlSerializationContext.
(Inherited from Edge.)
Public method Start()()()()
Begins execution of the graph under this edge using a default GraphContext. Start
(Inherited from Edge.)
Public method Start(IDictionary)
Begins execution of the graph under the specified graph context.
(Inherited from Edge.)
Public method ToString
Returns a String that represents the current Edge.
(Inherited from Edge.)
Public method Yield
Gives up the execution thread temporarily to any awaiting edges. This edge will be called to resume execution later in this same timeslice.
(Inherited from Edge.)

Properties


  Name Description
Public property Channel
An edge's channel is used by a vertex's branch manager to determine which successor edges are to fire when the vertex's predecessors have all fired. The channel can be null, if there is no branch manager, or if the provided branch manager allows it.
(Inherited from Edge.)
Public property ChildEdges
Gets the child edges of this one. No sequence is implied in this collection - child edges are executed in an order according to their vertices' relationships to each other and their parents.
(Inherited from Edge.)
Protected property CloneName
Gets a name for the next clone to be obtained. Note that calling this method increases the index number used to create the name.
(Inherited from Edge.)
Public property Description
A description of this Edge.
(Inherited from Edge.)
Public property ExecutionDelegate
Gets or sets the execution delegate that this edge uses to call application code.
(Inherited from Edge.)
Public property Name
The name of this edge.
(Inherited from Edge.)
Protected property Parent
Gets or sets the parent edge to this one. If the graph is not hierarchical, this will be null.
(Inherited from Edge.)
Public property PostVertex
The postVertes to this edge.
(Inherited from Edge.)
Public property PredecessorEdges
Gets a list of predecessor edges attached to this edge's preVertex.
(Inherited from Edge.)
Public property PreVertex
The preVertex to this edge.
(Inherited from Edge.)
Public property SelfState
Gets or sets the state (from a perspective of validity) of the implementer.
(Inherited from Edge.)
Public property SuccessorEdges
Gets a list of successor edges attached to this edge's postVertex.
(Inherited from Edge.)
Public property UtilRef
Gets or sets the utility reference. This is a reference that can be used by whomever needs to do so, for short periods. The cloning mechanism, for example, uses it during cloning.
(Inherited from Edge.)
Public property ValidationService
Gets or sets the validation service that oversees the implementer.
(Inherited from Edge.)

Events


  Name Description
Public event CloneEvent
Fired after this edge is cloned.
(Inherited from Edge.)
Public event EdgeExecutionFinishingEvent
Called as soon as the application code in the EdgeExecutionDelegate has finished.
(Inherited from Edge.)
Public event EdgeExecutionStartingEvent
Fired after an edge has been notified that it may start, and immediately prior to calling the EdgeExecutionDelegate which contains the application code.
(Inherited from Edge.)
Public event EdgeFinishingEvent
Called as an edge's post-vertex is starting to fire.
(Inherited from Edge.)
Public event EdgeStartingEvent
Called as an edge's pre-vertex is starting to fire.
(Inherited from Edge.)
Public event GainedPredecessorEvent
Fired after an edge has gained a predecessor.
(Inherited from Edge.)
Public event GainedSuccessorEvent
Fired after an edge has gained a successor.
(Inherited from Edge.)
Public event LostPredecessorEvent
Fired after an edge has lost a predecessor.
(Inherited from Edge.)
Public event LostSuccessorEvent
Fired after an edge has lost a successor.
(Inherited from Edge.)
Public event StructureChangeHandler
This event is fired any time the graph's structure changes.
(Inherited from Edge.)
Public event ValidityChangeEvent
Fired when the Validation Service determines that this edge's validity has changed.
(Inherited from Edge.)