GENERIC INTERFACE LocalAttributes(Pixel, LayerAttributes); (* WHERE /\ IN LayerAttributes /\ TYPE T /\ TYPE Neighborhood = ARRAY[-1..+1] OF ARRAY[-1..+1] OF LONGREAL /\ PROCEDURE FromNeighborhood(n: Neighborhood; VAR p: T)~ /\ INTERFACE LocalEvaluator = LocalEvaluator(LocalAttributes) *) TYPE T = ARRAY [0..Pixel.N] OF LayerAttributes.T; PROCEDURE FromNeighborhood(READONLY n: Neighborhood; VAR p: T); (* Extracts the local attributes "p" from a pixel neighborhood "n". *) END LocalAttributes.