comparison libtests/test_utils_lib.h @ 493:1950d76be128 api-inversion

Even more audiodb_query() deletion Make result_present_or_fail() be a little bit friendlier when comparing distances.
author mas01cr
date Sat, 10 Jan 2009 15:33:11 +0000
parents 4cb6c611f812
children c291e9201a3c
comparison
equal deleted inserted replaced
492:f6b126b018d8 493:1950d76be128
87 fflush(myfile); 87 fflush(myfile);
88 fclose(myfile); 88 fclose(myfile);
89 89
90 } 90 }
91 91
92 int close_enough(double a, double b, double epsilon) {
93 return (fabs(a-b) < epsilon);
94 }
95
92 int result_position(adb_query_results_t *r, const char *key, float dist, uint32_t qpos, uint32_t ipos) { 96 int result_position(adb_query_results_t *r, const char *key, float dist, uint32_t qpos, uint32_t ipos) {
93 for(uint32_t k = 0; k < r->nresults; k++) { 97 for(uint32_t k = 0; k < r->nresults; k++) {
94 adb_result_t result = r->results[k]; 98 adb_result_t result = r->results[k];
95 if((dist == result.dist) && (qpos == result.qpos) && 99 if(close_enough(dist, result.dist, 1e-4) && (qpos == result.qpos) &&
96 (ipos == result.ipos) && !(strcmp(key, result.key))) { 100 (ipos == result.ipos) && !(strcmp(key, result.key))) {
97 return k; 101 return k;
98 } 102 }
99 } 103 }
100 return -1; 104 return -1;