Skip to main content

sc_neurocore_engine/bindings/cerebellar/
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 — Cerebellar neuron PyO3 binding composition
8
9use pyo3::prelude::*;
10
11mod dcn_neuron;
12mod golgi_cell;
13mod granule_cell;
14mod lugaro_cell;
15mod stellate_cell;
16mod unipolar_brush_cell;
17
18pub use dcn_neuron::PyDCNNeuron;
19pub use golgi_cell::PyGolgiCell;
20pub use granule_cell::PyGranuleCell;
21pub use lugaro_cell::PyLugaroCell;
22pub use stellate_cell::PyStellateCell;
23pub use unipolar_brush_cell::PyUnipolarBrushCell;
24
25/// Register the six model-owned cerebellar neuron classes in stable ABI order.
26pub(crate) fn register(module: &Bound<'_, PyModule>) -> PyResult<()> {
27    granule_cell::register(module)?;
28    golgi_cell::register(module)?;
29    stellate_cell::register(module)?;
30    lugaro_cell::register(module)?;
31    unipolar_brush_cell::register(module)?;
32    dcn_neuron::register(module)?;
33    Ok(())
34}