ocarina/include/tags.h

64 lines
1.0 KiB
C++

/*
* Copyright 2014 (c) Anna Schumaker.
*/
#ifndef OCARINA_TAGS_H
#define OCARINA_TAGS_H
#include <database.h>
class Artist : public DatabaseEntry {
public:
std::string name;
std::string lower;
Artist();
Artist(const std::string &);
const std::string primary_key();
void read(File &);
void write(File &);
};
class Album : public DatabaseEntry {
public:
std::string name;
std::string lower;
unsigned int year;
Album();
Album(const std::string &, unsigned int);
const std::string primary_key();
void read(File &);
void write(File &);
};
class Genre : public DatabaseEntry {
public:
std::string name;
std::string lower;
Genre();
Genre(const std::string &);
const std::string primary_key();
void read(File &);
void write(File &);
};
class Library : public DatabaseEntry {
public:
std::string root_path;
unsigned int count;
bool enabled;
Library();
Library(const std::string &);
const std::string primary_key();
void read(File &);
void write(File &);
};
#endif /* OCARINA_TAGS_H */