50 lines
984 B
Plaintext
50 lines
984 B
Plaintext
|
note
|
||
|
description: "[
|
||
|
A {VITP_CELL} paired with a hammond distance, used by
|
||
|
{VITP_GRID} to order cells based on their distances from
|
||
|
a particulation location.
|
||
|
]"
|
||
|
author: "Jimmy J. Johnson"
|
||
|
date: "4/11/24"
|
||
|
copyright: "Copyright (c) 2024, Jimmy J. Johnson"
|
||
|
license: "Eiffel Forum v2 (http://www.eiffel.com/licensing/forum.txt)"
|
||
|
|
||
|
class
|
||
|
CELL_DISTANCE_TUPLE
|
||
|
|
||
|
inherit
|
||
|
|
||
|
COMPARABLE
|
||
|
|
||
|
create
|
||
|
make
|
||
|
|
||
|
feature {NONE} -- Initialization
|
||
|
|
||
|
make (a_cell: VITP_CELL; a_distance: INTEGER)
|
||
|
-- Create an instance
|
||
|
do
|
||
|
cell := a_cell
|
||
|
distance := a_distance
|
||
|
end
|
||
|
|
||
|
feature -- Access
|
||
|
|
||
|
cell: VITP_CELL
|
||
|
-- The cell
|
||
|
|
||
|
distance: INTEGER
|
||
|
-- The hammond distance (computed elsewhere) to which
|
||
|
-- a `cell' is paired.
|
||
|
|
||
|
feature -- Comparison
|
||
|
|
||
|
is_less alias "<" (other: like Current): BOOLEAN
|
||
|
-- Is current object less than `other'?
|
||
|
do
|
||
|
Result := (distance < other.distance) or else
|
||
|
(distance = other.distance and cell.position < other.cell.position)
|
||
|
end
|
||
|
|
||
|
end
|