comparison soap.cpp @ 348:75a59f58319e serializedQuery

New branch for serialized queries over SOAP
author mas01mc
date Mon, 27 Oct 2008 11:08:13 +0000
parents 30384a82983a
children 8ff9d4d83222
comparison
equal deleted inserted replaced
347:0d02bcd74a40 348:75a59f58319e
318 INTSTRINGIFY(trackNN, trackNNStr); 318 INTSTRINGIFY(trackNN, trackNNStr);
319 INTSTRINGIFY(sequenceLength, seqLenStr); 319 INTSTRINGIFY(sequenceLength, seqLenStr);
320 DOUBLESTRINGIFY(absolute_threshold, absolute_thresholdStr); 320 DOUBLESTRINGIFY(absolute_threshold, absolute_thresholdStr);
321 DOUBLESTRINGIFY(radius, radiusStr); 321 DOUBLESTRINGIFY(radius, radiusStr);
322 322
323 // WS queries only support 1-nearest neighbour point reporting
324 // at the moment, until we figure out how to better serve results
325 snprintf(qtypeStr, 256, "nsequence"); 323 snprintf(qtypeStr, 256, "nsequence");
326 const char *argv[]={ 324 const char *argv[]={
327 "./audioDB", 325 "./audioDB",
328 COM_QUERY, 326 COM_QUERY,
329 qtypeStr, 327 qtypeStr,
357 } catch (char *err) { 355 } catch (char *err) {
358 soap_receiver_fault(soap, err, ""); 356 soap_receiver_fault(soap, err, "");
359 return SOAP_FAULT; 357 return SOAP_FAULT;
360 } 358 }
361 } 359 }
362 360
361 // Query an audioDB database by vector (serialized)
362 int adb__shingleQuery(struct soap* soap, xsd__string dbName, struct adb__queryVector qVector, xsd__int queryType,xsd__int pointNN,xsd__int trackNN,xsd__int sequenceLength,xsd__double radius,xsd__double absolute_threshold,xsd__int lsh_exact,struct adb__queryResponse &adbQueryResponse){
363 cout << "qvector[" << qVector.__sizeQvector << "]: ";
364 for(int k=0; k < qVector.__sizeQvector ; k++)
365 cout << qVector.Qvector[k] << " ";
366 cout.flush();
367 return SOAP_OK;
368 }
369
363 /* Server loop */ 370 /* Server loop */
364 void audioDB::startServer(){ 371 void audioDB::startServer(){
365 struct soap soap; 372 struct soap soap;
366 int m, s; // master and slave sockets 373 int m, s; // master and slave sockets
367 soap_init(&soap); 374 soap_init(&soap);