2014-11-08 12:59:27 -05:00
|
|
|
/**
|
|
|
|
* Copyright 2014 (c) Anna Schumaker.
|
|
|
|
*/
|
|
|
|
#ifndef OCARINA_CORE_TAGS_ARTIST_H
|
|
|
|
#define OCARINA_CORE_TAGS_ARTIST_H
|
|
|
|
|
2014-11-08 20:08:42 -05:00
|
|
|
#include <core/tags/generic.h>
|
2014-11-08 12:59:27 -05:00
|
|
|
|
|
|
|
/**
|
2014-11-08 13:56:54 -05:00
|
|
|
* The Artist tag is used to store the name of artists added
|
|
|
|
* to the tag database.
|
2014-11-08 12:59:27 -05:00
|
|
|
*/
|
2015-10-22 11:28:45 -04:00
|
|
|
struct artist : public GenericTag {
|
|
|
|
artist(); /**< Artist tag constructor. */
|
2014-11-08 12:59:27 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Artist tag constructor
|
2014-11-08 13:56:54 -05:00
|
|
|
*
|
2014-11-08 20:08:42 -05:00
|
|
|
* @param name Artist name.
|
2014-11-08 12:59:27 -05:00
|
|
|
*/
|
2015-10-22 11:28:45 -04:00
|
|
|
artist(const std::string &);
|
2014-11-08 12:59:27 -05:00
|
|
|
};
|
|
|
|
|
2014-11-16 10:08:12 -05:00
|
|
|
namespace tags
|
|
|
|
{
|
|
|
|
|
|
|
|
/** Called to read the artist_db from disk. */
|
|
|
|
void init_artist_db();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Called to look up an Artist tag by name. If no existing
|
|
|
|
* tag is found a new one will be created and returned to
|
|
|
|
* the caller.
|
|
|
|
*
|
|
|
|
* @param name The name of the artist.
|
|
|
|
* @return A matching Artist tag.
|
|
|
|
*/
|
2015-10-22 11:28:45 -04:00
|
|
|
struct artist *get_artist(const std::string &);
|
2014-11-16 10:08:12 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Called to look up an Artist tag by tag index.
|
|
|
|
*
|
|
|
|
* @param index The index of the Artist tag.
|
|
|
|
* @return A matching Artist tag or NULL.
|
|
|
|
*/
|
2015-10-22 11:28:45 -04:00
|
|
|
struct artist *get_artist(const unsigned int);
|
2014-11-16 10:08:12 -05:00
|
|
|
|
|
|
|
} /* Namespace: tags */
|
|
|
|
|
2014-11-08 12:59:27 -05:00
|
|
|
#endif /* OCARINA_CORE_TAGS_ARTIST_H */
|