History

python/ext/py-filterbank.c: use new_py_fvec

Paul Brossier committed 10 years ago

Commit b055b4e1 parent 307fdfc1 file · +10 −5Browse files

Showing the changes to python/ext (1 of 1 file). Show all

Unified · Split

python/ext/py-filterbank.c+10−5
@@ -11,7 +11,8 @@ typedef struct · 10 unmodified lines
1111 cvec_t vec;
1212 fvec_t freqs;
1313 fmat_t coeffs;
14− fvec_t *out;
14+ PyObject *out;
15+ fvec_t c_out;
1516 } Py_filterbank;
1617
1718 static PyObject *
@@ -64,7 +65,7 @@ Py_filterbank_init (Py_filterbank * self, PyObject * args, PyObject * kwds) · 46 unmodified lines
6465 PyErr_SetString (PyExc_RuntimeError, errstr);
6566 return -1;
6667 }
67− self->out = new_fvec(self->n_filters);
68+ self->out = new_py_fvec(self->n_filters);
6869
6970 return 0;
7071 }
@@ -73,7 +74,7 @@ static void · 2 unmodified lines
7374 Py_filterbank_del (Py_filterbank *self, PyObject *unused)
7475 {
7576 del_aubio_filterbank(self->o);
76− del_fvec(self->out);
77+ Py_DECREF(self->out);
7778 free(self->coeffs.data);
7879 Py_TYPE(self)->tp_free((PyObject *) self);
7980 }
@@ -91,9 +92,13 @@ Py_filterbank_do(Py_filterbank * self, PyObject * args) · 11 unmodified lines
9192 return NULL;
9293 }
9394
95+ Py_INCREF(self->out);
96+ if (!PyAubio_ArrayToCFvec(self->out, &(self->c_out))) {
97+ return NULL;
98+ }
9499 // compute the function
95− aubio_filterbank_do (self->o, &(self->vec), self->out);
96− return (PyObject *)PyAubio_CFvecToArray(self->out);
100+ aubio_filterbank_do (self->o, &(self->vec), &(self->c_out));
101+ return self->out;
97102 }
98103
99104 static PyMemberDef Py_filterbank_members[] = {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t