Mercurial > hg > audiodb
view audioDBws.h @ 108:bc141fd1dc41
New on-disk format!
* new magic number: "o2db" rather than "O2DB". Check for the old one
and give a helpful error message. (We could in principle handle the
old databases transparently, but since only MC has actually used them
and he has indicated that this is not desperately necessary...)
* add fields to header: a file format version (currently 0; we have
2^32-1 revisions to make before we have to worry...) and fields for
the offsets of the various tables. This is hopefully a little bit
more futureproof: we can move the default locations of the tables
around, and even adding new optional tables can be done easily in a
fairly transparent manner (if the relevant header field is 0, don't
use that feature).
* align regions to the appropriate 32-word boundary. This gives us some
space to breathe for in the header (admittedly only 15 words on 64-bit
architectures...)
author | mas01cr |
---|---|
date | Fri, 05 Oct 2007 14:21:43 +0000 |
parents | 53179ebec1f7 |
children | a5d5a55a412d |
line wrap: on
line source
// audioDBws.h -- web services interface to audioDB // //FIXME: this hard-coding of the service location might be right for //its internal use at Goldsmiths (for now) but really isn't in //general. Find a way to bind this later (at install time? Or maybe //just require that the installer edit the resulting wsdl file?) // //gsoap adb service location: http://gibbons.doc.gold.ac.uk:20703/ typedef int xsd__int; typedef double xsd__double; typedef char* xsd__string; // Supports result lists of arbitrary length class adb__queryResult{ int __sizeRlist; char **Rlist; // Maximum size of result list int __sizeDist; double *Dist; int __sizeQpos; unsigned int *Qpos; int __sizeSpos; unsigned int *Spos; }; class adb__statusResult { unsigned numFiles; unsigned dim; unsigned length; unsigned dudCount; unsigned nullCount; unsigned flags; }; // Print the status of an existing adb database int adb__status(xsd__string dbName, adb__statusResult &adbStatusResult); // Query an existing adb database int adb__query(xsd__string dbName, xsd__string qKey, xsd__string keyList, xsd__string timesFileName, xsd__int qType, xsd__int qPos, xsd__int pointNN, xsd__int segNN, xsd__int segLen, adb__queryResult &adbQueryResult);