GRU - Generic Reusable Utilities
Loading...
Searching...
No Matches
Functions
gru_duration.c File Reference
#include "gru_duration.h"

Functions

gru_duration_t gru_duration_new ()
 Creates an new duration object. More...
 
gru_duration_t gru_duration_from_seconds (uint64_t seconds)
 Builds a duration struct that represents a duration. More...
 
gru_duration_t gru_duration_from_minutes (uint64_t minutes)
 Builds a duration struct that represents a duration. More...
 
uint64_t gru_duration_seconds (gru_duration_t duration)
 Given a duration object, return the number of seconds between its start and end time. More...
 
uint64_t gru_duration_minutes (gru_duration_t duration, double *fractional)
 Given a duration object, return the number of minutes between its start and end time. More...
 
bool gru_duration_parse (gru_duration_t *duration, const char *str)
 Parses a string containing a time representation with a suffix and returns its duration in relation to the current time. More...
 

Function Documentation

◆ gru_duration_from_minutes()

gru_duration_t gru_duration_from_minutes ( uint64_t  minutes)

Builds a duration struct that represents a duration.

That means, the current time + the given number of minutes

Parameters
minutesthe duration in minutes
Returns
a duration object

◆ gru_duration_from_seconds()

gru_duration_t gru_duration_from_seconds ( uint64_t  seconds)

Builds a duration struct that represents a duration.

That means, the current time + the given number of seconds

Parameters
secondsthe duration in seconds
Returns
a duration object

◆ gru_duration_minutes()

uint64_t gru_duration_minutes ( gru_duration_t  duration,
double *  fractional 
)

Given a duration object, return the number of minutes between its start and end time.

Parameters
durationa duration object to calculate
Returns
the time difference in minutes

◆ gru_duration_new()

gru_duration_t gru_duration_new ( )

Creates an new duration object.

Returns
a new duration object

◆ gru_duration_parse()

bool gru_duration_parse ( gru_duration_t out,
const char *  str 
)

Parses a string containing a time representation with a suffix and returns its duration in relation to the current time.

The suffix may be 's' for seconds, 'm' for minutes, 'h' for hours or 'd' for days. There can be one or more suffixes (ie.: 1h15m, 1d1h)

Parameters
outparsed duration
strstring to parse (up to a maximum size of 63 bytes)
Returns
bool if successfully parse the string or false if it's not parseable or too large.

◆ gru_duration_seconds()

uint64_t gru_duration_seconds ( gru_duration_t  duration)

Given a duration object, return the number of seconds between its start and end time.

Parameters
durationa duration object to calculate
Returns
the time difference in seconds