C API Remarks

Note: the shared libraries will be searched using ctypes.

If you would like to force a certain shared library to be loaded, set the HEBI_C_LIB and HEBI_C_WRAPPER_LIB environment variable to the location of the binary.

Environment Variables

HEBI_DEBUG will enable lots of debugging messages. You will be able to view all internal C API calls made. This can be useful if your program segfaults or crashes for some strange reason. Note that the C API also uses this variable to print mini core dumps on a crash. If you are to report a bug to HEBI developers, please reproduce your bug with HEBI_DEBUG enabled and provide the output when the mini core dump is printed to stderr.

In a future release, HEBI_PROFILE will enable profiling of internal C API calls on all threads. This can be used in addition to a Python profiler such as yappi or cProfile. Enabling this enables a good bit of overhead, especially in addition to a Python profiler. This is currently unsupported.

HEBI_C_LIB enables you to select which HEBI C API (libhebi.so, hebi.dll or libhebi.dylib) shared library to load to use for the Python API. This allows you to use a specialized version or different version of the API than what is provided with this package.

HEBI_C_WRAPPER_LIB enables you to select which HEBI C wrapper (libhebiWrapper.so, hebiWrapper.dll or libhebiWrapper.dylib) shared library to load to use for the Python API. This allows you to use a specialized version or different version of the wrapper library than what is provided with this package.