return channel_list;
}
+/**
+ * Gets a favorite channel list.
+ *
+ * @return Favorite channel list, or NULL if fails
+ */
+Eina_List *tv_channel_get_favorite_list()
+{
+ GList *tvs_list = NULL;
+ Eina_List *channel_list = NULL;
+ TvServiceChannel *tvs_data = NULL;
+ const struct tv_channel_info *channel_info;
+ int r, i;
+
+ r = tv_service_get_channel_list(
+ TV_SERVICE_CHANNEL_MODE_FAVORITE,
+ TV_SERVICE_ANTENNA_TYPE_ALL, &tvs_list);
+ if (r != TVS_ERROR_OK) {
+ _ERR("failed to get channel list");
+ return NULL;
+ }
+
+ for (i = 0; i < g_list_length(tvs_list); i++) {
+ tvs_data = (TvServiceChannel *) g_list_nth_data(tvs_list, i);
+ if (tvs_data) {
+ channel_info = _tv_channel_get_info(tvs_data);
+ if (channel_info)
+ channel_list = eina_list_append(channel_list,
+ channel_info);
+ free(tvs_data);
+ }
+ }
+
+ return channel_list;
+}
+
TvServiceFilterNode *_tv_channel_get_filter(
TvServiceChannelDataAttr attribute, int type, void *data)
{