[asterisk-commits] file: branch file/rtp_engine r138077 - in /team/file/rtp_engine: include/aste...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri Aug 15 11:14:15 CDT 2008
Author: file
Date: Fri Aug 15 11:14:15 2008
New Revision: 138077
URL: http://svn.digium.com/view/asterisk?view=rev&rev=138077
Log:
Add the concept of extended properties. These are engine level specific.
Modified:
team/file/rtp_engine/include/asterisk/rtp_engine.h
team/file/rtp_engine/main/rtp_engine.c
Modified: team/file/rtp_engine/include/asterisk/rtp_engine.h
URL: http://svn.digium.com/view/asterisk/team/file/rtp_engine/include/asterisk/rtp_engine.h?view=diff&rev=138077&r1=138076&r2=138077
==============================================================================
--- team/file/rtp_engine/include/asterisk/rtp_engine.h (original)
+++ team/file/rtp_engine/include/asterisk/rtp_engine.h Fri Aug 15 11:14:15 2008
@@ -298,6 +298,10 @@
int (*dtmf_end)(struct ast_rtp_instance *instance, char digit);
/*! Callback to indicate that a new source of media has come in */
void (*new_source)(struct ast_rtp_instance *instance);
+ /*! Callback for setting an extended RTP property */
+ int (*extended_prop_set)(struct ast_rtp_instance *instance, int property, void *value);
+ /*! Callback for getting an extended RTP property */
+ void *(*extended_prop_get)(struct ast_rtp_instance *instance, int property);
/*! Callback for setting an RTP property */
void (*prop_set)(struct ast_rtp_instance *instance, enum ast_rtp_property property, int value);
/*! Callback for setting a payload */
@@ -578,6 +582,23 @@
*/
int ast_rtp_instance_get_remote_address(struct ast_rtp_instance *instance, struct sockaddr_in *address);
+/*! \brief Set the value of an RTP instance extended property
+ *
+ * \param instance The RTP instance to set the extended property on
+ * \param property The extended property to set
+ * \param value The value to set the extended property to
+ *
+ */
+void ast_rtp_instance_set_extended_prop(struct ast_rtp_instance *instance, int property, void *value);
+
+/*! \brief Get the value of an RTP instance extended property
+ *
+ * \param instance The RTP instance to get the extended property on
+ * \param property The extended property to get
+ *
+ */
+void *ast_rtp_instance_get_extended_prop(struct ast_rtp_instance *instance, int property);
+
/*! \brief Set the value of an RTP instance property
*
* \param instance The RTP instance to set the property on
Modified: team/file/rtp_engine/main/rtp_engine.c
URL: http://svn.digium.com/view/asterisk/team/file/rtp_engine/main/rtp_engine.c?view=diff&rev=138077&r1=138076&r2=138077
==============================================================================
--- team/file/rtp_engine/main/rtp_engine.c (original)
+++ team/file/rtp_engine/main/rtp_engine.c Fri Aug 15 11:14:15 2008
@@ -368,6 +368,22 @@
}
return 0;
+}
+
+void ast_rtp_instance_set_extended_prop(struct ast_rtp_instance *instance, int property, void *value)
+{
+ if (instance->engine->extended_prop_set) {
+ instance->engine->extended_prop_set(instance, property, value);
+ }
+}
+
+void *ast_rtp_instance_get_extended_prop(struct ast_rtp_instance *instance, int property)
+{
+ if (instance->engine->extended_prop_get) {
+ return instance->engine->extended_prop_get(instance, property);
+ }
+
+ return NULL;
}
void ast_rtp_instance_set_prop(struct ast_rtp_instance *instance, enum ast_rtp_property property, int value)
More information about the asterisk-commits
mailing list