IPPlaceProcs:
CEDAR
DEFINITIONS =
BEGIN
PlaceInit:
PROC[
-- Initial Placement
top: IPTop.Ref,
orderingFn: IPPlaceKit.OrderingFn,
trialsGen: IPPlaceKit.PlaceCompTGen,
placeEval: IPPlaceKit.PlaceEvaluator,
results: OrderedRefArray.Ref
];
PlaceImprove:
PROC[
-- Placement improvement
top: IPTop.Ref,
remove,
numbOfTrials: NAT,
removeTGen: IPPlaceKit.RemoveCompTGen,
removeEval: IPPlaceKit.RemoveEvaluator,
placeTGen: IPPlaceKit.PlaceCompTGen,
placeEval: IPPlaceKit.PlaceEvaluator,
results: OrderedRefArray.Ref
];
--The following procedures are called by PlaceInit
PlaceComps:
PROC[
-- Place all of comps
top: IPTop.Ref,
comps: IPPlaceKit.Components,
trialsGen: IPPlaceKit.PlaceCompTGen,
placeEval: IPPlaceKit.PlaceEvaluator,
results: OrderedRefArray.Ref,
resultsAfter: NAT ← 0
];
RemoveComps:
PROC[
--Remove numb of Components that have been placed
top: IPTop.Ref,
numb: NAT,
trialsGen: IPPlaceKit.RemoveCompTGen,
removeEval: IPPlaceKit.RemoveEvaluator,
results: OrderedRefArray.Ref,
resultsAfter: NAT ← 0
];
END.