Mercurial > hg > audiodb
diff accumulator_test.cpp @ 498:342822c2d49a
Merge api-inversion branch (-r656:771, but I don't expect to return to
that branch) into the trunk.
I expect there to be minor performance regressions (e.g. in the SOAP
server index cacheing, which I have forcibly removed) and minor
unplugged memory leaks (e.g. in audioDB::query(), where I don't free up
the datum). I hope that these leaks and performance regressions can be
plugged in short order. I also expect that some (but maybe not all) of
the issues currently addressed in the memory-leaks branch are superseded
or fixed by this merge.
There remains much work to be done; go forth and do it.
author | mas01cr |
---|---|
date | Sat, 10 Jan 2009 16:47:57 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accumulator_test.cpp Sat Jan 10 16:47:57 2009 +0000 @@ -0,0 +1,34 @@ +#include "audioDB.h" +extern "C" { +#include "audioDB_API.h" +} +#include "audioDB-internals.h" + +#include "accumulators.h" + +static NearestAccumulator<adb_result_dist_lt> *foo = new NearestAccumulator<adb_result_dist_lt>(); + +int main() { + adb_result_t r; + r.key = "hello"; + r.ipos = 0; + r.qpos = 0; + r.dist = 3; + foo->add_point(&r); + r.ipos = 1; + r.dist = 2; + foo->add_point(&r); + r.qpos = 1; + foo->add_point(&r); + + adb_query_results_t *rs; + rs = foo->get_points(); + for (unsigned int k = 0; k < rs->nresults; k++) { + r = rs->results[k]; + printf("%s: %f %u %u\n", r.key, r.dist, r.qpos, r.ipos); + } + free(rs->results); + free(rs); + delete foo; + return 1; +}