Skip to content
Snippets Groups Projects
Select Git revision
  • 18d6325eff945616d4c5a6db80a319aa3bb1ba57
  • master default protected
  • tut_ring_allen
  • docs_furo
  • docs_reorder_cable_cell
  • docs_graphviz
  • docs_rtd_dev
  • ebrains_mirror
  • doc_recat
  • docs_spike_source
  • docs_sim_sample_clar
  • docs_pip_warn
  • github_template_updates
  • docs_fix_link
  • cv_default_and_doc_clarification
  • docs_add_numpy_req
  • readme_zenodo_05
  • install_python_fix
  • install_require_numpy
  • typofix_propetries
  • docs_recipe_lookup
  • v0.10.0
  • v0.10.1
  • v0.10.0-rc5
  • v0.10.0-rc4
  • v0.10.0-rc3
  • v0.10.0-rc2
  • v0.10.0-rc
  • v0.9.0
  • v0.9.0-rc
  • v0.8.1
  • v0.8
  • v0.8-rc
  • v0.7
  • v0.6
  • v0.5.2
  • v0.5.1
  • v0.5
  • v0.4
  • v0.3
  • v0.2.2
41 results

module.cpp

Blame
  • event_generator.cpp 1.35 KiB
    #include <pybind11/pybind11.h>
    #include <pybind11/pytypes.h>
    #include <pybind11/stl.h>
    
    #include <arbor/common_types.hpp>
    #include <arbor/schedule.hpp>
    
    #include "event_generator.hpp"
    #include "schedule.hpp"
    
    namespace pyarb {
    
    void register_event_generators(pybind11::module& m) {
        using namespace pybind11::literals;
    
        pybind11::class_<event_generator_shim> event_generator(m, "event_generator");
    
        event_generator
            .def(pybind11::init<>(
                [](arb::cell_local_label_type target, double weight, const schedule_shim_base& sched) {
                    return event_generator_shim(std::move(target), weight, sched.schedule()); }),
                "target"_a, "weight"_a, "sched"_a,
                "Construct an event generator with arguments:\n"
                "  target: The target synapse label and selection policy.\n"
                "  weight: The weight of events to deliver.\n"
                "  sched:  A schedule of the events.")
            .def_readwrite("target", &event_generator_shim::target,
                 "The target synapse (gid, local_id).")
            .def_readwrite("weight", &event_generator_shim::weight,
                 "The weight of events to deliver.")
            .def("__str__", [](const event_generator_shim&){return "<arbor.event_generator>";})
            .def("__repr__", [](const event_generator_shim&){return "<arbor.event_generator>";});
    }
    
    } // namespace pyarb