NEURON
nrnpy_nrn.h File Reference

Go to the source code of this file.

Variables

static PyType_Slot nrnpy_SectionType_slots []
 
static PyType_Spec nrnpy_SectionType_spec
 
static PyType_Slot nrnpy_AllSegOfSecIterType_slots []
 
static PyType_Spec nrnpy_AllSegOfSecIterType_spec
 
static PyType_Slot nrnpy_SegOfSecIterType_slots []
 
static PyType_Spec nrnpy_SegOfSecIterType_spec
 
static PyType_Slot nrnpy_SegmentType_slots []
 
static PyType_Spec nrnpy_SegmentType_spec
 
static PyType_Slot nrnpy_MechOfSegIterType_slots []
 
static PyType_Spec nrnpy_MechOfSegIterType_spec
 
static PyType_Slot nrnpy_MechanismType_slots []
 
static PyType_Spec nrnpy_MechanismType_spec
 
static PyType_Slot nrnpy_VarOfMechIterType_slots []
 
static PyType_Spec nrnpy_VarOfMechIterType_spec
 
static PyType_Slot nrnpy_RangeType_slots []
 
static PyType_Spec nrnpy_RangeType_spec
 
static struct PyModuleDef nrnmodule
 
static struct PyModuleDef nrnsectionmodule
 

Variable Documentation

◆ nrnmodule

struct PyModuleDef nrnmodule
static
Initial value:
= {PyModuleDef_HEAD_INIT,
"nrn",
"NEURON interaction with Python",
-1,
static PyMethodDef nrnpy_methods[]
Definition: nrnpy_nrn.cpp:2458
#define NULL
Definition: sptree.h:16

Definition at line 144 of file nrnpy_nrn.h.

◆ nrnpy_AllSegOfSecIterType_slots

PyType_Slot nrnpy_AllSegOfSecIterType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPyAllSegOfSecIter_dealloc},
{Py_tp_iter, (void*) allseg_of_sec_iter},
{Py_tp_iternext, (void*) allseg_of_sec_next},
{Py_tp_init, (void*) NPyAllSegOfSecIter_init},
{Py_tp_new, (void*) NPyAllSegOfSecIter_new},
{Py_tp_doc, (void*) "Iterate over all Segments of a Section, including x=0 and 1"},
{0, 0},
}
static int NPyAllSegOfSecIter_init(NPyAllSegOfSecIter *self, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:333
PyObject * NPyAllSegOfSecIter_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:360
static void NPyAllSegOfSecIter_dealloc(NPyAllSegOfSecIter *self)
Definition: nrnpy_nrn.cpp:225
static PyObject * allseg_of_sec_iter(NPyAllSegOfSecIter *self)
Definition: nrnpy_nrn.cpp:1303
static PyObject * allseg_of_sec_next(NPyAllSegOfSecIter *self)
Definition: nrnpy_nrn.cpp:1309

Definition at line 26 of file nrnpy_nrn.h.

◆ nrnpy_AllSegOfSecIterType_spec

PyType_Spec nrnpy_AllSegOfSecIterType_spec
static
Initial value:
= {
"nrn.AllsegIter",
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_AllSegOfSecIterType_slots[]
Definition: nrnpy_nrn.h:26

Definition at line 35 of file nrnpy_nrn.h.

◆ nrnpy_MechanismType_slots

PyType_Slot nrnpy_MechanismType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPyMechObj_dealloc},
{Py_tp_repr, (void*) pymech_repr},
{Py_tp_getattro, (void*) mech_getattro},
{Py_tp_setattro, (void*) mech_setattro},
{Py_tp_iter, (void*) var_of_mech_iter},
{Py_tp_methods, (void*) NPyMechObj_methods},
{Py_tp_members, (void*) NPyMechObj_members},
{Py_tp_init, (void*) NPyMechObj_init},
{Py_tp_new, (void*) NPyMechObj_new},
{Py_tp_doc, (void*) "Mechanism objects"},
{0, 0},
}
static int NPyMechObj_init(NPyMechObj *self, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:538
static PyMemberDef NPyMechObj_members[]
Definition: nrnpy_nrn.cpp:2446
static PyMethodDef NPyMechObj_methods[]
Definition: nrnpy_nrn.cpp:2426
static PyObject * pymech_repr(PyObject *p)
Definition: nrnpy_nrn.cpp:1101
static int mech_setattro(NPyMechObj *self, PyObject *pyname, PyObject *value)
Definition: nrnpy_nrn.cpp:2086
static void NPyMechObj_dealloc(NPyMechObj *self)
Definition: nrnpy_nrn.cpp:249
static PyObject * mech_getattro(NPyMechObj *self, PyObject *pyname)
Definition: nrnpy_nrn.cpp:2019
static PyObject * var_of_mech_iter(NPyMechObj *self)
Definition: nrnpy_nrn.cpp:1753
static PyObject * NPyMechObj_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:401

Definition at line 97 of file nrnpy_nrn.h.

◆ nrnpy_MechanismType_spec

PyType_Spec nrnpy_MechanismType_spec
static
Initial value:
= {
"nrn.Mechanism",
sizeof(NPyMechObj),
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_MechanismType_slots[]
Definition: nrnpy_nrn.h:97

Definition at line 110 of file nrnpy_nrn.h.

◆ nrnpy_MechOfSegIterType_slots

PyType_Slot nrnpy_MechOfSegIterType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPyMechOfSegIter_dealloc},
{Py_tp_iter, (void*) PyObject_SelfIter},
{Py_tp_iternext, (void*) mech_of_seg_next},
{Py_tp_doc, (void*) "Iterate over Mechanisms in a Segment of a Section"},
{0, 0},
}
static void NPyMechOfSegIter_dealloc(NPyMechOfSegIter *self)
Definition: nrnpy_nrn.cpp:255
static PyObject * mech_of_seg_next(NPyMechOfSegIter *self)
Definition: nrnpy_nrn.cpp:1736

Definition at line 82 of file nrnpy_nrn.h.

◆ nrnpy_MechOfSegIterType_spec

PyType_Spec nrnpy_MechOfSegIterType_spec
static
Initial value:
= {
"nrn.MechOfSegIter",
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_MechOfSegIterType_slots[]
Definition: nrnpy_nrn.h:82

Definition at line 89 of file nrnpy_nrn.h.

◆ nrnpy_RangeType_slots

PyType_Slot nrnpy_RangeType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPyRangeVar_dealloc},
{Py_tp_methods, (void*) NPyRangeVar_methods},
{Py_tp_init, (void*) NPyRangeVar_init},
{Py_tp_new, (void*) NPyRangeVar_new},
{Py_tp_doc, (void*) "Range Variable Array objects"},
{Py_sq_length, (void*) rv_len},
{Py_sq_item, (void*) rv_getitem},
{Py_sq_ass_item, (void*) rv_setitem},
{0, 0},
}
static Py_ssize_t rv_len(PyObject *self)
Definition: nrnpy_nrn.cpp:2171
static PyObject * rv_getitem(PyObject *self, Py_ssize_t ix)
Definition: nrnpy_nrn.cpp:2180
static void NPyRangeVar_dealloc(NPyRangeVar *self)
Definition: nrnpy_nrn.cpp:243
static int NPyRangeVar_init(NPyRangeVar *self, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:551
static int rv_setitem(PyObject *self, Py_ssize_t ix, PyObject *value)
Definition: nrnpy_nrn.cpp:2207
static PyMethodDef NPyRangeVar_methods[]
Definition: nrnpy_nrn.cpp:2438
static PyObject * NPyRangeVar_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:417

Definition at line 133 of file nrnpy_nrn.h.

◆ nrnpy_RangeType_spec

PyType_Spec nrnpy_RangeType_spec
static
Initial value:
= {
"nrn.RangeVar",
sizeof(NPyRangeVar),
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_RangeType_slots[]
Definition: nrnpy_nrn.h:133

Definition at line 144 of file nrnpy_nrn.h.

◆ nrnpy_SectionType_slots

PyType_Slot nrnpy_SectionType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPySecObj_dealloc},
{Py_tp_repr, (void*) pysec_repr},
{Py_tp_hash, (void*) pysec_hash},
{Py_tp_call, (void*) NPySecObj_call},
{Py_tp_getattro, (void*) section_getattro},
{Py_tp_setattro, (void*) section_setattro},
{Py_tp_richcompare, (void*) pysec_richcmp},
{Py_tp_iter, (void*) seg_of_section_iter},
{Py_tp_methods, (void*) NPySecObj_methods},
{Py_tp_init, (void*) NPySecObj_init},
{Py_tp_new, (void*) NPySecObj_new},
{Py_tp_doc, (void*) "Section objects"},
{Py_sq_contains, (void*) NPySecObj_contains},
{0, 0},
}
static PyObject * pysec_richcmp(NPySecObj *self, PyObject *other, int op)
Definition: nrnpy_nrn.cpp:1044
static PyObject * seg_of_section_iter(NPySecObj *self)
Definition: nrnpy_nrn.cpp:1278
static void NPySecObj_dealloc(NPySecObj *self)
Definition: nrnpy_nrn.cpp:205
static PyObject * section_getattro(NPySecObj *self, PyObject *pyname)
Definition: nrnpy_nrn.cpp:1593
static int section_setattro(NPySecObj *self, PyObject *pyname, PyObject *value)
Definition: nrnpy_nrn.cpp:1650
static PyObject * pysec_repr(PyObject *p)
Definition: nrnpy_nrn.cpp:797
static PyObject * NPySecObj_call(NPySecObj *self, PyObject *args)
Definition: nrnpy_nrn.cpp:2161
static PyMethodDef NPySecObj_methods[]
Definition: nrnpy_nrn.cpp:2248
static long pysec_hash(PyObject *self)
Definition: nrnpy_nrn.cpp:1022
static int NPySecObj_init(NPySecObj *self, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:277
static int NPySecObj_contains(PyObject *sec, PyObject *obj)
Definition: nrnpy_nrn.cpp:173
PyObject * NPySecObj_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:347

Definition at line 1 of file nrnpy_nrn.h.

◆ nrnpy_SectionType_spec

PyType_Spec nrnpy_SectionType_spec
static
Initial value:
= {
"nrn.Section",
sizeof(NPySecObj),
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_SectionType_slots[]
Definition: nrnpy_nrn.h:1

Definition at line 17 of file nrnpy_nrn.h.

◆ nrnpy_SegmentType_slots

PyType_Slot nrnpy_SegmentType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPySegObj_dealloc},
{Py_tp_repr, (void*) pyseg_repr},
{Py_tp_hash, (void*) pyseg_hash},
{Py_tp_getattro, (void*) segment_getattro},
{Py_tp_setattro, (void*) segment_setattro},
{Py_tp_richcompare, (void*) pyseg_richcmp},
{Py_tp_iter, (void*) mech_of_segment_iter},
{Py_tp_methods, (void*) NPySegObj_methods},
{Py_tp_members, (void*) NPySegObj_members},
{Py_tp_init, (void*) NPySegObj_init},
{Py_tp_new, (void*) NPySegObj_new},
{Py_tp_doc, (void*) "Segment objects"},
{0, 0},
}
static PyMethodDef NPySegObj_methods[]
Definition: nrnpy_nrn.cpp:2384
static PyObject * mech_of_segment_iter(NPySegObj *self)
Definition: nrnpy_nrn.cpp:1514
static PyObject * pyseg_repr(PyObject *p)
Definition: nrnpy_nrn.cpp:805
static int NPySegObj_init(NPySegObj *self, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:429
static int segment_setattro(NPySegObj *self, PyObject *pyname, PyObject *value)
Definition: nrnpy_nrn.cpp:1925
static void NPySegObj_dealloc(NPySegObj *self)
Definition: nrnpy_nrn.cpp:237
static PyObject * pyseg_richcmp(NPySegObj *self, PyObject *other, int op)
Definition: nrnpy_nrn.cpp:1031
static PyObject * segment_getattro(NPySegObj *self, PyObject *pyname)
Definition: nrnpy_nrn.cpp:1788
static PyMemberDef NPySegObj_members[]
Definition: nrnpy_nrn.cpp:2417
static PyObject * NPySegObj_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
Definition: nrnpy_nrn.cpp:377
static long pyseg_hash(PyObject *self)
Definition: nrnpy_nrn.cpp:1026

Definition at line 59 of file nrnpy_nrn.h.

◆ nrnpy_SegmentType_spec

PyType_Spec nrnpy_SegmentType_spec
static
Initial value:
= {
"nrn.Segment",
sizeof(NPySegObj),
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_SegmentType_slots[]
Definition: nrnpy_nrn.h:59

Definition at line 74 of file nrnpy_nrn.h.

◆ nrnpy_SegOfSecIterType_slots

PyType_Slot nrnpy_SegOfSecIterType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPySegOfSecIter_dealloc},
{Py_tp_iter, (void*) PyObject_SelfIter},
{Py_tp_iternext, (void*) seg_of_sec_next},
{Py_tp_doc,
(void*) "Iterate over nonzero area Segments of a Section (does not include x=0 and 1)"},
{0, 0},
}
static void NPySegOfSecIter_dealloc(NPySegOfSecIter *self)
Definition: nrnpy_nrn.cpp:231
static PyObject * seg_of_sec_next(NPySegOfSecIter *self)
Definition: nrnpy_nrn.cpp:1334

Definition at line 43 of file nrnpy_nrn.h.

◆ nrnpy_SegOfSecIterType_spec

PyType_Spec nrnpy_SegOfSecIterType_spec
static
Initial value:
= {
"nrn.SegOfSecIter",
sizeof(NPySegOfSecIter),
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_SegOfSecIterType_slots[]
Definition: nrnpy_nrn.h:43

Definition at line 51 of file nrnpy_nrn.h.

◆ nrnpy_VarOfMechIterType_slots

PyType_Slot nrnpy_VarOfMechIterType_slots[]
static
Initial value:
= {
{Py_tp_dealloc, (void*) NPyVarOfMechIter_dealloc},
{Py_tp_iter, (void*) PyObject_SelfIter},
{Py_tp_iternext, (void*) var_of_mech_next},
{Py_tp_doc, (void*) "Iterate over variables in a Mechanism"},
{0, 0},
}
static PyObject * var_of_mech_next(NPyVarOfMechIter *self)
Definition: nrnpy_nrn.cpp:1772
static void NPyVarOfMechIter_dealloc(NPyVarOfMechIter *self)
Definition: nrnpy_nrn.cpp:261

Definition at line 118 of file nrnpy_nrn.h.

◆ nrnpy_VarOfMechIterType_spec

PyType_Spec nrnpy_VarOfMechIterType_spec
static
Initial value:
= {
"nrn.VarOfMechIter",
0,
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
}
static PyType_Slot nrnpy_VarOfMechIterType_slots[]
Definition: nrnpy_nrn.h:118

Definition at line 125 of file nrnpy_nrn.h.

◆ nrnsectionmodule

struct PyModuleDef nrnsectionmodule
static
Initial value:
= {PyModuleDef_HEAD_INIT,
"_neuron_section",
"NEURON interaction with Python",
-1,

Definition at line 144 of file nrnpy_nrn.h.