Differences

This shows you the differences between two versions of the page.

Link to this comparison view

gnucap:user:details_of_geda_plugin [2012/08/22 08:46]
savy2020 Added : technical details of parsing
gnucap:user:details_of_geda_plugin [2015/12/11 15:39] (current)
Line 2: Line 2:
  
 =====Introduction===== =====Introduction=====
-The plugin for parsing and printing schematic files in the gEDA/gschem format is at <sup>[1]</sup> [[https://github.com/savvy2020/gnucap/tree/lang_gschem/|Github branch]]. \\ +The plugin for parsing and printing schematic files in the gEDA/gschem format is at <sup>[1]</sup> [[https://github.com/sksavant/gnucap/tree/lang_gschem/|Github branch]]. \\ 
-Get it by cloning the git repo : //git clone git@github.com:savvy2020/gnucap.git --branch lang_gschem//  +Get it by cloning the git repo : //git clone git@github.sksavant/gnucap.git --branch lang_gschem//  
-or get this zip file : [[https://github.com/savvy2020/gnucap/zipball/lang_gschem|zipfile]]+or get this zip file : [[https://github.com/sksavant/gnucap/zipball/lang_gschem|zipfile]]
 \\ \\ \\ \\
-If you already have latest snapshot of gnucap installed you just need to get the following files: '//src/lang_gschem.cc//', '//src/d_net.cc//', '//src/d_place.cc//'. Also some [[https://github.com/savvy2020/gnucap/compare/al...lang_gschem#diff-53|change]] is need in lang_verilog.cc to print verilog code correctly.+If you already have latest snapshot of gnucap installed you just need to get the following files: '//src/lang_gschem.cc//', '//src/d_net.cc//', '//src/d_place.cc//'. Also some [[https://github.com/sksavant/gnucap/compare/al...lang_gschem#diff-53|change]] is need in lang_verilog.cc to print verilog code correctly.
 Some examples are present in '//geda/examples/ //' Some examples are present in '//geda/examples/ //'
 \\ \\ \\ \\
Line 19: Line 19:
  
 =====How parsing works in lang_geda===== =====How parsing works in lang_geda=====
-When the command 'gschem' is given, [[http://savvy2020.github.com/gnucap/d0/d46/classanonymous__namespace_02lang__geda_8cc_03_1_1_c_m_d___g_s_c_h_e_m.html#a3a2cad7bedd3a820604937467e020369|CMD_GSCHEM::do_it]] is called. +When the command 'gschem' is given, [[http://sksavant.github.com/gnucap/d0/d46/classanonymous__namespace_02lang__geda_8cc_03_1_1_c_m_d___g_s_c_h_e_m.html#a3a2cad7bedd3a820604937467e020369|CMD_GSCHEM::do_it]] is called. 
-After setting the language to gschem,  [[http://savvy2020.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#a164f7c8baeadf6b7acfca754153a45b5|parse_top_item]] is called, which will call [[http://savvy2020.github.com/gnucap/d8/d92/class_l_a_n_g_u_a_g_e.html#a1ecab49c51a0f6d914170c04edb420a8|new__instance]] after getting a line from the command stream. \\ +After setting the language to gschem,  [[http://sksavant.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#a164f7c8baeadf6b7acfca754153a45b5|parse_top_item]] is called, which will call [[http://sksavant.github.com/gnucap/d8/d92/class_l_a_n_g_u_a_g_e.html#a1ecab49c51a0f6d914170c04edb420a8|new__instance]] after getting a line from the command stream. \\ 
-Now depending on the type of the line parsed, which is found from [[http://savvy2020.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#af6b409e3eb2cf7d30080fbb989e0989d|find_type_in_string]], corresponding parse_.. function is called. +Now depending on the type of the line parsed, which is found from [[http://sksavant.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#af6b409e3eb2cf7d30080fbb989e0989d|find_type_in_string]], corresponding parse_.. function is called. 
-If a //command// or //dev_comment// is got, [[http://savvy2020.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#a6c16c20ae8bb07669183e0a3a6c87da8|parse_command]] or [[http://savvy2020.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#a23093bf34decc6675ef6b917829c491c|parse_comment]] is called respectively. \\ \\ +If a //command// or //dev_comment// is got, [[http://sksavant.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#a6c16c20ae8bb07669183e0a3a6c87da8|parse_command]] or [[http://sksavant.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#a23093bf34decc6675ef6b917829c491c|parse_comment]] is called respectively. \\ \\ 
-If component is found, then [[http://savvy2020.github.com/gnucap/d2/d22/classanonymous__namespace_02lang__geda_8cc_03_1_1_c_m_d___c.html#a7c6d49a0e81fde05d6f402ac895596f5|CMD_C::do_it]] is called, which+If component is found, then [[http://sksavant.github.com/gnucap/d2/d22/classanonymous__namespace_02lang__geda_8cc_03_1_1_c_m_d___c.html#a7c6d49a0e81fde05d6f402ac895596f5|CMD_C::do_it]] is called, which
   * creates a new empty placeholder model (MODEL_SUBCKT)   * creates a new empty placeholder model (MODEL_SUBCKT)
-  * calls [[http://savvy2020.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#abb190d7c72473be3e72c16323673e73e|parse_componmod]] which will+  * calls [[http://sksavant.github.com/gnucap/d8/df9/classanonymous__namespace_02lang__geda_8cc_03_1_1_l_a_n_g___g_e_d_a.html#abb190d7c72473be3e72c16323673e73e|parse_componmod]] which will
     * get the symbol file name     * get the symbol file name
     * parse the symbol file and set the ports by name     * parse the symbol file and set the ports by name
gnucap/user/details_of_geda_plugin.txt · Last modified: 2015/12/11 15:39 (external edit)
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Run by Debian Driven by DokuWiki