NEURON
cabcode.h File Reference

Go to the source code of this file.

Functions

double cable_prop_eval (Symbol *sym)
 
double * cable_prop_eval_pointer (Symbol *sym)
 
void oc_save_cabcode (int *a1, int *a2)
 
void oc_restore_cabcode (int *a1, int *a2)
 
void nrn_initcode ()
 
void nrn_pushsec (Section *)
 
Objectnrn_sec2cell (Section *sec)
 
int nrn_sec2cell_equals (Section *sec, Object *obj)
 
void new_sections (Object *ob, Symbol *sym, hoc_Item **pitm, int size)
 
Sectionsection_new (Symbol *sym)
 Creates a new section and registers with the global section list. More...
 
int arc0at0 (Section *)
 
double nrn_ra (Section *)
 
void cab_alloc (Prop *)
 
void morph_alloc (Prop *p)
 
double nrn_diameter (Node *nd)
 
double section_length (Section *sec)
 
Sectionchk_access ()
 
Sectionnrn_noerr_access ()
 return 0 if no accessed section More...
 
void nrn_disconnect (Section *sec)
 
Sectionnrn_sec_pop ()
 
void ob_sec_access_push (hoc_Item *qsec)
 
void mech_insert1 (Section *sec, int type)
 
void mech_uninsert1 (Section *sec, Symbol *s)
 
void nrn_rangeconst (Section *, Symbol *, neuron::container::data_handle< double > value, int op)
 
Propnrn_mechanism (int type, Node *nd)
 
Propnrn_mechanism_check (int type, Section *sec, int inode)
 returns prop given mech type, section, and inode error if mech not at this position More...
 
Prophoc_getdata_range (int type)
 
int nrn_exists (Symbol *s, Node *node)
 
neuron::container::data_handle< double > nrn_rangepointer (Section *sec, Symbol *s, double d)
 
neuron::container::generic_data_handle nrnpy_rangepointer (Section *, Symbol *, double, int *, int)
 return nullptr if failure instead of hoc_execerror and return pointer to the 0 element if an array More...
 
int node_index (Section *sec, double x)
 returns nearest index to x More...
 
int node_index_exact (Section *sec, double x)
 return -1 if x at connection end, nnode-1 if at other end More...
 
void nrn_change_nseg (Section *sec, int n)
 
void cable_prop_assign (Symbol *sym, double *pd, int op)
 
double nrn_connection_position (Section *)
 
double nrn_section_orientation (Section *)
 
int nrn_at_beginning (Section *sec)
 
Sectionnrn_trueparent (Section *)
 
void nrn_parent_info (Section *s)
 
void setup_topology ()
 
const char * secname (Section *sec)
 name of section (for use in error messages) More...
 
char * hoc_section_pathname (Section *sec)
 
double nrn_arc_position (Section *sec, Node *node)
 
const char * sec_and_position (Section *sec, Node *nd)
 
int segment_limits (double *)
 
Nodenode_exact (Section *sec, double x)
 like node_index but give proper node when x is 0 or 1 as well as in between More...
 
Nodenode_ptr (Section *sec, double x, double *parea)
 
neuron::container::data_handle< double > dprop (Symbol *s, int indx, Section *sec, short inode)
 returns location of property symbol More...
 
neuron::container::generic_data_handle nrnpy_dprop (Symbol *s, int indx, Section *sec, short inode, int *err)
 returns location of property symbol, return nullptr instead of hoc_execerror More...
 
int has_membrane (char *mechanism_name, Section *sec)
 
void hoc_level_pushsec (Section *sec)
 turn off section stack fixing (in case of return, continue, break in a section statement) between explicit user level push_section, etc and pop_section More...
 
Sectionnrn_section_exists (char *name, int indx, Object *cell)
 
double * nrn_vext_pd (Symbol *s, int indx, Node *nd)
 

Function Documentation

◆ arc0at0()

int arc0at0 ( Section sec)

Definition at line 413 of file cabcode.cpp.

◆ cab_alloc()

void cab_alloc ( Prop p)

Definition at line 421 of file cabcode.cpp.

◆ cable_prop_assign()

void cable_prop_assign ( Symbol sym,
double *  pd,
int  op 
)

Definition at line 1512 of file cabcode.cpp.

◆ cable_prop_eval()

double cable_prop_eval ( Symbol sym)

Definition at line 1447 of file cabcode.cpp.

◆ cable_prop_eval_pointer()

double* cable_prop_eval_pointer ( Symbol sym)

Definition at line 1461 of file cabcode.cpp.

◆ chk_access()

Section* chk_access ( )

Definition at line 449 of file cabcode.cpp.

◆ dprop()

neuron::container::data_handle<double> dprop ( Symbol s,
int  indx,
Section sec,
short  inode 
)

returns location of property symbol

Definition at line 1922 of file cabcode.cpp.

◆ has_membrane()

int has_membrane ( char *  mechanism_name,
Section sec 
)

Definition at line 2061 of file cabcode.cpp.

◆ hoc_getdata_range()

Prop* hoc_getdata_range ( int  type)

Definition at line 1065 of file cabcode.cpp.

◆ hoc_level_pushsec()

void hoc_level_pushsec ( Section sec)

turn off section stack fixing (in case of return, continue, break in a section statement) between explicit user level push_section, etc and pop_section

Definition at line 2187 of file cabcode.cpp.

◆ hoc_section_pathname()

char* hoc_section_pathname ( Section sec)

Definition at line 1728 of file cabcode.cpp.

◆ mech_insert1()

void mech_insert1 ( Section sec,
int  type 
)

Definition at line 852 of file cabcode.cpp.

◆ mech_uninsert1()

void mech_uninsert1 ( Section sec,
Symbol s 
)

Definition at line 898 of file cabcode.cpp.

◆ morph_alloc()

void morph_alloc ( Prop p)

Definition at line 438 of file cabcode.cpp.

◆ new_sections()

void new_sections ( Object ob,
Symbol sym,
hoc_Item **  pitm,
int  size 
)

◆ node_exact()

Node* node_exact ( Section sec,
double  x 
)

like node_index but give proper node when x is 0 or 1 as well as in between

Definition at line 1800 of file cabcode.cpp.

◆ node_index()

int node_index ( Section sec,
double  x 
)

returns nearest index to x

Definition at line 1406 of file cabcode.cpp.

◆ node_index_exact()

int node_index_exact ( Section sec,
double  x 
)

return -1 if x at connection end, nnode-1 if at other end

Definition at line 1426 of file cabcode.cpp.

◆ node_ptr()

Node* node_ptr ( Section sec,
double  x,
double *  parea 
)

Definition at line 1828 of file cabcode.cpp.

◆ nrn_arc_position()

double nrn_arc_position ( Section sec,
Node node 
)

Definition at line 1755 of file cabcode.cpp.

◆ nrn_at_beginning()

int nrn_at_beginning ( Section sec)

Definition at line 1560 of file cabcode.cpp.

◆ nrn_change_nseg()

void nrn_change_nseg ( Section sec,
int  n 
)

Definition at line 1482 of file cabcode.cpp.

◆ nrn_connection_position()

double nrn_connection_position ( Section sec)

Definition at line 1552 of file cabcode.cpp.

◆ nrn_diameter()

double nrn_diameter ( Node nd)

Definition at line 444 of file cabcode.cpp.

◆ nrn_disconnect()

void nrn_disconnect ( Section sec)

Definition at line 593 of file cabcode.cpp.

◆ nrn_exists()

int nrn_exists ( Symbol s,
Node node 
)

Definition at line 1258 of file cabcode.cpp.

◆ nrn_initcode()

void nrn_initcode ( )

Definition at line 107 of file cabcode.cpp.

◆ nrn_mechanism()

Prop* nrn_mechanism ( int  type,
Node nd 
)

Definition at line 1038 of file cabcode.cpp.

◆ nrn_mechanism_check()

Prop* nrn_mechanism_check ( int  type,
Section sec,
int  inode 
)

returns prop given mech type, section, and inode error if mech not at this position

Definition at line 1050 of file cabcode.cpp.

◆ nrn_noerr_access()

Section* nrn_noerr_access ( )

return 0 if no accessed section

Definition at line 474 of file cabcode.cpp.

◆ nrn_parent_info()

void nrn_parent_info ( Section s)

Definition at line 1589 of file cabcode.cpp.

◆ nrn_pushsec()

void nrn_pushsec ( Section sec)

Definition at line 130 of file cabcode.cpp.

◆ nrn_ra()

double nrn_ra ( Section sec)

Definition at line 417 of file cabcode.cpp.

◆ nrn_rangeconst()

void nrn_rangeconst ( Section sec,
Symbol s,
neuron::container::data_handle< double >  value,
int  op 
)

Definition at line 935 of file cabcode.cpp.

◆ nrn_rangepointer()

neuron::container::data_handle<double> nrn_rangepointer ( Section sec,
Symbol s,
double  d 
)

Definition at line 1274 of file cabcode.cpp.

◆ nrn_sec2cell()

Object* nrn_sec2cell ( Section sec)

Definition at line 252 of file cabcode.cpp.

◆ nrn_sec2cell_equals()

int nrn_sec2cell_equals ( Section sec,
Object obj 
)

Definition at line 267 of file cabcode.cpp.

◆ nrn_sec_pop()

Section* nrn_sec_pop ( )

Definition at line 753 of file cabcode.cpp.

◆ nrn_section_exists()

Section* nrn_section_exists ( char *  name,
int  indx,
Object cell 
)

Definition at line 2218 of file cabcode.cpp.

◆ nrn_section_orientation()

double nrn_section_orientation ( Section sec)

Definition at line 1556 of file cabcode.cpp.

◆ nrn_trueparent()

Section* nrn_trueparent ( Section sec)

Definition at line 1577 of file cabcode.cpp.

◆ nrn_vext_pd()

double* nrn_vext_pd ( Symbol s,
int  indx,
Node nd 
)

Definition at line 1860 of file cabcode.cpp.

◆ nrnpy_dprop()

neuron::container::generic_data_handle nrnpy_dprop ( Symbol s,
int  indx,
Section sec,
short  inode,
int *  err 
)

returns location of property symbol, return nullptr instead of hoc_execerror

Definition at line 1933 of file cabcode.cpp.

◆ nrnpy_rangepointer()

neuron::container::generic_data_handle nrnpy_rangepointer ( Section sec,
Symbol s,
double  d,
int *  err,
int  idx 
)

return nullptr if failure instead of hoc_execerror and return pointer to the 0 element if an array

Definition at line 1306 of file cabcode.cpp.

◆ ob_sec_access_push()

void ob_sec_access_push ( hoc_Item qsec)

Definition at line 827 of file cabcode.cpp.

◆ oc_restore_cabcode()

void oc_restore_cabcode ( int *  a1,
int *  a2 
)

Definition at line 122 of file cabcode.cpp.

◆ oc_save_cabcode()

void oc_save_cabcode ( int *  a1,
int *  a2 
)

Definition at line 117 of file cabcode.cpp.

◆ sec_and_position()

const char* sec_and_position ( Section sec,
Node nd 
)

Definition at line 1773 of file cabcode.cpp.

◆ secname()

const char* secname ( Section sec)

name of section (for use in error messages)

Definition at line 1674 of file cabcode.cpp.

◆ section_length()

double section_length ( Section sec)

Definition at line 401 of file cabcode.cpp.

◆ section_new()

Section* section_new ( Symbol sym)

Creates a new section and registers with the global section list.

Definition at line 323 of file cabcode.cpp.

◆ segment_limits()

int segment_limits ( double *  pdx)

Definition at line 1784 of file cabcode.cpp.

◆ setup_topology()

void setup_topology ( )

Definition at line 1635 of file cabcode.cpp.