[/code]
Code: Select all
;; CvMatND* cvInitMatNDHeader(CvMatND* mat,
int dims, const int* sizes, int type, void* data=NULL)
(cffi:defcfun ("cvInitMatNDHeader" %init-mat-nd-header) cv-mat-nd
(mat cv-mat-nd)
(dims :int)
(sizes :pointer)
(type :int)
(data :pointer))
(defun init-mat-nd-header (mat dims sizes type &optional (data (cffi:null-pointer)))
"Initializes a pre-allocated multi-dimensional array header."
(%init-mat-nd-header mat dims (cffi:foreign-alloc :int
:initial-contents sizes) type
(cffi:foreign-alloc :int :initial-contents data)))
I tried
Code: Select all
(defun init-mat-nd-header (mat dims sizes type &optional
(data (cffi:null-pointer)))
"Initializes a pre-allocated multi-dimensional array header."
(%init-mat-nd-header mat dims (cffi:foreign-alloc :int
:initial-contents sizes) type
(cffi:foreign-alloc :int :initial-contents data))
(return-from init-mat-nd-header data))
Code: Select all
(defun init-mat-nd-header (mat dims sizes type &optional
(data (cffi:null-pointer)))
"Initializes a pre-allocated multi-dimensional array header."
(%init-mat-nd-header mat dims (cffi:foreign-alloc :int
:initial-contents sizes) type
(cffi:foreign-alloc :int :initial-contents data))
data)