comparison query.cpp @ 277:abfb26e08d9c audiodb-debian

Merge trunk changes -r326:386 into audiodb-debian branch. Plus new debian/changelog version. (Should have used an epoch really, but couldn't be bothered; TODO: work out a sane version numbering policy).
author mas01cr
date Tue, 01 Jul 2008 09:12:40 +0000
parents 15b8ff55ea5b
children
comparison
equal deleted inserted replaced
246:cbf51690c78c 277:abfb26e08d9c
35 r = new trackAveragingReporter<std::less < NNresult > >(pointNN, trackNN, dbH->numFiles); 35 r = new trackAveragingReporter<std::less < NNresult > >(pointNN, trackNN, dbH->numFiles);
36 } else { 36 } else {
37 r = new trackSequenceQueryRadReporter(trackNN, dbH->numFiles); 37 r = new trackSequenceQueryRadReporter(trackNN, dbH->numFiles);
38 } 38 }
39 break; 39 break;
40 case O2_N_SEQUENCE_QUERY :
41 if(radius == 0) {
42 r = new trackSequenceQueryNNReporter<std::less < NNresult > >(pointNN, trackNN, dbH->numFiles);
43 } else {
44 r = new trackSequenceQueryRadNNReporter(pointNN,trackNN, dbH->numFiles);
45 }
46 break;
47 case O2_ONE_TO_ONE_N_SEQUENCE_QUERY :
48 if(radius == 0) {
49 error("query-type not yet supported");
50 } else {
51 r = new trackSequenceQueryRadNNReporterOneToOne(pointNN,trackNN, dbH->numFiles);
52 }
53 break;
40 default: 54 default:
41 error("unrecognized queryType in query()"); 55 error("unrecognized queryType in query()");
42 } 56 }
43 query_loop(dbName, inFile, r); 57 query_loop(dbName, inFile, r);
44 r->report(fileTable, adbQueryResponse); 58 r->report(fileTable, adbQueryResponse);
46 } 60 }
47 61
48 // return ordinal position of key in keyTable 62 // return ordinal position of key in keyTable
49 unsigned audioDB::getKeyPos(char* key){ 63 unsigned audioDB::getKeyPos(char* key){
50 for(unsigned k=0; k<dbH->numFiles; k++) 64 for(unsigned k=0; k<dbH->numFiles; k++)
51 if(strncmp(fileTable + k*O2_FILETABLESIZE, key, strlen(key))==0) 65 if(strncmp(fileTable + k*O2_FILETABLE_ENTRY_SIZE, key, strlen(key))==0)
52 return k; 66 return k;
53 error("Key not found",key); 67 error("Key not found",key);
54 return O2_ERR_KEYNOTFOUND; 68 return O2_ERR_KEYNOTFOUND;
55 } 69 }
56 70