Skip to main content

Python classes for C interop via cffi

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-1.0.0.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

cinterop-1.0.0-py3-none-any.whl (16.3 kB view details)

Uploaded Python 3

File details

Details for the file cinterop-1.0.0.tar.gz.

File metadata

  • Download URL: cinterop-1.0.0.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.10.0 readme-renderer/37.3 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.7 tqdm/4.66.6 importlib-metadata/6.7.0 keyring/24.1.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.11.9

File hashes

Hashes for cinterop-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2ec780859cbd798f9f93e0f237dc59094425725dafe258fc94bc71edafbbd670
MD5 420850b7b80b9a48eb61fe7ce8c371a6
BLAKE2b-256 975b6b6816028292313b9ac4d94acd38888e7dbab39ff2a42d8dcd33c5223efa

See more details on using hashes here.

File details

Details for the file cinterop-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cinterop-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 16.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.10.0 readme-renderer/37.3 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.7 tqdm/4.66.6 importlib-metadata/6.7.0 keyring/24.1.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.11.9

File hashes

Hashes for cinterop-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 caafea546e931c0529775892da3dd9c3a4a440ce042cc3234e15f6180fd82b99
MD5 ce90b223983ed9f42cba40872e585255
BLAKE2b-256 294a4c0f2f7e900e1478b026aef3033e4f1b6302428e8f7300ed903f63d5ee38

See more details on using hashes here.

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