#include <string.h>
#include <stdio.h>
#include "hocdec.h"
Go to the source code of this file.
Classes | |
class | Oc2IV |
class | ParseTopLevel |
Defines | |
#define | CChar const char |
Functions | |
int | hoc_obj_run (const char *, Object *) |
int | hoc_argtype (int) |
boolean | hoc_is_double_arg (int) |
boolean | hoc_is_pdouble_arg (int) |
boolean | hoc_is_str_arg (int) |
boolean | hoc_is_object_arg (int) |
char * | gargstr (int) |
char ** | hoc_pgargstr (int) |
double * | getarg (int) |
double * | hoc_pgetarg (int) |
Object ** | hoc_objgetarg (int) |
Object * | hoc_name2obj (const char *name, int index) |
int | ifarg (int) |
char ** | hoc_temp_charptr () |
void | hoc_assign_str (char **pstr, const char *buf) |
double | chkarg (int, double low, double high) |
double | hoc_call_func (Symbol *, int narg) |
double | hoc_call_objfunc (Symbol *, int narg, Object *) |
void | hoc_ret () |
void | ret (double) |
void | hoc_pushx (double) |
void | hoc_pushstr (char **) |
void | hoc_pushobj (Object **) |
void | hoc_push_object (Object *) |
void | hoc_pushpx (double *) |
double | hoc_xpop () |
double * | hoc_pxpop () |
void | hoc_execerror (const char *, const char *) |
void | hoc_warning (const char *, const char *) |
double * | hoc_val_pointer (const char *) |
Symbol * | hoc_lookup (const char *) |
Symbol * | hoc_table_lookup (const char *, Symlist *) |
Symbol * | hoc_install (const char *, int, double, Symlist **) |
int | hoc_total_array_data (Symbol *, Objectdata *) |
char * | hoc_araystr (Symbol *, int, Objectdata *) |
char * | hoc_object_name (Object *) |
char * | hoc_object_pathname (Object *) |
const char * | expand_env_var (const char *) |
void | check_obj_type (Object *, const char *) |
boolean | is_obj_type (Object *, const char *) |
void | hoc_obj_ref (Object *) |
void | hoc_obj_unref (Object *) |
void | hoc_dec_refcount (Object **) |
Object ** | hoc_temp_objvar (Symbol *template_symbol, void *cpp_object) |
Object ** | hoc_temp_objptr (Object *) |
void | hoc_new_object_asgn (Object **obp, Symbol *template_symbol, void *cpp_object) |
void | hoc_audit_command (const char *) |
HocSymExtension * | hoc_var_extra (const char *) |
double | check_domain_limits (float *, double) |
Object * | hoc_obj_get (int i) |
void | hoc_obj_set (int i, Object *) |
void | nrn_hoc_lock () |
void | nrn_hoc_unlock () |
void | hoc_ivpanel (CChar *, boolean h=false) |
void | hoc_ivpanelmap (int scroll=-1) |
void | hoc_ivbutton (CChar *name, CChar *action, Object *pyact=0) |
void | hoc_ivradiobutton (CChar *name, CChar *action, boolean activate=false, Object *pyact=0) |
void | hoc_ivmenu (CChar *, boolean add2menubar=false) |
void | hoc_ivvarmenu (CChar *, CChar *, boolean add2menubar=false, Object *pyvar=nil) |
void | hoc_ivvalue (CChar *name, CChar *variable, boolean deflt=false, Object *pyvar=0) |
void | hoc_ivfixedvalue (CChar *name, CChar *variable, boolean deflt=false, boolean usepointer=false) |
void | hoc_ivvalue_keep_updated (CChar *name, CChar *variable, Object *pyvar=0) |
void | hoc_ivpvalue (CChar *name, double *, boolean deflt=false, HocSymExtension *extra=nil) |
void | hoc_ivvaluerun (CChar *name, CChar *variable, CChar *action, boolean deflt=false, boolean canrun=false, boolean usepointer=false, Object *pyvar=0, Object *pyact=0) |
void | hoc_ivpvaluerun (CChar *name, double *, CChar *action, boolean deflt=false, boolean canrun=false, HocSymExtension *extra=nil) |
void | hoc_ivlabel (CChar *) |
void | hoc_ivvarlabel (char **, Object *pyvar=0) |
void | hoc_ivstatebutton (double *, CChar *name, CChar *action, int style, Object *pyvar=0, Object *pyact=0) |
void | hoc_ivslider (double *, float low=0, float high=100, float resolution=1, int steps=10, const char *send_cmd=nil, boolean vert=false, boolean slow=false, Object *pyvar=0, Object *pyact=0) |
double * | object_pval (Symbol *sym, Objectdata *od) |
char * | object_str (Symbol *sym, Objectdata *od) |
char ** | object_pstr (Symbol *sym, Objectdata *od) |
Object ** | object_pobj (Symbol *sym, Objectdata *od) |
hoc_Item ** | object_psecitm (Symbol *sym, Objectdata *od) |
Variables | |
double | hoc_ac_ |
double | hoc_epsilon |
Objectdata * | hoc_objectdata |
#define CChar const char |
double check_domain_limits | ( | float * | , | |
double | ||||
) |
void check_obj_type | ( | Object * | , | |
const char * | ||||
) |
double chkarg | ( | int | , | |
double | low, | |||
double | high | |||
) |
const char* expand_env_var | ( | const char * | ) |
char* gargstr | ( | int | ) |
References hoc_pgargstr().
Referenced by batch_run(), fit_praxis(), hoc_allobjects(), hoc_Chdir(), hoc_exec_cmd(), hoc_Execerror(), hoc_execute1(), hoc_fmenu(), hoc_Graph(), hoc_load_file(), hoc_Lw(), hoc_name_declared(), hoc_nrn_load_dll(), hoc_Sred(), hoc_sscanf(), hoc_stdout(), hoc_Strcmp(), hoc_Symbol_limits(), hoc_Symbol_units(), hoc_vsscanf(), hoc_win_exec(), implementTable(), ion_charge(), ion_register(), ismembrane(), issection(), ivoc_gr_begin_line(), ivoc_gr_gif(), ivoc_gr_label(), ivoc_gr_mark(), ivoc_gr_menu_remove(), ivoc_gr_menu_tool(), make_mechanism(), make_pointprocess(), nernst(), neuron2nemo(), nrn_vecsim_add(), nrnglobalmechmenu(), nrnpython_real(), push_section(), ropen(), section_exists(), sprint(), System(), wopen(), xopen(), and Xred().
double* getarg | ( | int | ) |
References Frame::argn, execerror, Datum::i, Symbol::name, Frame::nargs, Frame::sp, and tstkchk.
References Frame::argn, execerror, Datum::i, Symbol::name, Frame::nargs, and Frame::sp.
Referenced by hoc_is_double_arg(), hoc_is_object_arg(), hoc_is_pdouble_arg(), hoc_is_str_arg(), hoc_is_tempobj_arg(), nrnpointmenu(), and sprint().
void hoc_assign_str | ( | char ** | pstr, | |
const char * | buf | |||
) |
void hoc_audit_command | ( | const char * | ) |
References hoc_call(), hoc_execute(), hoc_pc, hoc_xpop(), Inst::i, Inst::in, Inst::pf, STOP, Inst::sym, and xpop.
Referenced by hoc_call_objfunc().
References d, hoc_call_func(), hoc_objectdata, hoc_objectdata_restore(), hoc_objectdata_save(), hoc_thisobject, and hoc_top_level_data.
Referenced by BBSImpl::execute_helper(), HocCommand::func_call(), and BBSImpl::subworld_worker_execute().
void hoc_dec_refcount | ( | Object ** | ) |
References assert, and hoc_obj_unref().
Referenced by hoc_free_allobjects(), hoc_free_symspace(), hoc_new_object_asgn(), hoc_newobj(), hoc_obj_set(), hoc_object_asgn(), hoc_objvardecl(), OcList::ounref(), MechanismType::point_process(), and SectionList::~SectionList().
void hoc_execerror | ( | const char * | , | |
const char * | ||||
) |
References hoc_argtype().
Referenced by LinearMechanism::create(), hoc_load_file(), hoc_spec_table(), hoc_Symbol_units(), loc_point_process(), nrn_vecsim_add(), and section_exists().
References hoc_argtype(), OBJECTTMP, and type.
Referenced by LinearMechanism::create(), fit_praxis(), hoc_execute1(), hoc_spec_table(), ivoc_gr_menu_tool(), nrn_vecsim_add(), nrnmpi_target_var(), and sprint().
References hoc_argtype(), and STRING.
Referenced by hoc_allobjects(), hoc_Symbol_limits(), hoc_Symbol_units(), hoc_vsscanf(), ivoc_gr_begin_line(), ivoc_gr_mark(), nernst(), nrn_vecsim_add(), and push_section().
void hoc_ivbutton | ( | CChar * | name, | |
CChar * | action, | |||
Object * | pyact = 0 | |||
) |
Referenced by nrnallpointmenu(), and nrnglobalmechmenu().
void hoc_ivfixedvalue | ( | CChar * | name, | |
CChar * | variable, | |||
boolean | deflt = false , |
|||
boolean | usepointer = false | |||
) |
void hoc_ivlabel | ( | CChar * | ) |
Referenced by MechanismStandard::panel().
Referenced by nrnallpointmenu(), and nrnglobalmechmenu().
Referenced by nrnallpointmenu(), nrnglobalmechmenu(), and MechanismStandard::panel().
Referenced by nrnallpointmenu(), nrnglobalmechmenu(), and MechanismStandard::panel().
void hoc_ivpvalue | ( | CChar * | name, | |
double * | , | |||
boolean | deflt = false , |
|||
HocSymExtension * | extra = nil | |||
) |
Referenced by nrnglobalmechmenu().
void hoc_ivpvaluerun | ( | CChar * | name, | |
double * | , | |||
CChar * | action, | |||
boolean | deflt = false , |
|||
boolean | canrun = false , |
|||
HocSymExtension * | extra = nil | |||
) |
Referenced by MechanismStandard::panel().
void hoc_ivradiobutton | ( | CChar * | name, | |
CChar * | action, | |||
boolean | activate = false , |
|||
Object * | pyact = 0 | |||
) |
void hoc_ivslider | ( | double * | , | |
float | low = 0 , |
|||
float | high = 100 , |
|||
float | resolution = 1 , |
|||
int | steps = 10 , |
|||
const char * | send_cmd = nil , |
|||
boolean | vert = false , |
|||
boolean | slow = false , |
|||
Object * | pyvar = 0 , |
|||
Object * | pyact = 0 | |||
) |
void hoc_ivstatebutton | ( | double * | , | |
CChar * | name, | |||
CChar * | action, | |||
int | style, | |||
Object * | pyvar = 0 , |
|||
Object * | pyact = 0 | |||
) |
Referenced by nrnglobalmechmenu().
void hoc_ivvalue_keep_updated | ( | CChar * | name, | |
CChar * | variable, | |||
Object * | pyvar = 0 | |||
) |
void hoc_ivvaluerun | ( | CChar * | name, | |
CChar * | variable, | |||
CChar * | action, | |||
boolean | deflt = false , |
|||
boolean | canrun = false , |
|||
boolean | usepointer = false , |
|||
Object * | pyvar = 0 , |
|||
Object * | pyact = 0 | |||
) |
void hoc_ivvarlabel | ( | char ** | , | |
Object * | pyvar = 0 | |||
) |
Symbol* hoc_lookup | ( | const char * | ) |
Object* hoc_name2obj | ( | const char * | name, | |
int | index | |||
) |
References hoc_dec_refcount(), hoc_new_object(), and hoc_obj_ref().
Object* hoc_obj_get | ( | int | i | ) |
References hoc_objectdata, Symbol::oboff, and Symbol::u.
void hoc_obj_ref | ( | Object * | ) |
int hoc_obj_run | ( | const char * | , | |
Object * | ||||
) |
References hoc_dec_refcount(), hoc_obj_ref(), hoc_objectdata, Symbol::oboff, and Symbol::u.
void hoc_obj_unref | ( | Object * | ) |
References call_ob_proc(), CPLUSOBJECT, hoc_free_object(), hoc_obj_disconnect(), hoc_object_name(), hoc_template_notify(), hoc_thisobject, i, ivoc_free_alias(), JAVAOBJECT, and pushx.
Referenced by clear_point_process_struct(), fit_praxis(), hoc_dec_refcount(), hoc_free_symspace(), hoc_newobj(), hoc_stkobj_unref(), hoc_tobj_unref(), hoc_unref_defer(), nrn_thread_partition(), nrn_threads_create(), ret(), SingleChan::setrand(), single_prop_free(), HocCommand::~HocCommand(), KSChanFunction::~KSChanFunction(), and SingleChan::~SingleChan().
char* hoc_object_pathname | ( | Object * | ) |
References hoc_object_name(), hoc_warning(), and objectpath.
Referenced by hoc_section_pathname().
Object** hoc_objgetarg | ( | int | ) |
char** hoc_pgargstr | ( | int | ) |
References Frame::argn, Symbol::cstr, execerror, Symbol::name, Frame::nargs, OPSTR, Frame::sp, STRING, SYMBOL, Symbol::type, type, and Symbol::u.
Referenced by gargstr(), hoc_Getstr(), hoc_Sprint(), hoc_Sred(), hoc_stringarg(), hoc_vsscanf(), machine_name(), sectionname(), and System().
double* hoc_pgetarg | ( | int | ) |
References Frame::argn, execerror, Datum::i, Symbol::name, Frame::nargs, Frame::sp, and tstkchk.
void hoc_push_object | ( | Object * | ) |
References hoc_obj_ref(), OBJECTTMP, and STACKCHK.
Referenced by hoc_newobj(), hoc_object_component(), hoc_object_pushed(), hoc_push_current_object(), hoc_pushobj(), hocobjret(), and section_owner().
void hoc_pushobj | ( | Object ** | ) |
References hoc_push_object(), STACKCHK, and TOBJ_POOL_SIZE.
Referenced by call_ob_proc(), dashes(), BBSImpl::execute_helper(), hoc_autoobject(), hoc_constobject(), hoc_newobj(), hoc_newobj_arg(), hoc_object_asgn(), hoc_object_component(), hoc_objectarg(), hoc_objectvar(), and BBSImpl::subworld_worker_execute().
void hoc_pushpx | ( | double * | ) |
References STACKCHK.
Referenced by hoc_argrefarg(), hoc_evalpointer(), hoc_ob_pointer(), hoc_object_component(), and steer_point_process().
void hoc_pushstr | ( | char ** | ) |
References STACKCHK, and STRING.
Referenced by call_ob_proc(), BBSImpl::execute_helper(), hoc_getcwd(), hoc_neuronhome(), hoc_nrnversion(), hoc_object_asgn(), hoc_object_component(), hoc_push_string(), hoc_secname(), hoc_stringarg(), hoc_Symbol_units(), and BBSImpl::subworld_worker_execute().
void hoc_pushx | ( | double | ) |
double* hoc_pxpop | ( | ) |
References execerror, Datum::i, and tstkchk.
Referenced by connect_point_process_pointer(), hoc_object_asgn(), hoc_object_component(), hoc_object_eval(), and nrnpy_hoc_pop().
void hoc_ret | ( | ) |
char** hoc_temp_charptr | ( | ) |
Referenced by hoc_Symbol_units().
Object** hoc_temp_objptr | ( | Object * | ) |
References hoc_new_object(), and hoc_temp_objptr().
Referenced by BBS::gid_connect(), and IvocVect::temp_objvar().
double* hoc_val_pointer | ( | const char * | ) |
HocSymExtension* hoc_var_extra | ( | const char * | ) |
void hoc_warning | ( | const char * | , | |
const char * | ||||
) |
Referenced by call(), call_ob_proc(), connection_coef(), errcheck(), HocDataPathImpl::found_v(), hoc_audit_from_emacs(), hoc_audit_from_hoc_main1(), hoc_free_symspace(), hoc_help(), hoc_Load_file(), hoc_nrn_load_dll(), hoc_object_pathname(), hoc_parallel_begin(), hoc_saveaudit(), hoc_section_pathname(), nonvint(), nrn_finitialize(), nrn_lhs(), nrn_pushsec(), nrn_rhs(), nrn_secstack(), nrnmpi_spike_compress(), objectpath(), and KSChan::set_single().
double hoc_xpop | ( | ) |
boolean is_obj_type | ( | Object * | , | |
const char * | ||||
) |
void nrn_hoc_lock | ( | ) |
References nrn_inthread_.
void nrn_hoc_unlock | ( | ) |
Object** object_pobj | ( | Symbol * | sym, | |
Objectdata * | od | |||
) | [inline] |
References Symbol::oboff, and Symbol::u.
Referenced by HocDataPathImpl::search(), and SymDirectory::SymDirectory().
References Symbol::oboff, and Symbol::u.
Referenced by HocDataPathImpl::search(), and SymDirectory::SymDirectory().
char** object_pstr | ( | Symbol * | sym, | |
Objectdata * | od | |||
) | [inline] |
References Symbol::oboff, and Symbol::u.
Referenced by HocDataPathImpl::search().
double* object_pval | ( | Symbol * | sym, | |
Objectdata * | od | |||
) | [inline] |
References Symbol::oboff, and Symbol::u.
Referenced by HocDataPathImpl::search().
char* object_str | ( | Symbol * | sym, | |
Objectdata * | od | |||
) | [inline] |
References Symbol::oboff, and Symbol::u.
void ret | ( | double | ) |
double hoc_ac_ |
double hoc_epsilon |
Objectdata* hoc_objectdata |