[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-cvs: CVS update: g_netlist.c



  User: sdb     
  Date: 07/04/29 08:04:20

  Modified:    .        g_netlist.c
  Log:
  Fix spice-sdb to use pinseq to emit pins on slotted parts.
  
  
  
  
  Revision  Changes    Path
  1.45      +23 -6     eda/geda/gaf/gnetlist/src/g_netlist.c
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: g_netlist.c
  ===================================================================
  RCS file: /home/cvspsrv/cvsroot/eda/geda/gaf/gnetlist/src/g_netlist.c,v
  retrieving revision 1.44
  retrieving revision 1.45
  diff -u -b -r1.44 -r1.45
  --- g_netlist.c	16 Jul 2006 02:11:31 -0000	1.44
  +++ g_netlist.c	29 Apr 2007 12:04:19 -0000	1.45
  @@ -565,7 +565,10 @@
     pinseq_attrib = g_strconcat ("pinseq=", pinseq, NULL);
   
   #if DEBUG
  -  printf("wanted_pin_seq: %s\n", pinseq);
  +  printf("gnetlist:g_netlist.c:g_get_attribute_by_pinseq -- \n");
  +  printf("  wanted uref = %s\n", uref);
  +  printf("  wanted_pin_seq = %s\n", pinseq);
  +  printf("  wanted_attrib = %s\n", wanted_attrib);
   #endif
   
     /* here is where you make it multi page aware */
  @@ -579,6 +582,8 @@
         if (strcmp(nl_current->component_uref, uref) == 0) {
   
           /* first search outside the symbol */
  +	/* This checks for attributes attached to this component */
  +        /* at schematic level */
           o_text_object = o_attrib_search_string_single(nl_current->object_ptr,
                                                         pinseq_attrib);
           if (o_text_object && o_text_object->attached_to) {
  @@ -593,9 +598,16 @@
               }
             }
   
  +        } else {
  +#if DEBUG
  +	  printf("gnetlist:g_netlist.c:g_get_attribute_by_pinseq -- ");
  +          printf("can't find pinseq at schematic level\n");
  +#endif
           }
           
  +        
           /* now search inside the symbol */
  +	/* This checks for attributes attached at the symbol level */
           o_text_object =
             o_attrib_search_string_list(nl_current->object_ptr->
                                         complex->prim_objs, pinseq_attrib);
  @@ -611,8 +623,8 @@
               }
             }
           }
  -        
  -        break;
  +        /* Don't break until we search the whole netlist to handle slotted */
  +        /* parts.   4.28.2007 -- SDB. */
         }
       }
       nl_current = nl_current->next;
  @@ -624,6 +636,11 @@
       scm_return_value = scm_makfrom0str ("unknown");
     }
   
  +#if DEBUG
  +  printf("gnetlist:g_netlist.c:g_get_attribute_by_pinseq -- ");
  +  printf("return_value: %s\n", return_value);
  +#endif
  +
     g_free(pinseq_attrib);
   
     return (scm_return_value);
  
  
  


_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs