From 3c46adf1db3888a262a944e9a7c0a37488f893dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Cerveau?= Date: Fri, 19 Feb 2021 12:14:53 +0100 Subject: sctp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: --- ext/sctp/gstsctpdec.c | 2 ++ ext/sctp/gstsctpdec.h | 1 + ext/sctp/gstsctpenc.c | 2 ++ ext/sctp/gstsctpenc.h | 1 + ext/sctp/gstsctpplugin.c | 11 ++++++----- 5 files changed, 12 insertions(+), 5 deletions(-) (limited to 'ext/sctp') diff --git a/ext/sctp/gstsctpdec.c b/ext/sctp/gstsctpdec.c index c9f6d0827..e3f1a08c9 100644 --- a/ext/sctp/gstsctpdec.c +++ b/ext/sctp/gstsctpdec.c @@ -39,6 +39,8 @@ GST_DEBUG_CATEGORY_STATIC (gst_sctp_dec_debug_category); #define gst_sctp_dec_parent_class parent_class G_DEFINE_TYPE (GstSctpDec, gst_sctp_dec, GST_TYPE_ELEMENT); +GST_ELEMENT_REGISTER_DEFINE (sctpdec, "sctpdec", GST_RANK_NONE, + GST_TYPE_SCTP_DEC); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, diff --git a/ext/sctp/gstsctpdec.h b/ext/sctp/gstsctpdec.h index 6a5591f55..c6c898657 100644 --- a/ext/sctp/gstsctpdec.h +++ b/ext/sctp/gstsctpdec.h @@ -63,6 +63,7 @@ struct _GstSctpDecClass }; GType gst_sctp_dec_get_type (void); +GST_ELEMENT_REGISTER_DECLARE (sctpdec); G_END_DECLS diff --git a/ext/sctp/gstsctpenc.c b/ext/sctp/gstsctpenc.c index 41590b9fc..99a0e83d2 100644 --- a/ext/sctp/gstsctpenc.c +++ b/ext/sctp/gstsctpenc.c @@ -36,6 +36,8 @@ GST_DEBUG_CATEGORY_STATIC (gst_sctp_enc_debug_category); #define gst_sctp_enc_parent_class parent_class G_DEFINE_TYPE (GstSctpEnc, gst_sctp_enc, GST_TYPE_ELEMENT); +GST_ELEMENT_REGISTER_DEFINE (sctpenc, "sctpenc", GST_RANK_NONE, + GST_TYPE_SCTP_ENC); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink_%u", GST_PAD_SINK, diff --git a/ext/sctp/gstsctpenc.h b/ext/sctp/gstsctpenc.h index fd4e28e4f..482473d74 100644 --- a/ext/sctp/gstsctpenc.h +++ b/ext/sctp/gstsctpenc.h @@ -72,6 +72,7 @@ struct _GstSctpEncClass }; GType gst_sctp_enc_get_type (void); +GST_ELEMENT_REGISTER_DECLARE (sctpenc); G_END_DECLS diff --git a/ext/sctp/gstsctpplugin.c b/ext/sctp/gstsctpplugin.c index 888a94c84..9f3400ecf 100644 --- a/ext/sctp/gstsctpplugin.c +++ b/ext/sctp/gstsctpplugin.c @@ -35,12 +35,13 @@ static gboolean plugin_init (GstPlugin * plugin) { - return gst_element_register (plugin, "sctpenc", GST_RANK_NONE, - GST_TYPE_SCTP_ENC) - && gst_element_register (plugin, "sctpdec", GST_RANK_NONE, - GST_TYPE_SCTP_DEC); -} + gboolean ret = FALSE; + + ret |= GST_ELEMENT_REGISTER (sctpenc, plugin); + ret |= GST_ELEMENT_REGISTER (sctpdec, plugin); + return ret; +} #ifndef PACKAGE #define PACKAGE "sctp" -- cgit v1.2.1