Typedefs | |
typedef void | artistbrowse_complete_cb (sp_artistbrowse *result, void *userdata) |
Functions | |
sp_artistbrowse * | sp_artistbrowse_create (sp_session *session, sp_artist *artist, artistbrowse_complete_cb *callback, void *userdata) |
bool | sp_artistbrowse_is_loaded (sp_artistbrowse *arb) |
sp_error | sp_artistbrowse_error (sp_artistbrowse *arb) |
sp_artist * | sp_artistbrowse_artist (sp_artistbrowse *arb) |
int | sp_artistbrowse_num_portraits (sp_artistbrowse *arb) |
const byte * | sp_artistbrowse_portrait (sp_artistbrowse *arb, int index) |
int | sp_artistbrowse_num_tracks (sp_artistbrowse *arb) |
sp_track * | sp_artistbrowse_track (sp_artistbrowse *arb, int index) |
int | sp_artistbrowse_num_similar_artists (sp_artistbrowse *arb) |
sp_artist * | sp_artistbrowse_similar_artist (sp_artistbrowse *arb, int index) |
const char * | sp_artistbrowse_biography (sp_artistbrowse *arb) |
void | sp_artistbrowse_add_ref (sp_artistbrowse *arb) |
void | sp_artistbrowse_release (sp_artistbrowse *arb) |
typedef void artistbrowse_complete_cb(sp_artistbrowse *result, void *userdata) |
The type of a callback used in sp_artistbrowse_create()
When the callback is called, the metadata of all tracks belonging to it will have been loaded, so sp_track_is_loaded() will return non-zero. The same goes for the similar artist data.
[in] | result | The same pointer returned by sp_artistbrowse_create() |
[in] | userdata | The opaque pointer given to sp_artistbrowse_create() |
void sp_artistbrowse_add_ref | ( | sp_artistbrowse * | arb | ) |
Increase the reference count of an artist browse result
[in] | arb | The artist browse result object |
sp_artist* sp_artistbrowse_artist | ( | sp_artistbrowse * | arb | ) |
Given an artist browse object, return a pointer to its artist object
[in] | arb | Artist browse object |
const char* sp_artistbrowse_biography | ( | sp_artistbrowse * | arb | ) |
Given an artist browse object, return the artists biography
[in] | arb | Artist browse object |
sp_artistbrowse* sp_artistbrowse_create | ( | sp_session * | session, | |
sp_artist * | artist, | |||
artistbrowse_complete_cb * | callback, | |||
void * | userdata | |||
) |
Initiate a request for browsing an artist
The user is responsible for freeing the returned artist browse using sp_artistbrowse_release(). This can be done in the callback.
Here is a snippet from browse.c:
g_artistbrowse = sp_artistbrowse_create(session, artist, &artist_complete, NULL); sp_link_release(link); if (!g_artistbrowse) { fprintf(stderr, "failed to start artist browse\n"); g_exit_code = 10; return; }
[in] | session | Session object |
[in] | artist | Artist to be browsed. The artist metadata does not have to be loaded |
[in] | callback | Callback to be invoked when browsing has been completed. Pass NULL if you are not interested in this event. |
[in] | userdata | Userdata passed to callback. |
sp_error sp_artistbrowse_error | ( | sp_artistbrowse * | arb | ) |
Check if browsing returned an error code.
[in] | arb | Artist browse object |
bool sp_artistbrowse_is_loaded | ( | sp_artistbrowse * | arb | ) |
Check if an artist browse request is completed
[in] | arb | Artist browse object |
int sp_artistbrowse_num_portraits | ( | sp_artistbrowse * | arb | ) |
Given an artist browse object, return number of portraits available
[in] | arb | Artist browse object |
int sp_artistbrowse_num_similar_artists | ( | sp_artistbrowse * | arb | ) |
Given an artist browse object, return number of similar artists
[in] | arb | Artist browse object |
int sp_artistbrowse_num_tracks | ( | sp_artistbrowse * | arb | ) |
Given an artist browse object, return number of tracks
[in] | arb | Artist browse object |
const byte* sp_artistbrowse_portrait | ( | sp_artistbrowse * | arb, | |
int | index | |||
) |
Return image ID representing a portrait of the artist
[in] | arb | Artist object |
[in] | index | The index of the portrait. Should be in the interval [0, sp_artistbrowse_num_portraits() - 1] |
void sp_artistbrowse_release | ( | sp_artistbrowse * | arb | ) |
Decrease the reference count of an artist browse result
[in] | arb | The artist browse result object |
sp_artist* sp_artistbrowse_similar_artist | ( | sp_artistbrowse * | arb, | |
int | index | |||
) |
Given an artist browse object, return a similar artist by index
[in] | arb | Album browse object |
[in] | index | The index for the artist. Should be in the interval [0, sp_artistbrowse_num_similar_artists() - 1] |
sp_track* sp_artistbrowse_track | ( | sp_artistbrowse * | arb, | |
int | index | |||
) |
Given an artist browse object, return one of its tracks
[in] | arb | Album browse object |
[in] | index | The index for the track. Should be in the interval [0, sp_artistbrowse_num_tracks() - 1] |