<> <> <> <> <> ImagerBrick: CEDAR DEFINITIONS = BEGIN <> Brick: TYPE = REF BrickRep; BrickRep: TYPE = RECORD[ fSize, sSize: CARDINAL, -- dimensions of the matrix always positive phase: INTEGER, -- shift value of succeeding matrix repetition u, v: CARDINAL, -- values matrix was derived from cBrick: SEQUENCE size: NAT OF REAL ]; <<>> <> BuildBrick: PROC [freq: REAL, angle: REAL, filter: PROC [x, y: REAL] RETURNS [fvalue: REAL]] RETURNS [brick: Brick]; <> <> <> GetSize: PROC [brick: Brick] RETURNS [fSize, sSize: CARDINAL, phase: INTEGER]; <> GetElement: PROC [brick: Brick, x, y: CARDINAL] RETURNS [bElement: REAL]; GetRow: PROC [brick: Brick, x, y: CARDINAL] RETURNS [row: CARDINAL]; GetCol: PROC [brick: Brick, x, y: CARDINAL] RETURNS [col: CARDINAL]; END. -- of CGBrick <> <<>> <> <> <> <> <> <> <<>>