INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "Short_Duration"
project: "The Universal Time & Date UTDC"
revision: "$Revision: 1.1 $"
copyright: "Copyright (C) 1996-2005 Object Tools Group"
license: "http://visual-eiffel.com/license"
cluster: timedate
class SHORT_DURATION
inherit

SIMPLE_DURATION
end
creation

clear,
set_from_milliseconds,
set_seconds,
set_time
feature

milliseconds: INTEGER
feature -- Commands

set_time (hr, me: INTEGER; sd: DOUBLE)
require
time_valid: sd < tt.seconds_in_minute and then sd > - tt.seconds_in_minute and then me < tt.minutes_in_hour and then me > - tt.minutes_in_hour

set_seconds (seconds: DOUBLE)

set_from_milliseconds (n: INTEGER)

clear
feature -- Queries

hour_part: INTEGER

minute_part: INTEGER

second_part: DOUBLE

as_seconds: DOUBLE

as_minutes: DOUBLE

as_hours: DOUBLE

whole_seconds: INTEGER

whole_minutes: INTEGER

whole_hours: INTEGER

infix "<" (ts: like Current): BOOLEAN

infix "+", plus (d: like Current): like Current

infix "-", minus (d: like Current): like Current

multiply_by (n: INTEGER): like Current

divide_by (n: INTEGER): like Current
require
non_zero_divider: n /= 0

ratio, divide_by_duration (d: like Current): DOUBLE
require
non_zero_param: d.milliseconds /= 0
end -- class SHORT_DURATION

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES