changeset 473:b2fd8113d8bc api-inversion

const declarations for some API arguments. This should make it slightly clearer whose responsibility (the user's) it is to manage the memory pointed to by the corresponding arguments. Suggested by Chris Cannam.
author mas01cr
date Tue, 06 Jan 2009 16:27:01 +0000
parents 0f96ad351990
children e072aa1611f5
files audioDB-internals.h audioDB_API.h index.cpp insert.cpp query.cpp
diffstat 5 files changed, 20 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/audioDB-internals.h	Tue Jan 06 15:25:39 2009 +0000
+++ b/audioDB-internals.h	Tue Jan 06 16:27:01 2009 +0000
@@ -252,9 +252,9 @@
 int audiodb_track_id_datum(adb_t *, uint32_t, adb_datum_t *);
 int audiodb_free_datum(adb_datum_t *);
 int audiodb_datum_qpointers(adb_datum_t *, uint32_t, double **, double **, adb_qpointers_internal_t *);
-int audiodb_query_spec_qpointers(adb_t *, adb_query_spec_t *, double **, double **, adb_qpointers_internal_t *);
-int audiodb_query_queue_loop(adb_t *, adb_query_spec_t *, adb_qstate_internal_t *, double *, adb_qpointers_internal_t *);
-int audiodb_query_loop(adb_t *, adb_query_spec_t *, adb_qstate_internal_t *);
+int audiodb_query_spec_qpointers(adb_t *, const adb_query_spec_t *, double **, double **, adb_qpointers_internal_t *);
+int audiodb_query_queue_loop(adb_t *, const adb_query_spec_t *, adb_qstate_internal_t *, double *, adb_qpointers_internal_t *);
+int audiodb_query_loop(adb_t *, const adb_query_spec_t *, adb_qstate_internal_t *);
 char *audiodb_index_get_name(const char *, double, uint32_t);
 bool audiodb_index_exists(const char *, double, uint32_t);
-int audiodb_index_query_loop(adb_t *, adb_query_spec_t *, adb_qstate_internal_t *);
+int audiodb_index_query_loop(adb_t *, const adb_query_spec_t *, adb_qstate_internal_t *);
--- a/audioDB_API.h	Tue Jan 06 15:25:39 2009 +0000
+++ b/audioDB_API.h	Tue Jan 06 16:27:01 2009 +0000
@@ -181,15 +181,15 @@
 int audiodb_power(adb_ptr mydb);
 
 /* insert functions */
-int audiodb_insert_datum(adb_t *, adb_datum_t *);
-int audiodb_insert_reference(adb_t *, adb_reference_t *);
+int audiodb_insert_datum(adb_t *, const adb_datum_t *);
+int audiodb_insert_reference(adb_t *, const adb_reference_t *);
 int audiodb_insert(adb_ptr mydb, adb_insert_ptr ins);
 int audiodb_batchinsert(adb_ptr mydb, adb_insert_ptr ins, unsigned int size);
 
 /* query function */
 int audiodb_query(adb_ptr mydb, adb_query_ptr adbq, adb_queryresult_ptr adbqres);
-adb_query_results_t *audiodb_query_spec(adb_t *, adb_query_spec_t *);
-int audiodb_query_free_results(adb_t *, adb_query_spec_t *, adb_query_results_t *);
+adb_query_results_t *audiodb_query_spec(adb_t *, const adb_query_spec_t *);
+int audiodb_query_free_results(adb_t *, const adb_query_spec_t *, adb_query_results_t *);
 
 /* database status */  
 int audiodb_status(adb_ptr mydb, adb_status_ptr status);
--- a/index.cpp	Tue Jan 06 15:25:39 2009 +0000
+++ b/index.cpp	Tue Jan 06 16:27:01 2009 +0000
@@ -516,7 +516,7 @@
 
 
 // return true if indexed query performed else return false
-int audiodb_index_init_query(adb_t *adb, adb_query_spec_t *spec, adb_qstate_internal_t *qstate, bool corep) {
+int audiodb_index_init_query(adb_t *adb, const adb_query_spec_t *spec, adb_qstate_internal_t *qstate, bool corep) {
 
   uint32_t sequence_length = spec->qid.sequence_length;
   double radius = spec->refine.radius;
@@ -578,7 +578,7 @@
 // return -1 on error
 // return 0: if index does not exist
 // return nqv: if index exists
-int audiodb_index_query_loop(adb_t *adb, adb_query_spec_t *spec, adb_qstate_internal_t *qstate) {
+int audiodb_index_query_loop(adb_t *adb, const adb_query_spec_t *spec, adb_qstate_internal_t *qstate) {
   
   double *query = 0, *query_data = 0;
   adb_qpointers_internal_t qpointers = {0};
--- a/insert.cpp	Tue Jan 06 15:25:39 2009 +0000
+++ b/insert.cpp	Tue Jan 06 16:27:01 2009 +0000
@@ -215,7 +215,7 @@
   return 1;
 }
 
-int audiodb_insert_datum(adb_t *adb, adb_datum_t *datum) {
+int audiodb_insert_datum(adb_t *adb, const adb_datum_t *datum) {
   if(adb->header->flags & O2_FLAG_LARGE_ADB) {
     return 1;
   } else {
@@ -230,7 +230,7 @@
   }
 }
 
-int audiodb_insert_reference(adb_t *adb, adb_reference_t *reference) {
+int audiodb_insert_reference(adb_t *adb, const adb_reference_t *reference) {
   if(!(adb->header->flags & O2_FLAG_LARGE_ADB)) {
     return 1;
   } else {
--- a/query.cpp	Tue Jan 06 15:25:39 2009 +0000
+++ b/query.cpp	Tue Jan 06 16:27:01 2009 +0000
@@ -2,7 +2,7 @@
 #include "audioDB-internals.h"
 #include "accumulators.h"
 
-bool audiodb_powers_acceptable(adb_query_refine_t *r, double p1, double p2) {
+bool audiodb_powers_acceptable(const adb_query_refine_t *r, double p1, double p2) {
   if (r->flags & ADB_REFINE_ABSOLUTE_THRESHOLD) {
     if ((p1 < r->absolute_threshold) || (p2 < r->absolute_threshold)) {
       return false;
@@ -16,7 +16,7 @@
   return true;
 }
 
-adb_query_results_t *audiodb_query_spec(adb_t *adb, adb_query_spec_t *qspec) {
+adb_query_results_t *audiodb_query_spec(adb_t *adb, const adb_query_spec_t *qspec) {
   adb_qstate_internal_t qstate = {0};
   qstate.allowed_keys = new std::set<std::string>;
   adb_query_results_t *results;
@@ -96,13 +96,13 @@
   return NULL;
 }
 
-int audiodb_query_free_results(adb_t *adb, adb_query_spec_t *spec, adb_query_results_t *rs) {
+int audiodb_query_free_results(adb_t *adb, const adb_query_spec_t *spec, adb_query_results_t *rs) {
   free(rs->results);
   free(rs);
   return 0;
 }
 
-static void audiodb_initialize_arrays(adb_t *adb, adb_query_spec_t *spec, int track, unsigned int numVectors, double *query, double *data_buffer, double **D, double **DD) {
+static void audiodb_initialize_arrays(adb_t *adb, const adb_query_spec_t *spec, int track, unsigned int numVectors, double *query, double *data_buffer, double **D, double **DD) {
   unsigned int j, k, l, w;
   double *dp, *qp, *sp;
 
@@ -278,7 +278,7 @@
   return 0;
 }
 
-int audiodb_query_spec_qpointers(adb_t *adb, adb_query_spec_t *spec, double **vector_data, double **vector, adb_qpointers_internal_t *qpointers) {
+int audiodb_query_spec_qpointers(adb_t *adb, const adb_query_spec_t *spec, double **vector_data, double **vector, adb_qpointers_internal_t *qpointers) {
   adb_datum_t *datum;
   adb_datum_t d = {0};
   uint32_t sequence_length;
@@ -337,7 +337,7 @@
   return 0;
 }
 
-static int audiodb_set_up_dbpointers(adb_t *adb, adb_query_spec_t *spec, adb_qpointers_internal_t *dbpointers) {
+static int audiodb_set_up_dbpointers(adb_t *adb, const adb_query_spec_t *spec, adb_qpointers_internal_t *dbpointers) {
   uint32_t nvectors = adb->header->length / (adb->header->dim * sizeof(double));
   uint32_t sequence_length = spec->qid.sequence_length;
 
@@ -427,7 +427,7 @@
   
 }
 
-int audiodb_query_queue_loop(adb_t *adb, adb_query_spec_t *spec, adb_qstate_internal_t *qstate, double *query, adb_qpointers_internal_t *qpointers) {
+int audiodb_query_queue_loop(adb_t *adb, const adb_query_spec_t *spec, adb_qstate_internal_t *qstate, double *query, adb_qpointers_internal_t *qpointers) {
   adb_qpointers_internal_t dbpointers = {0};
 
   uint32_t sequence_length = spec->qid.sequence_length;
@@ -505,7 +505,7 @@
   return 0;
 }
 
-int audiodb_query_loop(adb_t *adb, adb_query_spec_t *spec, adb_qstate_internal_t *qstate) {
+int audiodb_query_loop(adb_t *adb, const adb_query_spec_t *spec, adb_qstate_internal_t *qstate) {
   
   double *query, *query_data;
   adb_qpointers_internal_t qpointers = {0}, dbpointers = {0};