Mercurial > hg > audiodb
changeset 677:e4eae1f59759
Modify sb-alien bindings for new qhopsize/ihopsize distinction
Tests pass
author | mas01cr |
---|---|
date | Fri, 05 Mar 2010 16:01:14 +0000 |
parents | dd6cabd65327 |
children | 421b7403ad68 |
files | bindings/sb-alien/interface.lisp bindings/sb-alien/library.lisp |
diffstat | 2 files changed, 9 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/bindings/sb-alien/interface.lisp Fri Mar 05 16:01:10 2010 +0000 +++ b/bindings/sb-alien/interface.lisp Fri Mar 05 16:01:14 2010 +0000 @@ -215,7 +215,9 @@ (radius nil radiusp) (include-keys nil include-keys-p) - (exclude-keys nil exclude-keys-p)) + (exclude-keys nil exclude-keys-p) + (query-hop 1 query-hop-p) + (db-hop 1 db-hop-p)) (unless (slot-boundp db 'alien) (error "database ~S is closed" db)) (with-alien ((qid adb-query-id-t) @@ -268,8 +270,11 @@ (loop for key being the elements of exclude-keys for i upfrom 0 do (setf (deref keys i) key))))) + (when (or query-hop-p db-hop-p) + (setf refine-flags (logior refine-flags 64)) + (setf (slot qrefine 'qhopsize) query-hop + (slot qrefine 'ihopsize) db-hop)) (setf (slot qrefine 'flags) refine-flags)) - (setf (slot qrefine 'hopsize) 1) ;; FIXME: hm, this possibly suggests that there's something ;; a bit wrong with the C audioDB interface. The API
--- a/bindings/sb-alien/library.lisp Fri Mar 05 16:01:10 2010 +0000 +++ b/bindings/sb-alien/library.lisp Fri Mar 05 16:01:14 2010 +0000 @@ -105,7 +105,8 @@ (absolute-threshold double) (relative-threshold double) (duration-ratio double) - (hopsize (unsigned 32)))) + (qhopsize (unsigned 32)) + (ihopsize (unsigned 32)))) (define-alien-type adb-query-spec-t (struct adb-query-spec