예제 #1
0
/**
 * gst_date_time_to_g_date_time:
 * @datetime: GstDateTime.
 *
 * Creates a new #GDateTime from a fully defined #GstDateTime object.
 *
 * Free-function: g_date_time_unref
 *
 * Returns: (transfer full) (nullable): a newly created #GDateTime, or
 * %NULL on error
 */
GDateTime *
gst_date_time_to_g_date_time (GstDateTime * datetime)
{
  g_return_val_if_fail (datetime != NULL, NULL);

  if (datetime->fields != GST_DATE_TIME_FIELDS_YMD_HMS)
    return NULL;

  return g_date_time_add (datetime->datetime, 0);
}
예제 #2
0
/**
 * gsf_output_set_modtime:
 * @output: the output stream
 * @modtime: (transfer none) (allow-none): the new modification time.
 *
 * Returns: %TRUE if the assignment was ok.
 */
gboolean
gsf_output_set_modtime (GsfOutput *output, GDateTime *modtime)
{
	g_return_val_if_fail (GSF_IS_OUTPUT (output), FALSE);

	if (modtime)
		modtime = g_date_time_add (modtime, 0); /* Copy */

	/* This actually also works for null modtime.  */
	g_object_set_data_full (G_OBJECT (output),
				MODTIME_ATTR, modtime,
				(GDestroyNotify)g_date_time_unref);

	return TRUE;
}