libpurple/media.c

changeset 42650
4577958c4c6a
parent 42594
eddde70cedd8
--- a/libpurple/media.c	Thu Mar 21 00:19:08 2024 -0500
+++ b/libpurple/media.c	Thu Mar 21 22:18:04 2024 -0500
@@ -128,6 +128,11 @@
 	gobject_class->set_property = purple_media_set_property;
 	gobject_class->get_property = purple_media_get_property;
 
+	/**
+	 * PurpleMedia:manager:
+	 *
+	 * The manager that this media is tied to.
+	 */
 	g_object_class_install_property(gobject_class, PROP_MANAGER,
 			g_param_spec_object("manager",
 			"Purple Media Manager",
@@ -136,6 +141,11 @@
 			G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE |
 			G_PARAM_STATIC_STRINGS));
 
+	/**
+	 * PurpleMedia:backend:
+	 *
+	 * The backend for this media.
+	 */
 	/*
 	 * This one should be PURPLE_TYPE_MEDIA_BACKEND, but it doesn't
 	 * like interfaces because they "aren't GObjects"
@@ -147,6 +157,11 @@
 			G_TYPE_OBJECT,
 			G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
 
+	/**
+	 * PurpleMedia:account:
+	 *
+	 * The [class@Account] that this media belongs to.
+	 */
 	g_object_class_install_property(gobject_class, PROP_ACCOUNT,
 			g_param_spec_object("account", "PurpleAccount",
 			"The account this media session is on.",
@@ -154,6 +169,11 @@
 			G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE |
 			G_PARAM_STATIC_STRINGS));
 
+	/**
+	 * PurpleMedia:conference-type:
+	 *
+	 * The conference type of this media.
+	 */
 	g_object_class_install_property(gobject_class, PROP_CONFERENCE_TYPE,
 			g_param_spec_string("conference-type",
 			"Conference Type",
@@ -163,6 +183,11 @@
 			G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE |
 			G_PARAM_STATIC_STRINGS));
 
+	/**
+	 * PurpleMedia:initiator:
+	 *
+	 * Whether or not the local user initiated the conference.
+	 */
 	g_object_class_install_property(gobject_class, PROP_INITIATOR,
 			g_param_spec_boolean("initiator",
 			"initiator",
@@ -171,44 +196,126 @@
 			G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE |
 			G_PARAM_STATIC_STRINGS));
 
+	/**
+	 * PurpleMedia:protocol-data:
+	 *
+	 * Protocol specific data for the media.
+	 */
 	g_object_class_install_property(gobject_class, PROP_PROTOCOL_DATA,
 			g_param_spec_pointer("protocol-data",
 			"gpointer",
 			"Data the protocol set on the media session.",
 			G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
 
+	/**
+	 * PurpleMedia::error:
+	 * @media: The instance.
+	 * @message: The error message.
+	 *
+	 * Emitted by [method@Media.error].
+	 */
 	signals[SIG_ERROR] = g_signal_new("error", G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 1, G_TYPE_STRING);
+
+	/**
+	 * PurpleMedia::candidates-prepared:
+	 * @media: The instance.
+	 * @session_id: The session id.
+	 * @name: The candidate element name.
+	 *
+	 * Emitted when a candidate element has been determined.
+	 */
 	signals[SIG_CANDIDATES_PREPARED] = g_signal_new("candidates-prepared",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 2, G_TYPE_STRING,
 					 G_TYPE_STRING);
+
+	/**
+	 * PurpleMedia::codecs-changed:
+	 * @media: The instance.
+	 * @session_id: The session id.
+	 *
+	 * Emitted when the codecs have changed.
+	 */
 	signals[SIG_CODECS_CHANGED] = g_signal_new("codecs-changed",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 1, G_TYPE_STRING);
+
+	/**
+	 * PurpleMedia::level:
+	 * @media: The instance.
+	 * @session_id: The session.
+	 * @participant: The participant.
+	 * @level: The new level.
+	 *
+	 * Emitted when the volume of a participant has changed. I think?
+	 */
 	signals[SIG_LEVEL] = g_signal_new("level",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 3, G_TYPE_STRING,
 					 G_TYPE_STRING, G_TYPE_DOUBLE);
+
+
+	/**
+	 * PurpleMedia::new-candidate:
+	 * @media: The instance.
+	 * @session_id: The session id.
+	 * @participant: The participant.
+	 * @candidate: The new candidate.
+	 *
+	 * Emitted when a new media candidate is available.
+	 */
 	signals[SIG_NEW_CANDIDATE] = g_signal_new("new-candidate",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 3, G_TYPE_POINTER,
 					 G_TYPE_POINTER, PURPLE_MEDIA_TYPE_CANDIDATE);
+
+	/**
+	 * PurpleMedia::state-changed:
+	 * @media: The instance.
+	 * @newstate: The new state.
+	 * @session_id: The session id.
+	 * @participant: The participant.
+	 *
+	 * Emitted when the media's state has changed.
+	 */
 	signals[SIG_STATE_CHANGED] = g_signal_new("state-changed",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 3, PURPLE_MEDIA_TYPE_STATE,
 					 G_TYPE_STRING, G_TYPE_STRING);
+
+	/**
+	 * PurpleMedia::stream-info:
+	 * @media: The instance.
+	 * @type: The type of the media.
+	 * @session_id: The session id.
+	 * @participant: The participant.
+	 * @local: Whether this request originated from the libpurple user.
+	 *
+	 * Emitted when information about the stream is available.
+	 */
 	signals[SIG_STREAM_INFO] = g_signal_new("stream-info",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,
 					 G_TYPE_NONE, 4, PURPLE_MEDIA_TYPE_INFO_TYPE,
 					 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN);
+
+	/**
+	 * PurpleMedia::candidate-pair-established:
+	 * @media: The instance.
+	 * @session_id: The session id.
+	 * @name: The element name.
+	 * @local_candidate: The local candidate.
+	 * @remote_candidate: The remote candidate.
+	 *
+	 * Emitted when candidates have been established for a session.
+	 */
 	signals[SIG_CANDIDATE_PAIR_ESTABLISHED] = g_signal_new("candidate-pair-established",
 					 G_TYPE_FROM_CLASS(klass),
 					 G_SIGNAL_RUN_LAST, 0, NULL, NULL, NULL,

mercurial