#include <nrnpython.h>
#include <structmember.h>
#include <InterViews/resource.h>
#include <nrnoc2iv.h>
#include <ocjump.h>
#include "ivocvect.h"
#include "oclist.h"
#include "nrniv_mf.h"
#include "parse.h"
#include "nrnpy_hoc_2.h"
#define HocContextRestore |
#define HocTopContextSet assert(hoc_thisobject == 0); |
void hoc_call | ( | ) |
Referenced by hoc_call_func().
double* hoc_evalpointer | ( | ) |
References araypt, Frame::argn, cable_prop_eval_pointer(), execerror, hoc_objectdata, hoc_objectdata_restore(), hoc_objectdata_save(), hoc_pushpx(), hoc_thisobject, hoc_top_level_data, ISARRAY, Symbol::name, OPVAL, Symbol::public, Symbol::pval, spopm, Symbol::subtype, Symbol::sym, SYMBOL, Symbol::type, Symbol::u, Symbol::u_auto, USERDOUBLE, USERFLOAT, USERINT, USERPROPERTY, and Datum::val.
Referenced by debugzz(), and hoc_get_last_pointer_symbol().
References Symbol::arayinfo, call_ob_proc(), CPLUSOBJECT, ecalloc, emalloc, hoc_construct_point(), hoc_new_object(), hoc_nopop(), hoc_template_notify(), hoc_total_array_data(), i, Item, JAVAOBJECT, Symbol::name, new_sections(), Symbol::next, Symbol::oboff, Symbol::public, Arrayinfo::refcount, s, STRING, Symbol::template, Symbol::type, and Symbol::u.
Referenced by hoc_new_opoint(), hoc_newobj(), and hoc_newobj_arg().
Object* hoc_obj_look_inside_stack | ( | int | ) |
References d, Datum::i, Datum::obj, OBJECTTMP, Datum::pobj, tstkchk, and type.
Referenced by hoc_newobj(), hoc_object_asgn(), and hoc_object_component().
void hoc_object_component | ( | ) |
References Symbol::arayinfo, araypt, call_ob_proc(), CPLUSOBJECT, d, fprintf(), hoc_execerror(), hoc_nopop(), hoc_obj_look_inside_stack(), hoc_object_asgn(), hoc_objectdata, hoc_objectdata_restore(), hoc_objectdata_save(), hoc_objpop(), hoc_pop_defer(), hoc_push_object(), hoc_pushobj(), hoc_pushpx(), hoc_pushs(), hoc_pushstr(), hoc_pushx(), hoc_pxpop(), hoc_returning, hoc_strpop(), hoc_table_lookup(), hoc_thisobject, hoc_tobj_unref(), hoc_xpop(), i, if(), ISARRAY, ivoc_alias_lookup(), JAVAOBJECT, Symbol::name, nrn_pushsec(), nrn_sec_sym, nrn_sectionref_steer(), Arrayinfo::nsub, Symbol::object_, OBJECTALIAS, OPARINFO, OPOBJ, OPSECITM, OPSTR, OPVAL, pc, pd, Section::prop, Symbol::public, PUBLIC_TYPE, pushi, pushs, Symbol::pval, sec, section_object_seen, STRING, Symbol::type, Symbol::u, VARALIAS, and x.
Referenced by debugzz().
void hoc_objectvar | ( | ) |
References araypt, hoc_objectdata, hoc_objectdata_restore(), hoc_objectdata_save(), hoc_pushobj(), hoc_thisobject, hoc_top_level_data, ISARRAY, OPOBJ, pc, Symbol::public, Symbol::sym, and Symbol::u.
Referenced by debugzz().
Object** hoc_objpop | ( | ) |
void hoc_push_string | ( | ) |
References Symbol::cstr, hoc_objectdata, hoc_objectdata_restore(), hoc_objectdata_save(), hoc_pushstr(), hoc_thisobject, hoc_top_level_data, OPSTR, Symbol::public, Symbol::sym, Symbol::type, and Symbol::u.
Referenced by debugzz().
Referenced by hoc_assignsym(), hoc_getsymval(), and hoc_object_component().
int hoc_stack_type | ( | ) |
char** hoc_strpop | ( | ) |
void hoc_tobj_unref | ( | Object ** | ) |
boolean hoc_valid_stmt | ( | const char * | , | |
Object * | ||||
) |
Symbol* ivoc_alias_lookup | ( | const char * | name, | |
Object * | ob | |||
) |
int ivoc_list_count | ( | Object * | ) |
PyObject* nrn_hocobj_ptr | ( | double * | pd | ) |
References PyHocObject::px_, PyHocObject::type_, and PyHocObject::u.
References Section::child, hoc_execerror(), Section::prop, and Section::sibling.
PyObject* nrnpy_cas | ( | PyObject * | , | |
PyObject * | ||||
) |
References Datum::_pvoid, assert, NPySecObj::cell_, chk_access(), Prop::dparam, NPySecObj::name_, Section::prop, PROP_PY_INDEX, NPySecObj::sec_, and section_ref().
PyObject * nrnpy_forall | ( | PyObject * | self, | |
PyObject * | args | |||
) |
References PyHocObject::iteritem_, section_list, and PyHocObject::type_.
PyObject* nrnpy_ho2po | ( | Object * | o | ) |
References hoc_obj_ref(), nrnpy_hoc2pyobject(), and nrnpy_pyobj_sym_.
Referenced by nrnpy_hoc_pop().
myPyMODINIT_FUNC nrnpy_hoc | ( | ) |
References assert, hoc_lookup(), hoc_table_lookup(), m, nrnpy_nrn(), nrnpy_vec_from_python_p_, nrnpy_vec_to_python_p_, and Symbol::u.
Referenced by inithoc().
PyObject * nrnpy_hoc2pyobject | ( | Object * | ho | ) |
Referenced by nrnpy_ho2po().
PyObject* nrnpy_hoc_pop | ( | ) |
References d, hoc_objpop(), hoc_pxpop(), hoc_stack_type(), hoc_strpop(), hoc_tobj_unref(), hoc_xpop(), nrnpy_ho2po(), OBJECTTMP, and STRING.
PyObject* nrnpy_newsecobj | ( | PyObject * | , | |
PyObject * | , | |||
PyObject * | ||||
) |
myPyMODINIT_FUNC nrnpy_nrn | ( | ) |
Referenced by nrnpy_hoc().
int nrnpy_numbercheck | ( | PyObject * | po | ) |
Object* nrnpy_po2ho | ( | PyObject * | po | ) |
References PyHocObject::ho_, hoc_obj_ref(), nrnpy_pyobject_in_obj(), PyHocObject::type_, and PyHocObject::u.
PyObject* nrnpy_pushsec | ( | PyObject * | ) |
Object * nrnpy_pyobject_in_obj | ( | PyObject * | po | ) |
Referenced by nrnpy_po2ho().
double** nrnpy_setpointer_helper | ( | PyObject * | , | |
PyObject * | ||||
) |
References Prop::dparam, NrnProperty::find(), memb_func, Symbol::name, NRNPOINTER, NPyMechObj::prop_, NrnProperty::prop_index(), Datum::pval, Symbol::subtype, Memb_func::sym, Symbol::type, and Prop::type.
Object* hoc_thisobject |
Objectdata* hoc_top_level_data |
Referenced by nrnpy_ho2po(), nrnpy_ho_eq_po(), nrnpy_pyobject_in_obj(), and nrnpython_reg_real().
IvocVect*(* nrnpy_vec_from_python_p_)(void *) |
Referenced by nrnpy_hoc(), and v_from_python().
Object**(* nrnpy_vec_to_python_p_)(void *) |
Referenced by nrnpy_hoc(), and v_to_python().