00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef UPNP_H
00010 #define UPNP_H
00011
00012 #include <gtk/gtk.h>
00013 #include <cybergarage/upnp/ccontrolpoint.h>
00014
00018 CgUpnpControlPoint* controlPoint;
00019
00020
00021
00022
00023
00027 int init_upnp_controlpoint();
00028
00032 int destroy_upnp_controlpoint();
00033
00045 BOOL get_upnp_content_directory(GtkTreeStore* model,
00046 GtkTreeIter* parent,
00047 gchar* udn,
00048 gchar *parent_id);
00049
00060 BOOL parse_didllite_nodelist_to_model(GtkTreeStore* model,
00061 GtkTreeIter* parent,
00062 CgXmlNodeList* nodelist,
00063 gchar* udn);
00064
00074 BOOL parse_didllite_node_to_model(GtkTreeStore* model,
00075 GtkTreeIter* iter,
00076 CgXmlNode* node);
00077
00086 void update_remote_now_playing_text(GtkTextBuffer* buffer,
00087 gchar* renderer_udn);
00088
00096 void insert_remote_transport_state(GtkTextBuffer* buffer,
00097 GtkTextIter* text_iter,
00098 char* state);
00099
00106 gboolean get_track_name_from_cds(gchar* uri, gchar** name);
00107
00117 gboolean play_remote_media(gchar* udn, gchar* uri,
00118 gchar* media_class,
00119 gchar* objectID, gchar* srv_udn);
00120
00121 gboolean get_meta_data(CgUpnpDevice* device, gchar* id, gchar** metaData);
00122
00128 gboolean stop_remote_media(gchar* udn);
00129
00135 gboolean pause_remote_media(gchar* udn);
00136
00144 gboolean get_remote_mute(gchar* udn, gboolean* mute);
00145
00152 gboolean mute_remote_media(gchar* udn, gboolean mute);
00153
00159 gboolean next_remote_media(gchar* udn);
00160
00166 gboolean previous_remote_media(gchar* udn);
00167
00173 gboolean increase_remote_volume(gchar* udn);
00174
00180 gboolean decrease_remote_volume(gchar* udn);
00181
00188 gboolean get_remote_renderer_presets(gchar* udn, gchar** presets);
00189
00196 void seek_remote_media(gchar* udn, long seekto);
00197
00205 gboolean device_hasaction(gchar* udn,
00206 gchar* serviceType,
00207 gchar* actionName);
00208
00216 void device_listener(char* udn, CgUpnpDeviceStatus status);
00217
00223 void remove_device(gchar* udn);
00224
00230 void add_device(gchar* udn);
00231
00238 void add_cds_device(gchar* name, gchar* udn, GtkTreeStore* store);
00239
00246 void add_renderer_device(gchar* name, gchar* udn, GtkListStore* store);
00247
00248 #endif