gnetlist: Safer use of nettattrib-generated refdes.
[geda-gaf.git] / gnetlist / include / prototype.h
blob89a72de70f96a2caa90be202bbad29f8ef30125c
1 /* g_netlist.c */
2 void g_set_project_current(TOPLEVEL *pr_current);
3 SCM g_scm_c_get_uref(TOPLEVEL *toplevel, OBJECT *object);
4 SCM g_get_verbosity ();
5 SCM g_get_backend_arguments ();
6 SCM g_get_input_files();
7 SCM g_get_packages(SCM level);
8 SCM g_get_non_unique_packages(SCM level);
9 SCM g_get_pins(SCM uref);
10 SCM g_get_all_nets(SCM scm_level);
11 SCM g_get_all_unique_nets(SCM scm_level);
12 SCM g_get_all_connections(SCM scm_netname);
13 SCM g_get_nets(SCM scm_uref, SCM scm_pin);
14 SCM g_get_pins_nets(SCM scm_uref);
15 SCM g_get_all_package_attributes(SCM scm_uref, SCM scm_wanted_attrib);
16 SCM g_get_attribute_by_pinseq(SCM scm_uref, SCM scm_pinseq, SCM scm_wanted_attrib);
17 SCM g_get_attribute_by_pinnumber(SCM scm_uref, SCM scm_pin, SCM scm_wanted_attrib);
18 SCM g_get_toplevel_attribute(SCM scm_wanted_attrib);
19 SCM g_graphical_objs_in_net_with_attrib_get_attrib(SCM scm_netname, SCM scm_has_attribute, SCM scm_wanted_attribute);
20 /* g_rc.c */
21 SCM g_rc_gnetlist_version(SCM version);
22 SCM g_rc_hierarchy_uref_mangle(SCM mode);
23 SCM g_rc_hierarchy_netname_mangle(SCM mode);
24 SCM g_rc_hierarchy_netattrib_mangle(SCM mode);
25 SCM g_rc_hierarchy_netname_separator(SCM name);
26 SCM g_rc_hierarchy_netattrib_separator(SCM name);
27 SCM g_rc_hierarchy_uref_separator(SCM name);
28 SCM g_rc_hierarchy_netattrib_order(SCM mode);
29 SCM g_rc_hierarchy_netname_order(SCM mode);
30 SCM g_rc_hierarchy_uref_order(SCM mode);
31 /* g_register.c */
32 void g_register_funcs(void);
33 SCM g_quit(void);
34 /* globals.c */
35 /* gnetlist.c */
36 void gnetlist_quit(void);
37 void main_prog(void *closure, int argc, char *argv[]);
38 int main(int argc, char *argv[]);
39 /* i_vars.c */
40 void i_vars_set(TOPLEVEL *pr_current);
41 void i_vars_init_gnetlist_defaults (void);
42 /* parsecmd.c */
43 void usage(char *cmd);
44 GSList *create_input_files_list(int argi, int argc, char *argv[]);
45 int parse_commandline(int argc, char *argv[]);
46 /* s_cpinlist.c */
47 CPINLIST *s_cpinlist_return_tail(CPINLIST *head);
48 CPINLIST *s_cpinlist_return_head(CPINLIST *tail);
49 CPINLIST *s_cpinlist_add(CPINLIST *ptr);
50 void s_cpinlist_print(CPINLIST *ptr);
51 CPINLIST *s_cpinlist_search_pin(CPINLIST *ptr, char *pin_number);
52 /* s_hierarchy.c */
53 void s_hierarchy_traverse(TOPLEVEL *pr_current, OBJECT *o_current, NETLIST *netlist);
54 void s_hierarchy_post_process(TOPLEVEL *pr_current, NETLIST *head);
55 int s_hierarchy_setup_rename(TOPLEVEL *pr_current, NETLIST *head, char *uref, char *label, char *new_name);
56 void s_hierarchy_remove_urefconn(NETLIST *head, char *uref_disable);
57 void s_hierarchy_remove_compsite_all(NETLIST *head);
58 char *s_hierarchy_create_uref(TOPLEVEL *pr_current, char *basename, char *hierarchy_tag);
59 char *s_hierarchy_create_netname(TOPLEVEL *pr_current, char *basename, char *hierarchy_tag);
60 char *s_hierarchy_create_netattrib(TOPLEVEL *pr_current, char *basename, char *hierarchy_tag);
61 void s_hierarchy_remove_uref_mangling(TOPLEVEL *pr_current, NETLIST *head);
62 char *s_hierarchy_return_baseuref(TOPLEVEL *pr_current, char *uref);
63 int s_hierarchy_graphical_search(OBJECT* o_current, int count);
64 /* s_misc.c */
65 void verbose_print(char *string);
66 void verbose_done(void);
67 void verbose_reset_index(void);
68 /* s_net.c */
69 NET *s_net_return_tail(NET *head);
70 NET *s_net_return_head(NET *tail);
71 NET *s_net_add(NET *ptr);
72 void s_net_print(NET *ptr);
73 char *s_net_return_connected_string(TOPLEVEL *pr_current, OBJECT *object, char *hierarchy_tag);
74 int s_net_find(NET *net_head, NET *node);
75 char *s_net_name_search(TOPLEVEL *pr_current, NET *net_head);
76 char *s_net_name(TOPLEVEL *pr_current, NETLIST *netlist_head, NET *net_head, char *hierarchy_tag, int type);
77 /* s_netattrib.c */
78 gchar *s_netattrib_pinnum_get_connected_string (const gchar *pinnum) G_GNUC_WARN_UNUSED_RESULT;
79 const gchar *s_netattrib_connected_string_get_pinnum (const gchar *str);
80 char *s_netattrib_extract_netname(char *value);
81 void s_netattrib_create_pins(TOPLEVEL *pr_current, OBJECT *o_current, NETLIST *netlist, char *value, char *hierarchy_tag);
82 void s_netattrib_handle(TOPLEVEL *pr_current, OBJECT *o_current, NETLIST *netlist, char *hierarchy_tag);
83 char *s_netattrib_net_search(OBJECT *o_current, const gchar *wanted_pin);
84 char *s_netattrib_return_netname(TOPLEVEL *pr_current, OBJECT *o_current, char *pinnumber, char *hierarchy_tag);
85 /* s_netlist.c */
86 NETLIST *s_netlist_return_tail(NETLIST *head);
87 NETLIST *s_netlist_return_head(NETLIST *tail);
88 NETLIST *s_netlist_add(NETLIST *ptr);
89 void s_netlist_print(NETLIST *ptr);
90 void s_netlist_post_process(TOPLEVEL *pr_current, NETLIST *head);
91 void s_netlist_name_named_nets (TOPLEVEL *pr_current,
92 NETLIST *named_netlist,
93 NETLIST *unnamed_netlist);
94 char *s_netlist_netname_of_netid (TOPLEVEL *pr_current,
95 NETLIST *netlist_head,
96 int net_id);
97 /* s_rename.c */
98 void s_rename_init(void);
99 void s_rename_destroy_all(void);
100 void s_rename_next_set(void);
101 void s_rename_print(void);
102 int s_rename_search(char *src, char *dest, int quiet_flag);
103 void s_rename_add(char *src, char *dest);
104 void s_rename_all_lowlevel(NETLIST *netlist_head, char *src, char *dest);
105 void s_rename_all(TOPLEVEL *pr_current, NETLIST *netlist_head);
106 SCM g_get_renamed_nets(SCM scm_level);
107 /* s_traverse.c */
108 void s_traverse_init(void);
109 void s_traverse_start(TOPLEVEL *pr_current);
110 void s_traverse_sheet(TOPLEVEL *pr_current, const GList *obj_list, char *hierarchy_tag);
111 CPINLIST *s_traverse_component(TOPLEVEL *pr_current, OBJECT *component, char *hierarchy_tag);
112 NET *s_traverse_net(TOPLEVEL *pr_current, NET *nets, int starting, OBJECT *object, char *hierarchy_tag, int type);
113 /* vams_misc.c */
114 SCM vams_get_attribs_list(OBJECT *object);
115 SCM vams_get_package_attributes(SCM scm_uref);