From cb11f0d7c4c75f425d77925fb64b639b69b8391a Mon Sep 17 00:00:00 2001 From: Thibault Saunier Date: Fri, 1 Feb 2013 17:51:02 -0300 Subject: [PATCH] Add GESTimelineElement.{start, inpoint, duration, maxduration, priority} getters --- docs/libs/ges-sections.txt | 5 +++ ges/ges-timeline-element.c | 70 ++++++++++++++++++++++++++++++++++++++ ges/ges-timeline-element.h | 7 ++++ 3 files changed, 82 insertions(+) diff --git a/docs/libs/ges-sections.txt b/docs/libs/ges-sections.txt index 0be9b28156..097595e2fd 100644 --- a/docs/libs/ges-sections.txt +++ b/docs/libs/ges-sections.txt @@ -329,6 +329,11 @@ ges_timeline_element_set_inpoint ges_timeline_element_set_duration ges_timeline_element_set_max_duration ges_timeline_element_set_priority +ges_timeline_element_get_start +ges_timeline_element_get_inpoint +ges_timeline_element_get_duration +ges_timeline_element_get_max_duration +ges_timeline_element_get_priority ges_timeline_element_ripple ges_timeline_element_ripple_end ges_timeline_element_roll_start diff --git a/ges/ges-timeline-element.c b/ges/ges-timeline-element.c index 72c8643096..d590dc6608 100644 --- a/ges/ges-timeline-element.c +++ b/ges/ges-timeline-element.c @@ -420,6 +420,76 @@ ges_timeline_element_set_duration (GESTimelineElement * self, G_OBJECT_CLASS_NAME (klass), GST_TIME_ARGS (duration)); } +/** + * ges_timeline_element_get_start: + * @self: a #GESTimelineElement + * + * Returns: The @start of @self + */ +GstClockTime +ges_timeline_element_get_start (GESTimelineElement * self) +{ + g_return_val_if_fail (GES_IS_TIMELINE_ELEMENT (self), GST_CLOCK_TIME_NONE); + + return self->start; +} + +/** + * ges_timeline_element_get_inpoint: + * @self: a #GESTimelineElement + * + * Returns: The @inpoint of @self + */ +GstClockTime +ges_timeline_element_get_inpoint (GESTimelineElement * self) +{ + g_return_val_if_fail (GES_IS_TIMELINE_ELEMENT (self), GST_CLOCK_TIME_NONE); + + return self->inpoint; +} + +/** + * ges_timeline_element_get_duration: + * @self: a #GESTimelineElement + * + * Returns: The @duration of @self + */ +GstClockTime +ges_timeline_element_get_duration (GESTimelineElement * self) +{ + g_return_val_if_fail (GES_IS_TIMELINE_ELEMENT (self), GST_CLOCK_TIME_NONE); + + return self->duration; +} + +/** + * ges_timeline_element_get_max_duration: + * @self: a #GESTimelineElement + * + * Returns: The @maxduration of @self + */ +GstClockTime +ges_timeline_element_get_max_duration (GESTimelineElement * self) +{ + g_return_val_if_fail (GES_IS_TIMELINE_ELEMENT (self), GST_CLOCK_TIME_NONE); + + return self->maxduration; +} + +/** + * ges_timeline_element_get_priority: + * @self: a #GESTimelineElement + * + * Returns: The @priority of @self + */ +guint32 +ges_timeline_element_get_priority (GESTimelineElement * self) +{ + g_return_val_if_fail (GES_IS_TIMELINE_ELEMENT (self), 0); + + return self->priority; +} + /** * ges_timeline_element_set_priority: * @self: a #GESTimelineElement diff --git a/ges/ges-timeline-element.h b/ges/ges-timeline-element.h index 757f145138..20e712bc1c 100644 --- a/ges/ges-timeline-element.h +++ b/ges/ges-timeline-element.h @@ -164,6 +164,13 @@ void ges_timeline_element_set_inpoint (GESTimelineElement *self, void ges_timeline_element_set_duration (GESTimelineElement *self, GstClockTime duration); void ges_timeline_element_set_max_duration (GESTimelineElement *self, GstClockTime duration); void ges_timeline_element_set_priority (GESTimelineElement *self, guint32 priority); + +GstClockTime ges_timeline_element_get_start (GESTimelineElement *self); +GstClockTime ges_timeline_element_get_inpoint (GESTimelineElement *self); +GstClockTime ges_timeline_element_get_duration (GESTimelineElement *self); +GstClockTime ges_timeline_element_get_max_duration (GESTimelineElement *self); +guint32 ges_timeline_element_get_priority (GESTimelineElement *self); + gboolean ges_timeline_element_ripple (GESTimelineElement *self, GstClockTime start); gboolean ges_timeline_element_ripple_end (GESTimelineElement *self, GstClockTime end); gboolean ges_timeline_element_roll_start (GESTimelineElement *self, GstClockTime start);