Skip to content

TTimeInterval

Ivan Semenkov edited this page Jan 28, 2021 · 1 revision

Table of contents

About

TTimeInterval is a class for working with time intervals. Class can convert it's stored value between microseconds and hours.

uses
  utils.timeinterval;
  
type
  TTimeInterval = class
  type
    TMicrosecond = class
    TMillisecond = class
    TSecond = class
    TMinute = class
    THour = class
  end;

Create

A new time interval class can be created by call its constructor.

constructor Create;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  
  FreeAndNil(interval);
end;

Values

To get/set value for a TTimeInterval use next properties.

Microseconds

Get/set microseconds value.

property Microseconds : Int64;
property us : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  interval.Microseconds := 241;
  writeln(interval.us);
  
  FreeAndNil(interval);
end;

Milliseconds

Get/set milliseconds value.

property Milliseconds : Int64;
property ms : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  interval.Milliseconds := 52;
  writeln(interval.ms);
  
  FreeAndNil(interval);
end;

Seconds

Get/set seconds value.

property Seconds : Int64;
property s : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  interval.Seconds := 57;
  writeln(interval.s);
  
  FreeAndNil(interval);
end;

Minutes

Get/set minutes value.

property Minutes : Int64;
property m : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  interval.Minutes := 29;
  writeln(interval.m);
  
  FreeAndNil(interval);
end;

Hours

Get/set hours value.

property Hours : Int64;
property h : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  interval.Hours := 14;
  writeln(interval.h);
  
  FreeAndNil(interval);
end;

Convert

To convert value use next properties.

ToMicroseconds

Convert stored size to microseconds.

function ToMicroseconds : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  writeln(interval.ToMicroseconds);
  
  FreeAndNil(interval);
end;

ToMilliseconds

Convert stored size to milliseconds.

function ToMilliseconds : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  writeln(interval.ToMilliseconds);
  
  FreeAndNil(interval);
end;

ToSeconds

Convert stored size to seconds.

function ToSeconds : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  writeln(interval.ToSeconds);
  
  FreeAndNil(interval);
end;

ToMinutes

Convert stored size to minutes.

function ToMinutes : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  writeln(interval.ToMinutes);
  
  FreeAndNil(interval);
end;

ToHours

Convert stored size to hours.

function ToHours : Int64;
Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  writeln(interval.ToHours);
  
  FreeAndNil(interval);
end;

ToString

Format stored time interval to string value.

function ToString(ASuffix : string = '') : string;

ASuffix was append after value presentation.

Example
uses
  utils.timeinterval;
  
var
  interval : TTimeInterval;
  
begin
  interval := TTimeInterval.Create;
  interval.Seconds := 9;
  writeln(interval.ToString(' remaining')); { print '00:00:09 remaining' }
  
  FreeAndNil(interval);
end;