sctp: allow per feature registration
authorStéphane Cerveau <scerveau@collabora.com>
Fri, 19 Feb 2021 11:14:53 +0000 (12:14 +0100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Tue, 23 Mar 2021 14:19:17 +0000 (14:19 +0000)
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: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2038>

ext/sctp/gstsctpdec.c
ext/sctp/gstsctpdec.h
ext/sctp/gstsctpenc.c
ext/sctp/gstsctpenc.h
ext/sctp/gstsctpplugin.c

index c9f6d08..e3f1a08 100644 (file)
@@ -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,
index 6a5591f..c6c8986 100644 (file)
@@ -63,6 +63,7 @@ struct _GstSctpDecClass
 };
 
 GType gst_sctp_dec_get_type (void);
+GST_ELEMENT_REGISTER_DECLARE (sctpdec);
 
 G_END_DECLS
 
index 41590b9..99a0e83 100644 (file)
@@ -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,
index fd4e28e..482473d 100644 (file)
@@ -72,6 +72,7 @@ struct _GstSctpEncClass
 };
 
 GType gst_sctp_enc_get_type (void);
+GST_ELEMENT_REGISTER_DECLARE (sctpenc);
 
 G_END_DECLS
 
index 888a94c..9f3400e 100644 (file)
 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"