summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharlie Brej <cbrej@cs.man.ac.uk>2010-08-04 13:45:11 +0100
committerCharlie Brej <cbrej@cs.man.ac.uk>2010-08-04 13:45:11 +0100
commit83cba11fcf9bbf50fed4ae464052e5e0462967fe (patch)
treef96151c7c9898dee9fb198616793cb410b8749f0
parent496c39bc112a2b2aaf0970504fe7e0904abb4bce (diff)
Add query function database support (not supported by any backends yet)
-rw-r--r--src/libtidbit/tidbit-database.c8
-rw-r--r--src/libtidbit/tidbit-database.h4
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