Mercurial > hg > audiodb
diff audioDB.h @ 468:4dbd7917bf9e api-inversion
YAY!
audioDB::index_query_loop is now disentangled. Hardwired lsh_in_core to
true, and invented a new QID flag for !lsh_exact. All tests continue to
pass.
The plans now:
- extract the audiodb_query_spec() function from inside audioDB::query,
and move audioDB::query (and the timestamps function) to audioDB.cpp;
- write libtests/0036 and libtests/0037 in terms of audiodb_query_spec();
- rewrite all the other libtests in terms of audiodb_query_spec();
- delete audiodb_query() [ and maybe rename audiodb_query_spec(), I
dunno];
- implement example bindings (probably to Lisp, because that's what I
know best);
- see if anyone other than me can work out how the API works. If not,
provide documentation;
- revise API in the light of user feedback.
author | mas01cr |
---|---|
date | Wed, 31 Dec 2008 15:44:12 +0000 |
parents | 1030664df98c |
children | 8fb85fbcaba6 |
line wrap: on
line diff
--- a/audioDB.h Wed Dec 31 12:25:22 2008 +0000 +++ b/audioDB.h Wed Dec 31 15:44:12 2008 +0000 @@ -42,14 +42,6 @@ }; bool operator<(const PointPair& a, const PointPair& b); -// should be in -internals.h -typedef struct adb_qstate_internal { - Accumulator *accumulator; - std::set<std::string> *allowed_keys; - std::priority_queue<PointPair> *exact_evaluation_queue; - LSH *lsh; -} adb_qstate_internal_t; - #define MAXSTR 512 // Databse PRIMARY commands @@ -364,7 +356,6 @@ void index_insert_tracks(Uns32T start_track, Uns32T end_track, double** fvpp, double** sNormpp,double** snPtrp, double** sPowerp, double** spPtrp); int index_insert_track(Uns32T trackID, double** fvpp, double** snpp, double** sppp); Uns32T index_insert_shingles(vector<vector<float> >*, Uns32T trackID, double* spp); - int index_query_loop(adb_t *adb, adb_query_spec_t *spec, adb_qstate_internal_t *qstate); void insertPowerData(unsigned n, int powerfd, double *powerdata); void init_track_aux_data(Uns32T trackID, double* fvp, double** sNormpp,double** snPtrp, double** sPowerp, double** spPtrp);