mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 03:35:21 +00:00
TrackVideoTestSource: Move private data to instance private
Add a getter for the pattern Document methods
This commit is contained in:
parent
58afc44fd7
commit
2d9f03fde0
4 changed files with 28 additions and 8 deletions
|
@ -524,6 +524,7 @@ GES_TYPE_TIMELINE_TEXT_OVERLAY
|
|||
GESTrackVideoTestSource
|
||||
ges_track_video_test_source_new
|
||||
ges_track_video_test_source_set_pattern
|
||||
ges_track_video_test_source_get_pattern
|
||||
<SUBSECTION Standard>
|
||||
GESTrackVideoTestSourceClass
|
||||
GESTrackVideoTestSourcePrivate
|
||||
|
|
|
@ -32,8 +32,7 @@ G_DEFINE_TYPE (GESTrackVideoTestSource, ges_track_video_test_source,
|
|||
|
||||
struct _GESTrackVideoTestSourcePrivate
|
||||
{
|
||||
/* Dummy variable */
|
||||
void *nothing;
|
||||
GESVideoTestPattern pattern;
|
||||
};
|
||||
|
||||
static GstElement *ges_track_video_test_source_create_element (GESTrackObject *
|
||||
|
@ -56,7 +55,7 @@ ges_track_video_test_source_init (GESTrackVideoTestSource * self)
|
|||
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
|
||||
GES_TYPE_TRACK_VIDEO_TEST_SOURCE, GESTrackVideoTestSourcePrivate);
|
||||
|
||||
self->pattern = GES_VIDEO_TEST_PATTERN_BLACK;
|
||||
self->priv->pattern = GES_VIDEO_TEST_PATTERN_BLACK;
|
||||
}
|
||||
|
||||
static GstElement *
|
||||
|
@ -65,7 +64,7 @@ ges_track_video_test_source_create_element (GESTrackObject * self)
|
|||
GstElement *ret;
|
||||
gint pattern;
|
||||
|
||||
pattern = ((GESTrackVideoTestSource *) self)->pattern;
|
||||
pattern = ((GESTrackVideoTestSource *) self)->priv->pattern;
|
||||
|
||||
ret = gst_element_factory_make ("videotestsrc", NULL);
|
||||
g_object_set (ret, "pattern", (gint) pattern, NULL);
|
||||
|
@ -73,18 +72,37 @@ ges_track_video_test_source_create_element (GESTrackObject * self)
|
|||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* ges_track_video_test_source_set_pattern:
|
||||
* @self: a #GESTrackVideoTestSource
|
||||
* @pattern: a #GESVideoTestPattern
|
||||
*
|
||||
* Sets the source to use the given @pattern.
|
||||
*/
|
||||
void
|
||||
ges_track_video_test_source_set_pattern (GESTrackVideoTestSource
|
||||
* self, GESVideoTestPattern pattern)
|
||||
{
|
||||
GstElement *element = ges_track_object_get_element (GES_TRACK_OBJECT (self));
|
||||
|
||||
self->pattern = pattern;
|
||||
self->priv->pattern = pattern;
|
||||
|
||||
if (element)
|
||||
g_object_set (element, "pattern", (gint) pattern, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* ges_track_video_test_source_get_pattern:
|
||||
* @source: a #GESVideoTestPattern
|
||||
*
|
||||
* Returns: the video pattern used by the @source.
|
||||
*/
|
||||
GESVideoTestPattern
|
||||
ges_track_video_test_source_get_pattern (GESTrackVideoTestSource * source)
|
||||
{
|
||||
return source->priv->pattern;
|
||||
}
|
||||
|
||||
GESTrackVideoTestSource *
|
||||
ges_track_video_test_source_new (void)
|
||||
{
|
||||
|
|
|
@ -54,8 +54,6 @@ struct _GESTrackVideoTestSource {
|
|||
/*< private >*/
|
||||
GESTrackSource parent;
|
||||
|
||||
GESVideoTestPattern pattern;
|
||||
|
||||
GESTrackVideoTestSourcePrivate *priv;
|
||||
|
||||
/* Padding for API extension */
|
||||
|
@ -76,6 +74,8 @@ GESTrackVideoTestSource* ges_track_video_test_source_new (void);
|
|||
void
|
||||
ges_track_video_test_source_set_pattern(GESTrackVideoTestSource *self,
|
||||
GESVideoTestPattern pattern);
|
||||
GESVideoTestPattern
|
||||
ges_track_video_test_source_get_pattern (GESTrackVideoTestSource *source);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -151,7 +151,8 @@ GST_START_TEST (test_test_source_in_layer)
|
|||
ges_timeline_object_find_track_object (GES_TIMELINE_OBJECT (source), v,
|
||||
GES_TYPE_TRACK_VIDEO_TEST_SOURCE);
|
||||
|
||||
ptrn = ((GESTrackVideoTestSource *) trobj)->pattern;
|
||||
ptrn = (ges_track_video_test_source_get_pattern ((GESTrackVideoTestSource *)
|
||||
trobj));
|
||||
assert_equals_int (ptrn, GES_VIDEO_TEST_PATTERN_WHITE);
|
||||
g_object_unref (trobj);
|
||||
|
||||
|
|
Loading…
Reference in a new issue