#ifndef __XYSDK_PLAY_LIST_H__
#define __XYSDK_PLAY_LIST_H__


//初始化单曲列表
xy_list_t* xy_api_init_track_list(void);

//添加单曲到播放列表
int xy_api_add_info_to_list(xy_list_t* track_list, source_list_info_t *track_info); 

//释放播放列表单曲数据
void xy_api_free_track_list(xy_list_t* track_list);

//根据音频id获取音频信息节点
xy_node_t* xy_api_get_track_node(xy_list_t* track_list, char *track_id);

//获取播放列表下音频总数
uint16_t xy_api_get_track_total(xy_list_t* track_list);

//通过节点切换上下曲， dir为1时上一曲，dir为2时下一曲, step为切换的步长
xy_node_t* xy_api_change_track_by_node(xy_list_t* track_list, xy_node_t* node, uint8_t dir, uint16_t step);

//根据index获取音频信息
source_list_info_t *xy_api_get_track_info(xy_list_t* track_list, uint16_t index);

//根据音频id获取音频信息
source_list_info_t *xy_api_get_track_info_by_track_id(xy_list_t* track_list, char *track_id);

#endif