/usr/local/lib64/python3.6/site-packages/numpy/core/include/numpy
NameSizeModeActions
random/-0755rm
arrayobject.h1640644editdlrm
arrayscalars.h36690644editdlrm
halffloat.h18780644editdlrm
multiarray_api.txt554480644editdlrm
ndarrayobject.h106880644editdlrm
ndarraytypes.h645780644editdlrm
noprefix.h67860644editdlrm
npy_1_7_deprecated_api.h43510644editdlrm
npy_3kcompat.h145480644editdlrm
npy_common.h377070644editdlrm
npy_cpu.h40380644editdlrm
npy_endian.h26410644editdlrm
npy_interrupt.h18670644editdlrm
npy_math.h210270644editdlrm
npy_no_deprecated_api.h5670644editdlrm
npy_os.h8170644editdlrm
numpyconfig.h13670644editdlrm
oldnumeric.h7080644editdlrm
old_defines.h63060644editdlrm
ufuncobject.h127580644editdlrm
ufunc_api.txt70640644editdlrm
utils.h7290644editdlrm
_neighborhood_iterator_imp.h18610644editdlrm
_numpyconfig.h10100644editdlrm
__multiarray_api.h616050644editdlrm
__ufunc_api.h124280644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/numpy/core/include/numpy/_neighborhood_iterator_imp.h (1861B)
#ifndef _NPY_INCLUDE_NEIGHBORHOOD_IMP #error You should not include this header directly #endif /* * Private API (here for inline) */ static NPY_INLINE int _PyArrayNeighborhoodIter_IncrCoord(PyArrayNeighborhoodIterObject* iter); /* * Update to next item of the iterator * * Note: this simply increment the coordinates vector, last dimension * incremented first , i.e, for dimension 3 * ... * -1, -1, -1 * -1, -1, 0 * -1, -1, 1 * .... * -1, 0, -1 * -1, 0, 0 * .... * 0, -1, -1 * 0, -1, 0 * .... */ #define _UPDATE_COORD_ITER(c) \ wb = iter->coordinates[c] < iter->bounds[c][1]; \ if (wb) { \ iter->coordinates[c] += 1; \ return 0; \ } \ else { \ iter->coordinates[c] = iter->bounds[c][0]; \ } static NPY_INLINE int _PyArrayNeighborhoodIter_IncrCoord(PyArrayNeighborhoodIterObject* iter) { npy_intp i, wb; for (i = iter->nd - 1; i >= 0; --i) { _UPDATE_COORD_ITER(i) } return 0; } /* * Version optimized for 2d arrays, manual loop unrolling */ static NPY_INLINE int _PyArrayNeighborhoodIter_IncrCoord2D(PyArrayNeighborhoodIterObject* iter) { npy_intp wb; _UPDATE_COORD_ITER(1) _UPDATE_COORD_ITER(0) return 0; } #undef _UPDATE_COORD_ITER /* * Advance to the next neighbour */ static NPY_INLINE int PyArrayNeighborhoodIter_Next(PyArrayNeighborhoodIterObject* iter) { _PyArrayNeighborhoodIter_IncrCoord (iter); iter->dataptr = iter->translate((PyArrayIterObject*)iter, iter->coordinates); return 0; } /* * Reset functions */ static NPY_INLINE int PyArrayNeighborhoodIter_Reset(PyArrayNeighborhoodIterObject* iter) { npy_intp i; for (i = 0; i < iter->nd; ++i) { iter->coordinates[i] = iter->bounds[i][0]; } iter->dataptr = iter->translate((PyArrayIterObject*)iter, iter->coordinates); return 0; }