Skip to main content

A Python package for reusable interop with native resources from a C API

Project description

cinterop - helpers for Python-C interop via CFFI

license status Documentation Status codecov master: Python package testing: Python package

CFFI interop convenience wrapper

This package is primarily for managing and marshalling resources in native libraries, written for instance in C++, from Python. The package includes some generic helper facilities on top of CFFI for basic C types, and additional facilities for passing various types of data structures (C structs). These are informed mostly by the domain of environmental modelling and simulation, but most are generic.

  • date/time
  • numeric or character vectors
  • numeric or character dictionaries
  • univariate or multivariate time series
  • statistical definitions

License

MIT (see License.txt)

Documentation

Hosted at cinterop via readthedocs.io

Source code

Marshalling data between C, C++ and other programming languages onGitHub

Installation

pip install cinterop

From source:

pip install -r requirements.txt
python setup.py install

Sample use

Placeholder section

Related work

Placeholder section

Ancestry, acknowledgements

This python package cinterop relates loosely to prior work for interoperability between C++, R and .NET (R.NET)

cinterop features using cffi were also significantly informed by Kevin Plastow's work while he was at the Australian Bureau of Meteorology; this contribution is gratefully acknowledged.

In you have native interop needs you may also want to look at:

Other python packages

Placeholder

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cinterop-0.11.0.zip (22.4 kB view hashes)

Uploaded Source

Built Distribution

cinterop-0.11.0-py2.py3-none-any.whl (15.9 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page