00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include <stdlib.h>
00014
00015
00016 #include <fileref.h>
00017 #include <tag.h>
00018 #include <tstringlist.h>
00019
00020
00021 #include <sqlite3.h>
00022
00023 using namespace std;
00024
00029 class meta
00030 {
00031 private:
00035 static int syncdir(const char *dirname, sqlite3 *db);
00036 public:
00042 static int getTags(char* filename, TagLib::StringList *tags);
00043
00049 static int setTags(char* filename, TagLib::StringList tags);
00050
00055 static int clearTags(char* filename);
00056
00062 static int addTag(char* filename, TagLib::String tag);
00063
00069 static int addTag(char* filename, TagLib::StringList tag);
00070
00076 static int delTag(char* filename, TagLib::String tag);
00077
00083 static int delTag(char* filename, TagLib::StringList tag);
00084
00089 static int syncdir(const char *dirname);
00090
00097 static int search(const char *tag, TagLib::StringList *files);
00098
00104 static int list(TagLib::StringList *tags);
00105 };