#include <../../nrnconf.h>
#include <stdio.h>
#include <math.h>
#include <nrnpython_config.h>
#include "section.h"
#include "membfunc.h"
#include "parse.h"
#define CAB_SIZE 10 |
Referenced by cab_alloc().
#define HOC_L_LIST 1 |
#define NSECSTACK 200 |
Referenced by nrn_pushsec().
#define PI 3.14159265358979323846 |
#define symlist hoc_symlist |
add_section | ( | ) |
References Symbol::arayinfo, assert, emalloc, hoc_arayinfo_install(), hoc_freearay(), hoc_install_object_data_index(), hoc_objectdata, hoc_thisobject, hoc_top_level_data, hoc_total_array(), i, Item, Symbol::name, new_sections(), Symbol::oboff, OPSECITM, pc, sec_free(), Arrayinfo::sub, Symbol::type, and Symbol::u.
Referenced by nrn_arc_position().
cab_alloc | ( | Prop * | p | ) |
References CAB_SIZE, CABLESECTION, DEF_L, DEF_Ra, DEF_rallbranch, nrn_prop_datum_alloc(), pd, and Datum::val.
Referenced by hoc_last_init().
Section* chk_access | ( | ) |
References ForAllSections, Section::prop, and Section::refcount.
Referenced by area(), LinearMechanism::create(), delete_section(), distance(), fclamp(), fstim(), fsyn(), hoc_construct_point(), hoc_ifsec(), hoc_ifseclist(), hoc_secname(), ismembrane(), issection(), loc_point_process(), MultiSplitControl::multisplit(), nernst(), nrn_vecsim_add(), nrniv_len_scale(), nrniv_sh_color(), nrnmpi_splitcell_connect(), nrnpy_cas(), parent_connection(), parent_node(), parent_section(), MechanismType::pp_begin(), psection(), ri(), secaccessname(), section_orientation(), section_owner(), sectionname(), segment_limits(), special_pnt_call(), this_node(), and this_section().
double chkarg | ( | ) |
delete_section | ( | ) |
References chk_access(), Prop::dparam, hoc_execerror(), hoc_top_level_data, Datum::i, Item, Datum::obj, Symbol::oboff, Section::prop, ret, sec_free(), Datum::sym, and Symbol::u.
References Prop::dparam, hoc_execerror(), nrn_mechanism_check(), NRNPOINTER, Prop::ob, Prop::param, Section::pnode, and Prop::type.
double* dprop | ( | ) |
else execerror | ( | "Accessing a deleted section" | , | |
(char *) | 0 | |||
) |
forall_section | ( | ) |
References buf, hoc_execute(), hoc_regexp_compile(), hoc_regexp_search(), hoc_returning, hoc_strpop(), hoc_thisobject, hocSEC, Item, hoc_Item::next, nrn_isecstack(), nrn_popsec(), nrn_pushsec(), nrn_secstack(), pc, relative, secname(), and section_list.
hoc_ifsec | ( | ) |
References buf, chk_access(), hoc_execute(), hoc_regexp_compile(), hoc_regexp_search(), hoc_returning, hoc_strpop(), pc, relative, and secname().
Referenced by debugzz(), and hoc_ifseclist().
hoc_level_pushsec | ( | Section* | sec | ) |
References nrn_pushsec().
Referenced by get_loc_point_process().
char* hoc_object_name | ( | ) |
Object** hoc_objgetarg | ( | ) |
double hoc_opasgn | ( | ) |
hoc_secname | ( | ) |
References buf, chk_access(), hoc_pushstr(), hoc_ret(), and secname().
char* hoc_section_pathname | ( | Section* | sec | ) |
References hoc_araystr(), hoc_object_pathname(), hoc_objectdata, hoc_warning(), Symbol::name, name, secname(), Sprintf, Symbol::sym, and Symbol::u.
Symbol* hoc_table_lookup | ( | ) |
if | ( | sec-> | prop | ) |
if | ( | ! | sec | ) |
Referenced by SaveState::allocnet(), bbs_done(), SaveState::checknet(), clear_point_process_struct(), debugzz(), hoc_get_symbol(), hoc_getsym(), hoc_object_component(), hoc_vsscanf(), ivoc_alias_lookup(), ivoc_free_alias(), ivoc_list_item(), SymDirectoryImpl::load_aliases(), nrn_relocate_old_points(), nrniv_recalc_ptrs(), KSChan::nsingle(), point_process_pointer(), and MechanismType::pp_next().
ismembrane | ( | ) |
References chk_access(), gargstr(), memb_func, Symbol::name, Prop::next, ret, Memb_func::sym, and Prop::type.
issection | ( | ) |
References chk_access(), gargstr(), hoc_regexp_compile(), hoc_regexp_search(), ret, and secname().
morph_alloc | ( | Prop * | p | ) |
References DEF_diam, diam_changed, MORPHOLOGY, nrn_prop_data_alloc(), and pd.
Referenced by hoc_last_init().
References Prop::dparam, insertsec(), Datum::itm, lappendsec(), Section::prop, and section_list.
Referenced by add_section(), and hoc_newobj1().
References assert, int, node, node_index(), setup_topology(), and tree_changed.
Referenced by LinearMechanism::create(), distance(), hoc_construct_point(), Imp::loc(), loc_point_process(), MultiSplitControl::multisplit(), node_ptr(), special_pnt_call(), and this_node().
References node_exact(), NODEAREA, nrn_area_ri(), Section::recalc_area_, and Node::sec.
Node* node_ptr | ( | ) |
Referenced by area(), clamp_prepare(), and ri().
References arc0at0(), assert, and Node::sec_node_index_.
Referenced by get_loc_point_process(), SymDirectoryImpl::load_section(), nrn_complain(), nrn_loc_point_process(), nrn_relocate_old_points(), and sec_and_position().
double nrn_connection_position | ( | ) |
Referenced by dashes(), and parent_connection().
double nrn_diameter | ( | Node* | nd | ) |
int nrn_get_mechtype | ( | char* | mechname | ) |
References assert, hoc_lookup(), hoc_table_lookup(), Symbol::subtype, Symbol::template, Symbol::type, and Symbol::u.
nrn_initcode | ( | ) |
References nrn_popsec(), section_object_seen, and state_discon_allowed_.
Referenced by initcode().
nrn_isecstack | ( | ) |
Referenced by call(), forall_section(), forall_sectionlist(), forcode(), hoc_iterator_stmt(), and shortfor().
Prop* nrn_mechanism | ( | ) |
Referenced by MechanismStandard::in(), nrn_diameter(), nrnpy_dprop(), and MechanismStandard::out().
Section* nrn_noerr_access | ( | ) |
References ForAllSections, Section::prop, and Section::refcount.
nrn_popsec | ( | ) |
References Prop::dparam, Symbol::name, Section::prop, Section::refcount, sec, and Datum::sym.
Referenced by forall_section(), forall_sectionlist(), SymDirectoryImpl::load_section(), nrn_initcode(), nrn_secstack(), oc_restore_cabcode(), pop_section(), and sec_access_pop().
nrn_pushsec | ( | Section * | sec | ) |
References fprintf(), hoc_execerror(), hoc_warning(), i, NSECSTACK, and secname().
Referenced by forall_section(), forall_sectionlist(), hoc_level_pushsec(), hoc_object_component(), SymDirectoryImpl::load_section(), nrniv_sh_push(), and nrnpy_pushsec().
double nrn_ra | ( | Section* | sec | ) |
References Prop::dparam, Section::prop, and Datum::val.
Referenced by nrn_area_ri(), and psection().
Object * nrn_sec2cell | ( | Section * | sec | ) |
References Prop::dparam, nrnpy_pysec_cell_p_, Datum::obj, and Section::prop.
Referenced by BBS::gid2cell(), BBS::gid2obj(), and section_owner().
References Prop::dparam, nrnpy_pysec_cell_equals_p_, Datum::obj, and Section::prop.
Section* nrn_sec_pop | ( | ) |
Referenced by hoc_ob_pointer(), hoc_object_asgn(), and hoc_object_eval().
nrn_secstack | ( | int | i | ) |
References hoc_warning(), nrn_popsec(), and secname().
Referenced by call(), forall_section(), forall_sectionlist(), forcode(), hoc_iterator_stmt(), and shortfor().
double nrn_section_orientation | ( | ) |
Referenced by dashes(), and section_orientation().
double* nrn_vext_pd | ( | ) |
References buf, Prop::dparam, hoc_object_name(), hoc_thisobject, nrn_mechanism(), NRNPOINTER, Prop::ob, Prop::param, Section::pnode, Sprintf, and Prop::type.
double* nrnpy_dprop | ( | ) |
References nrn_popsec(), and section_object_seen.
Referenced by OcJumpImpl::restore().
References section_object_seen.
Referenced by OcJumpImpl::begin().
parent_connection | ( | ) |
References chk_access(), nrn_connection_position(), and ret.
parent_node | ( | ) |
References chk_access(), hoc_execerror(), Section::parentnode, and ret.
parent_section | ( | ) |
pop_section | ( | ) |
Prop* prop_alloc | ( | ) |
push_section | ( | ) |
References ForAllSections, gargstr(), hoc_execerror(), hoc_is_str_arg(), Item, and secname().
ret | ( | 1. | 0 | ) |
sec_access_pop | ( | ) |
References assert, buf, nrn_arc_position(), and secname().
Referenced by nrnallpointmenu().
void sec_free | ( | ) |
Referenced by add_section(), and delete_section().
char* secaccessname | ( | ) |
References chk_access(), and secname().
Referenced by prexpr().
char* secname | ( | Section * | sec | ) |
References assert, hoc_araystr(), hoc_object_name(), hoc_top_level_data, Symbol::name, name, nrnpy_pysec_name_p_, PROP_PY_INDEX, Sprintf, Symbol::sym, and Symbol::u.
char* secname | ( | ) |
Referenced by dashes(), MultiSplitControl::exchange_setup(), for(), forall_section(), hoc_ifsec(), hoc_secname(), hoc_section_pathname(), issection(), MultiSplitControl::multisplit(), nrn_area_ri(), nrn_complain(), nrn_errno_check(), nrn_pushsec(), nrn_relocate_old_points(), nrn_secstack(), nrn_sectionref_steer(), nrnmpi_splitcell_connect(), MultiSplitControl::pexch(), MultiSplitControl::pmat(), MultiSplitControl::pmatf(), ReducedTree::pr_map(), print_clamp(), print_stim(), print_syn(), MultiSplitControl::prstruct(), psection(), push_section(), sec_and_position(), secaccessname(), sectionname(), and MultiSplitThread::v_setup().
section_exists | ( | ) |
References buf, chkarg(), gargstr(), hoc_is_double_arg(), hoc_objgetarg(), hoc_table_lookup(), hoc_top_level_data, hoc_total_array_data(), ifarg(), int, Item, Symbol::oboff, Section::prop, Symbol::public, ret, Symbol::sym, Symbol::type, and Symbol::u.
double section_length | ( | Section* | sec | ) |
Referenced by node_dist(), nrn_area_ri(), and psection().
void section_order | ( | ) |
References ForAllSections, Section::order, order, and section_count.
section_orientation | ( | ) |
References chk_access(), nrn_section_orientation(), and ret.
int section_owner | ( | ) |
References chk_access(), hoc_push_object(), hoc_ret(), and nrn_sec2cell().
sectionname | ( | ) |
References buf, chk_access(), hoc_assign_str(), hoc_pgargstr(), ret, and secname().
int segment_limits | ( | double * | pdx | ) |
this_node | ( | ) |
this_section | ( | ) |
double d |
Referenced by SaveState::allocnet(), SaveState::checknet(), distance(), MyMath::distance_to_line(), OcFile::file_chooser_popup(), Fprint(), Fscan(), hoc_asgn_obj_to_str(), hoc_atan2(), hoc_call_objfunc(), hoc_ob_pointer(), hoc_obj_look_inside_stack(), hoc_object_asgn(), hoc_object_component(), hoc_object_eval(), hoc_scan(), hoc_vsscanf(), isaac64_init(), MyMath::near_line(), nrniv_sh_nearest(), nrniv_sh_push(), nrnpy_hoc_pop(), StmtInfo::parse(), MultiSplitControl::pmat1(), PRintf(), SaveState::restoreacell(), SaveState::restorenet(), ropen(), SaveState::saveacell(), SaveState::savenet(), System(), topol_distance(), BBS::upkdouble(), wopen(), Xred(), and yylex().
diam_changed = 1 |
Referenced by hoc_execute1().
Object* hoc_thisobject |
Objectdata* hoc_top_level_data |
Referenced by register_mech().
short inode |
Referenced by SaveState::alloc(), connection_coef(), NonLinImpRep::dids(), NonLinImpRep::didv(), NonLinImpRep::dsds(), NonLinImpRep::dsdv(), MultiSplitControl::exchange_setup(), for(), ForAllSections(), hoc_construct_point(), KSChan::ion_consist(), SymDirectoryImpl::load_section(), Imp::loc(), MultiSplitControl::multisplit(), N_VMinQuotient_NrnSerialLD(), NonLinImpRep::NonLinImpRep(), nrn_area_ri(), nrn_lhs(), nrn_print_matrix(), nrn_rhs(), NonLinImpRep::ode(), ReducedTree::pr_map(), MultiSplitControl::prstruct(), SaveState::restore(), SaveState::save(), KSChan::state_consist(), LinearModelAddition::v2y(), and MultiSplitThread::v_setup().
Referenced by distance(), loc_point_process(), node_exact(), special_pnt_call(), and MultiSplitThread::v_setup().
int(* nrnpy_pysec_cell_equals_p_)(Section *, Object *) |
Referenced by nrn_sec2cell_equals(), and nrnpy_nrn().
Object*(* nrnpy_pysec_cell_p_)(Section *) |
Referenced by nrn_sec2cell(), and nrnpy_nrn().
char*(* nrnpy_pysec_name_p_)(Section *) |
Referenced by nrnpy_nrn(), and secname().
Referenced by argassign(), assign(), hoc_argrefasgn(), hoc_object_asgn(), nrn_update_ion_pointer(), and nrniv_recalc_ptrs().
double * pd |
Referenced by cab_alloc(), declarePtrList(), hoc_argref(), hoc_argrefarg(), hoc_argrefasgn(), hoc_object_asgn(), hoc_object_component(), morph_alloc(), nrn_partrans_update_ptrs(), nrn_prop_data_alloc(), nrniv_recalc_ptrs(), point_process_pointer(), HocDataPathImpl::search(), HocDataPathImpl::search_vectors(), and LinearMechanism::update_ptrs().
Referenced by bgp_dma_receive(), call_ob_proc(), class2oc(), NonLinImpRep::current(), NonLinImpRep::delta(), NonLinImpRep::dids(), NonLinImpRep::dsds(), NonLinImpRep::dsdv(), BBSImpl::execute(), HocCommand::func_call(), MechanismStandard::get(), SingleChan::get_rates(), hoc_edit_quit(), hoc_endtemplate(), hoc_execstr(), hoc_free_allobjects(), hoc_getsym(), hoc_install_var(), hoc_last_init(), hoc_Lw(), hoc_newobj(), hoc_newobj1(), hoc_object_name(), hoc_register_var(), hoc_spinit(), hoc_vsscanf(), init(), ion_charge(), ion_reg(), ion_register(), java2nrn_class(), SymDirectoryImpl::load_aliases(), SymDirectoryImpl::load_object(), BBSLocalServer::look_take(), MechanismStandard::MechanismStandard(), MechanismType::menu(), OcFile::mktemp(), MultiSplitControl::multisplit(), MechanismStandard::name(), ncyg_fprintf(), nernst(), NonLinImpRep::NonLinImpRep(), nonvint(), nrn_finitialize(), nrn_lhs(), nrn_modeltype(), nrn_rhs(), nrn_sec_ref(), nrn_sectionref_steer(), nrn_vecsim_add(), nrn_version(), nrnglobalmechmenu(), NrnHashIterate(), nrniv_sh_observe(), nrniv_sh_push(), nrniv_sh_rotate(), nrnpython_reg_real(), objectpath(), NonLinImpRep::ode(), SingleChanState::rate(), register_mech(), MultiSplitControl::rt_map_update(), SectionRef_reg(), MechanismStandard::set(), SingleChan::set_rates(), setneuronhome(), SaveState::ssi_def(), SingleChan::state_transition(), stralloc(), BBSImpl::subworld_worker_execute(), tstkchk_actual(), BBSLocal::upkpickle(), BBS::upkpickle(), BBSLocal::upkstr(), BBS::upkstr(), and yylex().
Referenced by hoc_object_component(), nrn_initcode(), oc_restore_cabcode(), and oc_save_cabcode().
Referenced by fcurrent(), nrn_finitialize(), nrn_initcode(), and state_discontinuity().
tree_changed = 1 |
double x |