Gst.DateTime

Fields

None

Methods

class

new (tzoffset, year, month, day, hour, minute, seconds)

class

new_from_g_date_time (dt)

class

new_from_iso8601_string (string)

class

new_from_unix_epoch_local_time (secs)

class

new_from_unix_epoch_local_time_usecs (usecs)

class

new_from_unix_epoch_utc (secs)

class

new_from_unix_epoch_utc_usecs (usecs)

class

new_local_time (year, month, day, hour, minute, seconds)

class

new_now_local_time ()

class

new_now_utc ()

class

new_y (year)

class

new_ym (year, month)

class

new_ymd (year, month, day)

get_day ()

get_hour ()

get_microsecond ()

get_minute ()

get_month ()

get_second ()

get_time_zone_offset ()

get_year ()

has_day ()

has_month ()

has_second ()

has_time ()

has_year ()

ref ()

to_g_date_time ()

to_iso8601_string ()

unref ()

Details

class Gst.DateTime

Struct to store date, time and timezone information altogether. Gst.DateTime is refcounted and immutable.

Date information is handled using the [proleptic Gregorian calendar].

Provides basic creation functions and accessor functions to its fields.

[proleptic Gregorian calendar]: https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar

classmethod new(tzoffset, year, month, day, hour, minute, seconds)[source]
Parameters:
  • tzoffset (float) – Offset from UTC in hours.

  • year (int) – the gregorian year

  • month (int) – the gregorian month

  • day (int) – the day of the gregorian month

  • hour (int) – the hour of the day

  • minute (int) – the minute of the hour

  • seconds (float) – the second of the minute

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the date and times in the gregorian calendar in the supplied timezone.

year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31, hour from 0 to 23, minutes and seconds from 0 to 59.

Note that tzoffset is a float and was chosen so for being able to handle some fractional timezones, while it still keeps the readability of representing it in hours for most timezones.

If value is -1 then all over value will be ignored. For example if month == -1, then Gst.DateTime will be created only for year. If day == -1, then Gst.DateTime will be created for year and month and so on.

classmethod new_from_g_date_time(dt)[source]
Parameters:

dt (GLib.DateTime or None) – the GLib.DateTime.

Returns:

a newly created Gst.DateTime, or None if dt is None.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime from a GLib.DateTime object.

classmethod new_from_iso8601_string(string)[source]
Parameters:

string (str) – ISO 8601-formatted datetime string.

Returns:

a newly created Gst.DateTime, or None on error

Return type:

Gst.DateTime or None

Tries to parse common variants of ISO-8601 datetime strings into a Gst.DateTime. Possible input formats are (for example): 2012-06-30T22:46:43Z, 2012, 2012-06, 2012-06-30, 2012-06-30T22:46:43-0430, 2012-06-30T22:46Z, 2012-06-30T22:46-0430, 2012-06-30 22:46, 2012-06-30 22:46:43, 2012-06-00, 2012-00-00, 2012-00-30, 22:46:43Z, 22:46Z, 22:46:43-0430, 22:46-0430, 22:46:30, 22:46 If no date is provided, it is assumed to be “today” in the timezone provided (if any), otherwise UTC.

classmethod new_from_unix_epoch_local_time(secs)[source]
Parameters:

secs (int) – seconds from the Unix epoch

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the time since Jan 1, 1970 specified by secs. The Gst.DateTime is in the local timezone.

classmethod new_from_unix_epoch_local_time_usecs(usecs)[source]
Parameters:

usecs (int) – microseconds from the Unix epoch

Returns:

a newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the time since Jan 1, 1970 specified by usecs. The Gst.DateTime is in the local timezone.

New in version 1.18.

classmethod new_from_unix_epoch_utc(secs)[source]
Parameters:

secs (int) – seconds from the Unix epoch

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the time since Jan 1, 1970 specified by secs. The Gst.DateTime is in the UTC timezone.

classmethod new_from_unix_epoch_utc_usecs(usecs)[source]
Parameters:

usecs (int) – microseconds from the Unix epoch

Returns:

a newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the time since Jan 1, 1970 specified by usecs. The Gst.DateTime is in UTC.

New in version 1.18.

classmethod new_local_time(year, month, day, hour, minute, seconds)[source]
Parameters:
  • year (int) – the gregorian year

  • month (int) – the gregorian month, or -1

  • day (int) – the day of the gregorian month, or -1

  • hour (int) – the hour of the day, or -1

  • minute (int) – the minute of the hour, or -1

  • seconds (float) – the second of the minute, or -1

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the date and times in the gregorian calendar in the local timezone.

year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31, hour from 0 to 23, minutes and seconds from 0 to 59.

If month is -1, then the Gst.DateTime created will only contain year, and all other fields will be considered not set.

If day is -1, then the Gst.DateTime created will only contain year and month and all other fields will be considered not set.

If hour is -1, then the Gst.DateTime created will only contain year and month and day, and the time fields will be considered not set. In this case minute and seconds should also be -1.

classmethod new_now_local_time()[source]
Returns:

the newly created Gst.DateTime which should be freed with Gst.DateTime.unref(), or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime representing the current date and time.

classmethod new_now_utc()[source]
Returns:

the newly created Gst.DateTime which should be freed with Gst.DateTime.unref(), or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime that represents the current instant at Universal coordinated time.

classmethod new_y(year)[source]
Parameters:

year (int) – the gregorian year

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the date and times in the gregorian calendar in the local timezone.

year should be from 1 to 9999.

classmethod new_ym(year, month)[source]
Parameters:
  • year (int) – the gregorian year

  • month (int) – the gregorian month

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the date and times in the gregorian calendar in the local timezone.

year should be from 1 to 9999, month should be from 1 to 12.

If value is -1 then all over value will be ignored. For example if month == -1, then Gst.DateTime will created only for year.

classmethod new_ymd(year, month, day)[source]
Parameters:
  • year (int) – the gregorian year

  • month (int) – the gregorian month

  • day (int) – the day of the gregorian month

Returns:

the newly created Gst.DateTime, or None on error.

Return type:

Gst.DateTime or None

Creates a new Gst.DateTime using the date and times in the gregorian calendar in the local timezone.

year should be from 1 to 9999, month should be from 1 to 12, day from 1 to 31.

If value is -1 then all over value will be ignored. For example if month == -1, then Gst.DateTime will created only for year. If day == -1, then Gst.DateTime will created for year and month and so on.

get_day()[source]
Returns:

The day of this Gst.DateTime, or -1 if none is set.

Return type:

int

Returns the day of the month of this Gst.DateTime.

get_hour()[source]
Returns:

the hour of the day, or -1 if none is set.

Return type:

int

Retrieves the hour of the day represented by self in the gregorian calendar. The return is in the range of 0 to 23.

get_microsecond()[source]
Returns:

the microsecond of the second, or -1 if none is set.

Return type:

int

Retrieves the fractional part of the seconds in microseconds represented by self in the gregorian calendar.

get_minute()[source]
Returns:

the minute of the hour, or -1 if none is set.

Return type:

int

Retrieves the minute of the hour represented by self in the gregorian calendar.

get_month()[source]
Returns:

The month of this Gst.DateTime, or -1 if none is set.

Return type:

int

Returns the month of this Gst.DateTime. January is 1, February is 2, etc..

get_second()[source]
Returns:

the second represented by self, or -1 if none is set.

Return type:

int

Retrieves the second of the minute represented by self in the gregorian calendar.

get_time_zone_offset()[source]
Returns:

the offset from UTC in hours, or GObject.G_MAXFLOAT if none is set.

Return type:

float

Retrieves the offset from UTC in hours that the timezone specified by self represents. Timezones ahead (to the east) of UTC have positive values, timezones before (to the west) of UTC have negative values. If self represents UTC time, then the offset is zero.

get_year()[source]
Returns:

The year of this Gst.DateTime

Return type:

int

Returns the year of this Gst.DateTime. Call Gst.DateTime.has_year() before, to avoid warnings.

has_day()[source]
Returns:

True if self ‘s day field is set, otherwise False

Return type:

bool

has_month()[source]
Returns:

True if self ‘s month field is set, otherwise False

Return type:

bool

has_second()[source]
Returns:

True if self ‘s second field is set, otherwise False

Return type:

bool

has_time()[source]
Returns:

True if self ‘s hour and minute fields are set, otherwise False

Return type:

bool

has_year()[source]
Returns:

True if self ‘s year field is set (which should always be the case), otherwise False

Return type:

bool

ref()[source]
Returns:

the reference self

Return type:

Gst.DateTime

Atomically increments the reference count of self by one.

to_g_date_time()[source]
Returns:

a newly created GLib.DateTime, or None on error or if self does not have a year, month, day, hour, minute and second.

Return type:

GLib.DateTime or None

Creates a new GLib.DateTime from a fully defined Gst.DateTime object.

to_iso8601_string()[source]
Returns:

a newly allocated string formatted according to ISO 8601 and only including the datetime fields that are valid, or None in case there was an error.

Return type:

str or None

Create a minimal string compatible with ISO-8601. Possible output formats are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z, 2012-06-23T23:30+0100, 2012-06-23T23:30:59Z, 2012-06-23T23:30:59+0100

unref()[source]

Atomically decrements the reference count of self by one. When the reference count reaches zero, the structure is freed.