Skip to main content

sc_neurocore_engine/bindings/misc/
mod.rs

1// SPDX-License-Identifier: AGPL-3.0-or-later
2// Commercial license available
3// © Concepts 1996–2026 Miroslav Šotek. All rights reserved.
4// © Code 2020–2026 Miroslav Šotek. All rights reserved.
5// ORCID: 0009-0009-3560-0851
6// Contact: www.anulum.li | protoscience@anulum.li
7// SC-NeuroCore — Miscellaneous neuron PyO3 binding composition
8
9use pyo3::prelude::*;
10
11mod cardiac_purkinje_fibre;
12mod endocrine_beta_cell;
13mod frankenhaeuser_huxley_axon;
14mod gap_junction_neuron;
15mod graded_synapse_neuron;
16mod myelinated_axon;
17mod node_of_ranvier;
18mod smooth_muscle_cell;
19
20pub use cardiac_purkinje_fibre::PyCardiacPurkinjeFibre;
21pub use endocrine_beta_cell::PyEndocrineBetaCell;
22pub use frankenhaeuser_huxley_axon::PyFHAxon;
23pub use gap_junction_neuron::PyGapJunctionNeuron;
24pub use graded_synapse_neuron::PyGradedSynapseNeuron;
25pub use myelinated_axon::PyMyelinatedAxon;
26pub use node_of_ranvier::PyNodeOfRanvier;
27pub use smooth_muscle_cell::PySmoothMuscleCell;
28
29/// Register the eight model-owned miscellaneous neuron classes in stable ABI order.
30pub(crate) fn register(module: &Bound<'_, PyModule>) -> PyResult<()> {
31    graded_synapse_neuron::register(module)?;
32    gap_junction_neuron::register(module)?;
33    frankenhaeuser_huxley_axon::register(module)?;
34    node_of_ranvier::register(module)?;
35    myelinated_axon::register(module)?;
36    cardiac_purkinje_fibre::register(module)?;
37    smooth_muscle_cell::register(module)?;
38    endocrine_beta_cell::register(module)?;
39    Ok(())
40}