The core interop library for Selene python interfaces
Project description
Selene-Core
Selene is designed to be extensible through the use of plugins, in the form of compiled libraries and lightweight python interfaces that provide configuration for the selene-sim frontend. We achieve this through this selene-core crate and python module.
Each plugin should comprise a python component and a compiled library component. The compiled library implements the Selene plugin API, and the python component provides configuration, link information and the path to the compiled library to the selene frontend.
The selene-core python module provides interfaces for plugins to adhere to. It also provides a bundled include directory, containing C headers for the Selene plugin API for each type of component.
To access the C headers in the build stage of a python package, depend on selene-core
as a build dependency and call selene_core.get_include_directory(). The resulting
path can be provided to a build system for C or C++ and the plugin APIs can be included
through:
#include <selene/simulator.h> # for the simulator API
#include <selene/error_model.h> # for the error model API
#include <selene/runtime.h> # for the runtime API
By implementing the required functions, the plugin can be dynamically loaded by Selene at runtime.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file selene_core-0.2.9-py3-none-any.whl.
File metadata
- Download URL: selene_core-0.2.9-py3-none-any.whl
- Upload date:
- Size: 33.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
847c78ea393de43e736adf20c3aa7006ae8f96765299a401abbbda6af9af3128
|
|
| MD5 |
850767e56de6e947823d2055a87e07ad
|
|
| BLAKE2b-256 |
4ea9a94ad38852346869a9c8da037a92cff867b2fe72e9f512bae561a6bc6d23
|