diff options
author | Charlie Brej <cbrej@cs.man.ac.uk> | 2010-08-04 13:45:11 +0100 |
---|---|---|
committer | Charlie Brej <cbrej@cs.man.ac.uk> | 2010-08-04 13:45:11 +0100 |
commit | 83cba11fcf9bbf50fed4ae464052e5e0462967fe (patch) | |
tree | f96151c7c9898dee9fb198616793cb410b8749f0 | |
parent | 496c39bc112a2b2aaf0970504fe7e0904abb4bce (diff) |
Add query function database support (not supported by any backends yet)
-rw-r--r-- | src/libtidbit/tidbit-database.c | 8 | ||||
-rw-r--r-- | src/libtidbit/tidbit-database.h | 4 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/libtidbit/tidbit-database.c b/src/libtidbit/tidbit-database.c index 48b19b6..f84e0aa 100644 --- a/src/libtidbit/tidbit-database.c +++ b/src/libtidbit/tidbit-database.c @@ -67,3 +67,11 @@ PtrTidbitRecord tidbit_database_fetch_record (PtrTidbitDatabase database, char* g_assert(database->functions->fetch); return database->functions->fetch(database, signature); } + +PtrTidbitGuidSet tidbit_database_query (PtrTidbitDatabase database, PtrTidbitQuery query) +{ + g_assert(database); + g_assert(query); + g_assert(database->functions->query); + return database->functions->query(database, query); +} diff --git a/src/libtidbit/tidbit-database.h b/src/libtidbit/tidbit-database.h index 93d578a..6a4daa3 100644 --- a/src/libtidbit/tidbit-database.h +++ b/src/libtidbit/tidbit-database.h @@ -21,11 +21,14 @@ #define _TIDBIT_DATABASE_H_ #include "tidbit.h" +#include "tidbit-query.h" +#include "tidbit-guid.h" typedef struct TidbitDatabaseFunctions{ void (*free) (PtrTidbitDatabase database); unsigned int (*insert) (PtrTidbitDatabase database, PtrTidbitRecord record); PtrTidbitRecord (*fetch) (PtrTidbitDatabase database, char* signature); + PtrTidbitGuidSet (*query) (PtrTidbitDatabase database, PtrTidbitQuery query); }TidbitDatabaseFunctions, *PtrTidbitDatabaseFunctions; struct _TidbitDatabase{ @@ -39,6 +42,7 @@ void tidbit_database_ref (PtrTidbitDatabase database); void tidbit_database_unref (PtrTidbitDatabase database); unsigned int tidbit_database_insert_record (PtrTidbitDatabase database, PtrTidbitRecord record); PtrTidbitRecord tidbit_database_fetch_record (PtrTidbitDatabase database, char* signature); +PtrTidbitGuidSet tidbit_database_query (PtrTidbitDatabase database, PtrTidbitQuery query); #endif |