# Low-level callback functions

Some functions in SciPy take as arguments callback functions, which can either be python callables or low-level compiled functions. Using compiled callback functions can improve performance somewhat by avoiding wrapping data in Python objects.

Such low-level functions in SciPy are wrapped in `LowLevelCallable` objects, which can be constructed from function pointers obtained from ctypes, cffi, Cython, or contained in Python PyCapsule objects.

`LowLevelCallable`(function[, user_data, …]) | Low-level callback function.

See also

Functions accepting low-level callables:

`scipy.integrate.quad`, `scipy.ndimage.generic_filter`, `scipy.ndimage.generic_filter1d`, `scipy.ndimage.geometric_transform`

Usage examples:

Extending scipy.ndimage in C, Faster integration using low-level callback functions

scipy.stats._result_classes.BinomTestResult scipy.LowLevelCallable