sql.h

00001 //
00002 // C++ Interface: db
00003 //
00004 // Description: 
00005 //
00006 //
00007 // Author: Felix Bechstein <f@ub0r.de>, (C) 2007
00008 //
00009 // Copyright: See COPYING file that comes with this distribution
00010 //
00011 //
00012 
00013 #include <stdlib.h>
00014 
00015 /* For sqlite3 */
00016 #include <sqlite3.h>
00017 
00018 using namespace std;
00019 
00023 class sql
00024 {
00025         private:
00026                 static const char *database;
00027                 static bool created;
00028                 
00034                 static const string cleansql(const char* sql);
00035                 
00039                 static const string cleansql(const string sql);
00040         public:
00041                 
00046                 static void setDataBase(const char *filename);
00047                 
00052                 static int openDB(sqlite3 **db);
00053                 
00058                 static int closeDB(sqlite3 *db);
00059         
00065                 static int addTag(const char* filename, const char* tag);
00069                 static int addTag(const char* filename, const char* tag, sqlite3* db);
00070                 
00075                 static int clearTags(const char* filename);
00079                 static int clearTags(const char* filename, sqlite3* db);
00080         
00086                 static int search(const char* tag, TagLib::StringList *files);
00090                 static int search(const char* tag, TagLib::StringList *files, sqlite3* db);
00091                 
00096                 static int wipePath(const char* path);
00097                 
00101                 static int wipePath(const char* path, sqlite3* db);
00102                 
00107                 static int list(TagLib::StringList *tags);
00108                 
00112                 static int list(TagLib::StringList *tags, sqlite3* db);         
00113 };

Generated on Fri Nov 9 09:57:22 2007 for mtag by  doxygen 1.5.2