mas01cr@0
|
1 // audioDBws.h -- web services interface to audioDB
|
mas01cr@0
|
2 //
|
mas01cr@22
|
3 //FIXME: this hard-coding of the service location might be right for
|
mas01cr@22
|
4 //its internal use at Goldsmiths (for now) but really isn't in
|
mas01cr@22
|
5 //general. Find a way to bind this later (at install time? Or maybe
|
mas01cr@22
|
6 //just require that the installer edit the resulting wsdl file?)
|
mas01cr@0
|
7 //
|
mas01cr@22
|
8 //gsoap adb service location: http://gibbons.doc.gold.ac.uk:20703/
|
mas01cr@0
|
9
|
mas01cr@0
|
10 typedef int xsd__int;
|
mas01cr@0
|
11 typedef double xsd__double;
|
mas01cr@0
|
12 typedef char* xsd__string;
|
mas01cr@0
|
13
|
mas01cr@0
|
14 // Supports result lists of arbitrary length
|
mas01cr@133
|
15 struct adb__queryResult{
|
mas01cr@0
|
16 int __sizeRlist;
|
mas01cr@0
|
17 char **Rlist; // Maximum size of result list
|
mas01cr@0
|
18 int __sizeDist;
|
mas01cr@0
|
19 double *Dist;
|
mas01cr@0
|
20 int __sizeQpos;
|
mas01cr@86
|
21 unsigned int *Qpos;
|
mas01cr@0
|
22 int __sizeSpos;
|
mas01cr@86
|
23 unsigned int *Spos;
|
mas01cr@0
|
24 };
|
mas01cr@0
|
25
|
mas01cr@133
|
26 struct adb__statusResult {
|
mas01cr@76
|
27 unsigned numFiles;
|
mas01cr@76
|
28 unsigned dim;
|
mas01cr@76
|
29 unsigned length;
|
mas01cr@76
|
30 unsigned dudCount;
|
mas01cr@76
|
31 unsigned nullCount;
|
mas01cr@76
|
32 unsigned flags;
|
mas01cr@76
|
33 };
|
mas01cr@133
|
34
|
mas01cr@133
|
35 struct adb__statusResponse {
|
mas01cr@133
|
36 struct adb__statusResult result;
|
mas01cr@133
|
37 };
|
mas01cr@133
|
38
|
mas01cr@133
|
39 struct adb__queryResponse {
|
mas01cr@133
|
40 struct adb__queryResult result;
|
mas01cr@133
|
41 };
|
mas01cr@133
|
42
|
mas01mc@334
|
43 struct adb__lisztResult {
|
mas01mc@334
|
44 int __sizeRkey;
|
mas01mc@334
|
45 char **Rkey;
|
mas01mc@334
|
46 int __sizeRlen;
|
mas01mc@334
|
47 unsigned int *Rlen;
|
mas01mc@334
|
48 };
|
mas01mc@334
|
49
|
mas01mc@354
|
50 struct adb__queryVector {
|
mas01mc@354
|
51 int dim; // dimensionality of the feature (d)
|
mas01mc@354
|
52 int __sizev; // l x d :
|
mas01mc@354
|
53 double *v; // pointer to query data
|
mas01mc@354
|
54 int __sizep;
|
mas01mc@354
|
55 double *p;
|
mas01mc@354
|
56 };
|
mas01mc@354
|
57
|
mas01mc@334
|
58 struct adb__lisztResponse {
|
mas01mc@334
|
59 struct adb__lisztResult result;
|
mas01mc@334
|
60 };
|
mas01mc@334
|
61
|
mas01cr@0
|
62 // Print the status of an existing adb database
|
mas01cr@133
|
63 int adb__status(xsd__string dbName, struct adb__statusResponse &adbStatusResponse);
|
mas01cr@0
|
64
|
mas01mc@334
|
65 // Print the status of an existing adb database
|
mas01mc@334
|
66 int adb__liszt(xsd__string dbName, xsd__int lisztOffset, xsd__int lisztLength, struct adb__lisztResponse &adbLisztResponse);
|
mas01mc@334
|
67
|
mas01cr@0
|
68 // Query an existing adb database
|
mas01mc@471
|
69 int adb__query(xsd__string dbName, xsd__string qKey, xsd__string keyList, xsd__string timesFileName, xsd__string powerFileName, xsd__int qType, xsd__int qPos, xsd__int pointNN, xsd__int segNN, xsd__int segLen, xsd__double radius, xsd__double absolute_threshold, xsd__double relative_threshold, xsd__int exhaustive, xsd__int lsh_exact, xsd__int no_unit_norming, struct adb__queryResponse &adbQueryResponse);
|
mas01cr@193
|
70
|
mas01mc@471
|
71 int adb__sequenceQueryByKey(xsd__string dbName,xsd__string trackKey, xsd__string featureFileName, xsd__int queryType,xsd__string trackFileName,xsd__string timesFileName,xsd__int queryPoint,xsd__int pointNN,xsd__int trackNN,xsd__int sequenceLength,xsd__double radius,xsd__double absolute_threshold,xsd__int usingQueryPoint,xsd__int lsh_exact, xsd__int no_unit_norming, struct adb__queryResponse &adbQueryResponse);
|
mas01mc@354
|
72
|
mas01mc@354
|
73 // Query an audioDB database by vector (serialized), queryKey/featureFileName is here replaced with qVector
|
mas01mc@471
|
74 int adb__shingleQuery(xsd__string dbName, struct adb__queryVector qVector, xsd__string keyList, xsd__string timesFileName, xsd__int queryType, xsd__int queryPos, xsd__int pointNN, xsd__int trackNN, xsd__int sequenceLength, xsd__double radius, xsd__double absolute_threshold, xsd__double relative_threshold, xsd__int exhaustive, xsd__int lsh_exact, xsd__int no_unit_norming, struct adb__queryResponse &adbQueryResponse);
|
mas01mc@354
|
75
|