********************************************************************
* NOTE: This file is generated automatically from the event
* definition file Maxflow.evt.
********************************************************************
<* PRAGMA LL *>
INTERFACE MaxflowIE ;
<*NOWARN*> IMPORT R2, MFGraph, Algorithm, View, Thread, MFAlgs;
<*NOWARN*> IMPORT MFViews, GraphVBT, RefList, MFFmt;
call the following to generate an event:
PROCEDURE Setup (
initiator: Algorithm.T;
g: MFGraph.T; source: MFGraph.Vertex; sink: MFGraph.Vertex
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE HighlightPath (
initiator: Algorithm.T;
path: RefList.T; maxCapacity: REAL
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE IncFlow (
initiator: Algorithm.T;
edge: MFGraph.Edge; flow: REAL; number: CARDINAL; maxCapacity: REAL; capa: REAL
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE DecFlow (
initiator: Algorithm.T;
edge: MFGraph.Edge; oldflow: REAL; newflow: REAL; number: CARDINAL; maxCapacity: REAL; capa: REAL
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE ShowEdge (
initiator: Algorithm.T;
number, typeOfEdge: CARDINAL
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE RemoveHighlight (
initiator: Algorithm.T;
sinkvertex: MFGraph.Vertex
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE FinalResult (
initiator: Algorithm.T;
b: BOOLEAN
) RAISES {Thread.Alerted};
<* LL = {} *>
PROCEDURE AddVertex (
initiator: View.T;
pos: R2.T
) RAISES {Thread.Alerted};
<* LL = VBT.mu *>
PROCEDURE AddEdge (
initiator: View.T;
v0: MFGraph.Vertex; v1: MFGraph.Vertex
) RAISES {Thread.Alerted};
<* LL = VBT.mu *>
PROCEDURE AddVBTVertex (
initiator: Algorithm.T;
v: MFAlgs.MFVertex; pos: R2.T; label: TEXT
) RAISES {Thread.Alerted};
<* LL = VBT.mu *>
PROCEDURE AddVBTEdge (
initiator: Algorithm.T;
e: MFAlgs.MFEdge
) RAISES {Thread.Alerted};
<* LL = VBT.mu *>
END MaxflowIE.