12.10.2014, 20:19, Mads Ipsen kirjoitti:
> Is there any way for me to detect (on the Python side) that transpose() 
> has been invoked on the matrix, and thereby only do the copy operation 
> when it really is needed? 

The correct way to do this is to, either:

In your C code check PyArray_IS_C_CONTIGUOUS(obj) and raise an error if
it is not. In addition, on the Python side, check for
`a.flags.c_contiguous` and make a copy if it is not.

OR

In your C code, get an handle to the array using PyArray_FromANY (or
PyArray_FromOTF) with NPY_ARRAY_C_CONTIGUOUS requirement set so that it
makes a copy when necessary.


_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to