ocarina/include/core/tags/artist.h

47 lines
967 B
C
Raw Normal View History

/**
* Copyright 2014 (c) Anna Schumaker.
*/
#ifndef OCARINA_CORE_TAGS_ARTIST_H
#define OCARINA_CORE_TAGS_ARTIST_H
#include <core/tags/generic.h>
/**
* The Artist tag is used to store the name of artists added
* to the tag database.
*/
struct artist : public GenericTag {
artist(); /**< Artist tag constructor. */
/**
* Artist tag constructor
*
* @param name Artist name.
*/
artist(const std::string &);
};
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.
*/
struct artist *get_artist(const std::string &);
} /* Namespace: tags */
/* Called to get an artist tag with a specific index. */
struct artist *artist_get(const unsigned int);
#endif /* OCARINA_CORE_TAGS_ARTIST_H */