static gboolean kms_sdp_base_group_add_answer_attributes (KmsISdpSessionExtension * ext, const GstSDPMessage * offer, GstSDPMessage * answer, GError ** error) { KmsSdpBaseGroup *self = KMS_SDP_BASE_GROUP (ext); return KMS_SDP_BASE_GROUP_GET_CLASS (self)->add_answer_attributes (self, offer, answer, error); }
KmsSdpBaseGroup * kms_sdp_group_manager_get_group_impl (KmsSdpGroupManager * self, KmsSdpHandler * handler) { GHashTableIter iter; gpointer key, value; g_hash_table_iter_init (&iter, self->priv->groups); while (g_hash_table_iter_next (&iter, &key, &value)) { KmsSdpBaseGroup *group = KMS_SDP_BASE_GROUP (value); if (kms_sdp_base_group_contains_handler (group, handler)) { return KMS_SDP_BASE_GROUP (g_object_ref (group)); } } return NULL; }
static gboolean kms_sdp_base_group_can_insert_attribute (KmsISdpSessionExtension * ext, const GstSDPMessage * offer, const GstSDPAttribute * attr, GstSDPMessage * answer) { KmsSdpBaseGroup *self = KMS_SDP_BASE_GROUP (ext); return KMS_SDP_BASE_GROUP_GET_CLASS (self)->can_insert_attribute (self, offer, attr, answer); }
static void kms_sdp_base_group_finalize (GObject * object) { KmsSdpBaseGroup *self = KMS_SDP_BASE_GROUP (object); GST_DEBUG_OBJECT (self, "finalize"); g_slist_free_full (self->priv->handlers, (GDestroyNotify) kms_sdp_agent_common_unref_sdp_handler); g_free (self->priv->semantics); G_OBJECT_CLASS (parent_class)->finalize (object); }
static void kms_sdp_group_manager_remove_handler_from_groups (KmsSdpGroupManager * self, KmsSdpHandler * handler) { GHashTableIter iter; gpointer key, value; g_hash_table_iter_init (&iter, self->priv->groups); while (g_hash_table_iter_next (&iter, &key, &value)) { KmsSdpBaseGroup *group = KMS_SDP_BASE_GROUP (value); kms_sdp_base_group_remove_media_handler (group, handler, NULL); } }
static void kms_sdp_base_group_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec) { KmsSdpBaseGroup *self = KMS_SDP_BASE_GROUP (object); switch (prop_id) { case PROP_SEMANTICS: g_value_set_string (value, self->priv->semantics); break; case PROP_PRE_PROC: g_value_set_boolean (value, self->priv->pre_proc); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }