Wed, 13 May 2009 20:29:03 +0000
Support custom smileys in MUCs (when all participants support BoB and a maximum
of 10 participants are in the chat).
Always announce support for BoB, since disable custom smileys will still turn
off fetching them, and BoB can be used for other purposes further on.
| 19883 | 1 | /** |
| 19889 | 2 | * @file mediamanager.h Media Manager API |
| 19883 | 3 | * @ingroup core |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
4 | */ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
5 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
6 | /* purple |
| 19883 | 7 | * |
| 8 | * Purple is the legal property of its developers, whose names are too numerous | |
| 9 | * to list here. Please refer to the COPYRIGHT file distributed with this | |
| 10 | * source distribution. | |
| 11 | * | |
| 12 | * This program is free software; you can redistribute it and/or modify | |
| 13 | * it under the terms of the GNU General Public License as published by | |
| 14 | * the Free Software Foundation; either version 2 of the License, or | |
| 15 | * (at your option) any later version. | |
| 16 | * | |
| 17 | * This program is distributed in the hope that it will be useful, | |
| 18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 20 | * GNU General Public License for more details. | |
| 21 | * | |
| 22 | * You should have received a copy of the GNU General Public License | |
| 23 | * along with this program; if not, write to the Free Software | |
| 24 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 25 | */ | |
| 26 | ||
|
26649
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
27 | #ifndef _PURPLE_MEDIA_MANAGER_H_ |
|
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
28 | #define _PURPLE_MEDIA_MANAGER_H_ |
| 19883 | 29 | |
| 30 | #include <glib.h> | |
| 31 | #include <glib-object.h> | |
| 32 | ||
|
26649
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
33 | /** @copydoc _PurpleMediaManager */ |
|
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
34 | typedef struct _PurpleMediaManager PurpleMediaManager; |
|
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
35 | /** @copydoc _PurpleMediaManagerClass */ |
|
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
36 | typedef struct _PurpleMediaManagerClass PurpleMediaManagerClass; |
|
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
37 | |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
38 | #include "account.h" |
| 19883 | 39 | #include "media.h" |
| 40 | ||
| 41 | G_BEGIN_DECLS | |
| 42 | ||
| 43 | #define PURPLE_TYPE_MEDIA_MANAGER (purple_media_manager_get_type()) | |
| 44 | #define PURPLE_MEDIA_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_MEDIA_MANAGER, PurpleMediaManager)) | |
| 45 | #define PURPLE_MEDIA_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_MEDIA_MANAGER, PurpleMediaManagerClass)) | |
| 46 | #define PURPLE_IS_MEDIA_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_MEDIA_MANAGER)) | |
| 47 | #define PURPLE_IS_MEDIA_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_MEDIA_MANAGER)) | |
| 48 | #define PURPLE_MEDIA_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_MEDIA_MANAGER, PurpleMediaManagerClass)) | |
| 49 | ||
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
50 | #ifdef __cplusplus |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
51 | extern "C" { |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
52 | #endif |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
53 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
54 | /**************************************************************************/ |
| 26858 | 55 | /** @name Media Manager API */ |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
56 | /**************************************************************************/ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
57 | /*@{*/ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
58 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
59 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
60 | * Gets the media manager's GType. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
61 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
62 | * @return The media manager's GType. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
63 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
64 | * @since 2.6.0 |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
65 | */ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
66 | GType purple_media_manager_get_type(void); |
| 19883 | 67 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
68 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
69 | * Gets the "global" media manager object. It's created if it doesn't already exist. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
70 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
71 | * @return The "global" instance of the media manager object. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
72 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
73 | * @since 2.6.0 |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
74 | */ |
| 19889 | 75 | PurpleMediaManager *purple_media_manager_get(void); |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
76 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
77 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
78 | * Creates a media session. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
79 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
80 | * @param manager The media manager to create the session under. |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
81 | * @param account The account to create the session on. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
82 | * @param conference_type The conference type to feed into Farsight2. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
83 | * @param remote_user The remote user to initiate the session with. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
84 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
85 | * @return A newly created media session. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
86 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
87 | * @since 2.6.0 |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
88 | */ |
| 19883 | 89 | PurpleMedia *purple_media_manager_create_media(PurpleMediaManager *manager, |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
90 | PurpleAccount *account, |
|
23697
299bafcd8eb8
Updates voice and video to use Farsight 2, gets XMPP voice conferences
Michael Ruprecht <maiku@pidgin.im>
parents:
22074
diff
changeset
|
91 | const char *conference_type, |
|
26187
3b3059a7c091
Add initiator property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26150
diff
changeset
|
92 | const char *remote_user, |
|
3b3059a7c091
Add initiator property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26150
diff
changeset
|
93 | gboolean initiator); |
| 19883 | 94 | |
|
26115
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
95 | /** |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
96 | * Gets all of the media sessions. |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
97 | * |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
98 | * @param manager The media manager to get all of the sessions from. |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
99 | * |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
100 | * @return A list of all the media sessions. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
101 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
102 | * @since 2.6.0 |
|
26115
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
103 | */ |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
104 | GList *purple_media_manager_get_media(PurpleMediaManager *manager); |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
105 | |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
106 | /** |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
107 | * Gets all of the media sessions for a given account. |
|
26329
6e390d9ea49a
Added purple_media_manager_get_media_by_connection.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
108 | * |
|
6e390d9ea49a
Added purple_media_manager_get_media_by_connection.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
109 | * @param manager The media manager to get the sessions from. |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
110 | * @param account The account the sessions are on. |
|
26329
6e390d9ea49a
Added purple_media_manager_get_media_by_connection.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
111 | * |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
112 | * @return A list of the media sessions on the given account. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
113 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
114 | * @since 2.6.0 |
|
26329
6e390d9ea49a
Added purple_media_manager_get_media_by_connection.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
115 | */ |
|
26746
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
116 | GList *purple_media_manager_get_media_by_account( |
|
2a2d45ac9774
Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents:
26649
diff
changeset
|
117 | PurpleMediaManager *manager, PurpleAccount *account); |
|
26329
6e390d9ea49a
Added purple_media_manager_get_media_by_connection.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
118 | |
|
6e390d9ea49a
Added purple_media_manager_get_media_by_connection.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
119 | /** |
|
26115
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
120 | * Removes a media session from the media manager. |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
121 | * |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
122 | * @param manager The media manager to remove the media session from. |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
123 | * @param media The media session to remove. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
124 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
125 | * @since 2.6.0 |
|
26115
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
126 | */ |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
127 | void |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
128 | purple_media_manager_remove_media(PurpleMediaManager *manager, |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
129 | PurpleMedia *media); |
|
5f0500efc781
* Added input/output volume preferences for voice conversations.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
130 | |
|
26150
951503fc5456
Add purple_media_manager_get_element.
Michael Ruprecht <maiku@pidgin.im>
parents:
26143
diff
changeset
|
131 | /** |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
132 | * Signals that output windows should be created for the chosen stream. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
133 | * |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
134 | * This shouldn't be called outside of mediamanager.c and media.c |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
135 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
136 | * @param manager Manager the output windows are registered with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
137 | * @param media Media session the output windows are registered for. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
138 | * @param session_id The session the output windows are registered with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
139 | * @param participant The participant the output windows are registered with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
140 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
141 | * @return TRUE if it succeeded, FALSE if it failed. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
142 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
143 | * @since 2.6.0 |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
144 | */ |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
145 | gboolean purple_media_manager_create_output_window( |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
146 | PurpleMediaManager *manager, PurpleMedia *media, |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
147 | const gchar *session_id, const gchar *participant); |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
148 | |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
149 | /** |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
150 | * Registers a video output window to be created for a given stream. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
151 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
152 | * @param manager The manager to register the output window with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
153 | * @param media The media instance to find the stream in. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
154 | * @param session_id The session the stream is associated with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
155 | * @param participant The participant the stream is associated with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
156 | * @param window_id The window ID to embed the video in. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
157 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
158 | * @return A unique ID to the registered output window, 0 if it failed. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
159 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
160 | * @since 2.6.0 |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
161 | */ |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
162 | gulong purple_media_manager_set_output_window(PurpleMediaManager *manager, |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
163 | PurpleMedia *media, const gchar *session_id, |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
164 | const gchar *participant, gulong window_id); |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
165 | |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
166 | /** |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
167 | * Remove a previously registerd output window. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
168 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
169 | * @param manager The manager the output window was registered with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
170 | * @param output_window_id The ID of the output window. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
171 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
172 | * @return TRUE if it found the output window and was successful, else FALSE. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
173 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
174 | * @since 2.6.0 |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
175 | */ |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
176 | gboolean purple_media_manager_remove_output_window( |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
177 | PurpleMediaManager *manager, gulong output_window_id); |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
178 | |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
179 | /** |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
180 | * Remove all output windows for a given conference/session/participant/stream. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
181 | * |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
182 | * @param manager The manager the output windows were registered with. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
183 | * @param media The media instance the output windows were registered for. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
184 | * @param session_id The session the output windows were registered for. |
|
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
185 | * @param participant The participant the output windows were registered for. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
186 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
187 | * @since 2.6.0 |
|
26491
7e4f1b50df9f
Add some documentation to mediamanager.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
188 | */ |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
189 | void purple_media_manager_remove_output_windows( |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
190 | PurpleMediaManager *manager, PurpleMedia *media, |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26320
diff
changeset
|
191 | const gchar *session_id, const gchar *participant); |
|
26520
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
192 | |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
193 | /** |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
194 | * Sets which media caps the UI supports. |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
195 | * |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
196 | * @param manager The manager to set the caps on. |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
197 | * @param caps The caps to set. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
198 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
199 | * @since 2.6.0 |
|
26520
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
200 | */ |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
201 | void purple_media_manager_set_ui_caps(PurpleMediaManager *manager, |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
202 | PurpleMediaCaps caps); |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
203 | |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
204 | /** |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
205 | * Gets which media caps the UI supports. |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
206 | * |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
207 | * @param manager The manager to get caps from. |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
208 | * |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
209 | * @return caps The caps retrieved. |
|
26648
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
210 | * |
|
1a733d58d74a
Even more @since tags, because Maiku's watching...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
26614
diff
changeset
|
211 | * @since 2.6.0 |
|
26520
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
212 | */ |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
213 | PurpleMediaCaps purple_media_manager_get_ui_caps(PurpleMediaManager *manager); |
|
8cbe60f17f3b
Add purple_media_manager_{get,set}_ui_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26491
diff
changeset
|
214 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
215 | /*}@*/ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
216 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
217 | #ifdef __cplusplus |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
218 | } |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
219 | #endif |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
220 | |
| 19883 | 221 | G_END_DECLS |
| 222 | ||
|
26649
1a6c4fd19355
Add PURPLE to the media header sentinels and reorder includes to fix building gf2
Paul Aurich <darkrain42@pidgin.im>
parents:
26648
diff
changeset
|
223 | #endif /* _PURPLE_MEDIA_MANAGER_H_ */ |