+
+/* Return NumPy array from Analog::data(). */
+%extend sigrok::Analog
+{
+ PyObject * _data()
+ {
+ int nd = 2;
+ npy_intp dims[2];
+ dims[0] = $self->channels().size();
+ dims[1] = $self->num_samples();
+ int typenum = NPY_FLOAT;
+ void *data = $self->data_pointer();
+ return PyArray_SimpleNewFromData(nd, dims, typenum, data);
+ }
+
+%pythoncode
+{
+ data = property(_data)
+}
+}