return NULL;
}
+
+/**
+ * clutter_interval_is_valid:
+ * @interval: a #ClutterInterval
+ *
+ * Checks if the @interval has a valid initial and final values.
+ *
+ * Return value: %TRUE if the #ClutterInterval has an initial and
+ * final values, and %FALSE otherwise
+ *
+ * Since: 1.12
+ */
+gboolean
+clutter_interval_is_valid (ClutterInterval *interval)
+{
+ ClutterIntervalPrivate *priv;
+
+ g_return_val_if_fail (CLUTTER_IS_INTERVAL (interval), FALSE);
+
+ priv = interval->priv;
+
+ return G_IS_VALUE (&priv->values[INITIAL]) &&
+ G_IS_VALUE (&priv->values[FINAL]);
+}
const GValue * clutter_interval_compute (ClutterInterval *interval,
gdouble factor);
+CLUTTER_AVAILABLE_IN_1_12
+gboolean clutter_interval_is_valid (ClutterInterval *interval);
+
G_END_DECLS
#endif /* __CLUTTER_INTERVAL_H__ */
clutter_interval_get_interval
clutter_interval_get_type
clutter_interval_get_value_type
+clutter_interval_is_valid
clutter_interval_new
clutter_interval_new_with_values
clutter_interval_peek_final_value