summaryrefslogtreecommitdiff
path: root/include/asterisk/channel.h
diff options
context:
space:
mode:
authorGeorge Joseph <gjoseph@digium.com>2017-02-13 10:50:47 -0700
committerGeorge Joseph <gjoseph@digium.com>2017-02-14 14:09:37 -0700
commitbf2f091bbb2b099d6ca87e5fdd76efe45a209eb7 (patch)
tree3ebbbb4a3a9235f221bb0df50587e9873905b5f9 /include/asterisk/channel.h
parent6c4657e28ebf9cbe6d952750142d9631ff600657 (diff)
stream: Add stream topology to channel
Adds topology set and get to channel. ASTERISK-26790 Change-Id: Ic379ea82a9486fc79dbd8c4d95c29fa3b46424f4
Diffstat (limited to 'include/asterisk/channel.h')
-rw-r--r--include/asterisk/channel.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/include/asterisk/channel.h b/include/asterisk/channel.h
index e5f792f1f..4170a8af4 100644
--- a/include/asterisk/channel.h
+++ b/include/asterisk/channel.h
@@ -884,6 +884,10 @@ enum {
* world
*/
AST_CHAN_TP_INTERNAL = (1 << 2),
+ /*!
+ * \brief Channels with this particular technology support multiple simultaneous streams
+ */
+ AST_CHAN_TP_MULTISTREAM = (1 << 3),
};
/*! \brief ast_channel flags */
@@ -4734,4 +4738,34 @@ enum ast_channel_error ast_channel_errno(void);
*/
int ast_channel_get_intercept_mode(void);
+/*!
+ * \brief Retrieve the topology of streams on a channel
+ *
+ * \param chan The channel to get the stream topology of
+ *
+ * \pre chan is locked
+ *
+ * \retval non-NULL success
+ * \retval NULL failure
+ */
+struct ast_stream_topology *ast_channel_get_stream_topology(
+ const struct ast_channel *chan);
+
+/*!
+ * \brief Set the topology of streams on a channel
+ *
+ * \param chan The channel to set the stream topology on
+ * \param topology The stream topology to set
+ *
+ * \pre chan is locked
+ *
+ * \note If topology is NULL a new empty topology will be created
+ * and returned.
+ *
+ * \retval non-NULL Success
+ * \retval NULL failure
+ */
+struct ast_stream_topology *ast_channel_set_stream_topology(
+ struct ast_channel *chan, struct ast_stream_topology *topology);
+
#endif /* _ASTERISK_CHANNEL_H */