JUCE  v5.1.1-3-g1a0b28c73
JUCE API
RelativeTime Class Reference

A relative measure of time. More...

#include <juce_RelativeTime.h>

Collaboration diagram for RelativeTime:

Public Member Functions

 RelativeTime (double seconds=0.0) noexcept
 Creates a RelativeTime. More...
 
 RelativeTime (const RelativeTime &other) noexcept
 Copies another relative time. More...
 
 ~RelativeTime () noexcept
 Destructor. More...
 
String getDescription (const String &returnValueForZeroTime="0") const
 Returns a readable textual description of the time. More...
 
double inDays () const noexcept
 Returns the number of days this time represents. More...
 
double inHours () const noexcept
 Returns the number of hours this time represents. More...
 
int64 inMilliseconds () const noexcept
 Returns the number of milliseconds this time represents. More...
 
double inMinutes () const noexcept
 Returns the number of minutes this time represents. More...
 
double inSeconds () const noexcept
 Returns the number of seconds this time represents. More...
 
double inWeeks () const noexcept
 Returns the number of weeks this time represents. More...
 
RelativeTime operator+= (RelativeTime timeToAdd) noexcept
 Adds another RelativeTime to this one. More...
 
RelativeTime operator+= (double secondsToAdd) noexcept
 Adds a number of seconds to this time. More...
 
RelativeTime operator-= (RelativeTime timeToSubtract) noexcept
 Subtracts another RelativeTime from this one. More...
 
RelativeTime operator-= (double secondsToSubtract) noexcept
 Subtracts a number of seconds from this time. More...
 
RelativeTimeoperator= (const RelativeTime &other) noexcept
 Copies another relative time. More...
 

Static Public Member Functions

static RelativeTime days (double numberOfDays) noexcept
 Creates a new RelativeTime object representing a number of days. More...
 
static RelativeTime hours (double numberOfHours) noexcept
 Creates a new RelativeTime object representing a number of hours. More...
 
static RelativeTime milliseconds (int milliseconds) noexcept
 Creates a new RelativeTime object representing a number of milliseconds. More...
 
static RelativeTime milliseconds (int64 milliseconds) noexcept
 Creates a new RelativeTime object representing a number of milliseconds. More...
 
static RelativeTime minutes (double numberOfMinutes) noexcept
 Creates a new RelativeTime object representing a number of minutes. More...
 
static RelativeTime seconds (double seconds) noexcept
 Creates a new RelativeTime object representing a number of seconds. More...
 
static RelativeTime weeks (double numberOfWeeks) noexcept
 Creates a new RelativeTime object representing a number of weeks. More...
 

Private Attributes

double numSeconds
 

Detailed Description

A relative measure of time.

The time is stored as a number of seconds, at double-precision floating point accuracy, and may be positive or negative.

If you need an absolute time, (i.e. a date + time), see the Time class.

Constructor & Destructor Documentation

◆ RelativeTime() [1/2]

RelativeTime::RelativeTime ( double  seconds = 0.0)
explicitnoexcept

Creates a RelativeTime.

Parameters
secondsthe number of seconds, which may be +ve or -ve.
See also
milliseconds, minutes, hours, days, weeks

◆ RelativeTime() [2/2]

RelativeTime::RelativeTime ( const RelativeTime other)
noexcept

Copies another relative time.

◆ ~RelativeTime()

RelativeTime::~RelativeTime ( )
noexcept

Destructor.

Member Function Documentation

◆ days()

static RelativeTime RelativeTime::days ( double  numberOfDays)
staticnoexcept

Creates a new RelativeTime object representing a number of days.

See also
milliseconds, minutes, hours, weeks

◆ getDescription()

String RelativeTime::getDescription ( const String returnValueForZeroTime = "0") const

Returns a readable textual description of the time.

The exact format of the string returned will depend on the magnitude of the time - e.g.

"1 min 4 secs", "1 hr 45 mins", "2 weeks 5 days", "140 ms"

so that only the two most significant units are printed.

The returnValueForZeroTime value is the result that is returned if the length is zero. Depending on your application you might want to use this to return something more relevant like "empty" or "0 secs", etc.

See also
inMilliseconds, inSeconds, inMinutes, inHours, inDays, inWeeks

◆ hours()

static RelativeTime RelativeTime::hours ( double  numberOfHours)
staticnoexcept

Creates a new RelativeTime object representing a number of hours.

See also
milliseconds, minutes, days, weeks

◆ inDays()

double RelativeTime::inDays ( ) const
noexcept

Returns the number of days this time represents.

See also
inMilliseconds, inSeconds, inMinutes, inHours, inWeeks

◆ inHours()

double RelativeTime::inHours ( ) const
noexcept

Returns the number of hours this time represents.

See also
inMilliseconds, inSeconds, inMinutes, inDays, inWeeks

◆ inMilliseconds()

int64 RelativeTime::inMilliseconds ( ) const
noexcept

Returns the number of milliseconds this time represents.

See also
milliseconds, inSeconds, inMinutes, inHours, inDays, inWeeks

◆ inMinutes()

double RelativeTime::inMinutes ( ) const
noexcept

Returns the number of minutes this time represents.

See also
inMilliseconds, inSeconds, inHours, inDays, inWeeks

◆ inSeconds()

double RelativeTime::inSeconds ( ) const
inlinenoexcept

Returns the number of seconds this time represents.

See also
inMilliseconds, inMinutes, inHours, inDays, inWeeks

References operator+=().

◆ inWeeks()

double RelativeTime::inWeeks ( ) const
noexcept

Returns the number of weeks this time represents.

See also
inMilliseconds, inSeconds, inMinutes, inHours, inDays

◆ milliseconds() [1/2]

static RelativeTime RelativeTime::milliseconds ( int  milliseconds)
staticnoexcept

Creates a new RelativeTime object representing a number of milliseconds.

See also
seconds, minutes, hours, days, weeks

◆ milliseconds() [2/2]

static RelativeTime RelativeTime::milliseconds ( int64  milliseconds)
staticnoexcept

Creates a new RelativeTime object representing a number of milliseconds.

See also
seconds, minutes, hours, days, weeks

◆ minutes()

static RelativeTime RelativeTime::minutes ( double  numberOfMinutes)
staticnoexcept

Creates a new RelativeTime object representing a number of minutes.

See also
milliseconds, hours, days, weeks

◆ operator+=() [1/2]

RelativeTime RelativeTime::operator+= ( RelativeTime  timeToAdd)
noexcept

Adds another RelativeTime to this one.

◆ operator+=() [2/2]

RelativeTime RelativeTime::operator+= ( double  secondsToAdd)
noexcept

Adds a number of seconds to this time.

◆ operator-=() [1/2]

RelativeTime RelativeTime::operator-= ( RelativeTime  timeToSubtract)
noexcept

Subtracts another RelativeTime from this one.

◆ operator-=() [2/2]

RelativeTime RelativeTime::operator-= ( double  secondsToSubtract)
noexcept

Subtracts a number of seconds from this time.

◆ operator=()

RelativeTime& RelativeTime::operator= ( const RelativeTime other)
noexcept

Copies another relative time.

◆ seconds()

static RelativeTime RelativeTime::seconds ( double  seconds)
staticnoexcept

Creates a new RelativeTime object representing a number of seconds.

See also
milliseconds, minutes, hours, days, weeks

◆ weeks()

static RelativeTime RelativeTime::weeks ( double  numberOfWeeks)
staticnoexcept

Creates a new RelativeTime object representing a number of weeks.

See also
milliseconds, minutes, hours, days

Member Data Documentation

◆ numSeconds

double RelativeTime::numSeconds
private

The documentation for this class was generated from the following file: