[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gEDA-dev: New diagram (attempt at UML)



I think that your netsegment should be a segment that way it can be used
for both buses and for nets.

Is an mport the same as a connection?

struct st_net {
  GString *net_name;
  GString *net_hierarchy;

  GList *other_net_names; // List of gchar strings that represent other
names for this net
                          // Use this for joining nets on a page. It
allows a net to have more
                          // then one name to support the hidden nets of
components

  BOOL net_name_has_priority;

  BOOL net_has_hierarchy_io_pins;

  BOOL net_has_busripper_pins;

  BOOL hidden_net;

  int net_level;          // hierarchy depth of this net - number of
schematics down from the top level

  GList *pins;            // List of object pointers of type OBJ_PIN to
complex objects

  GList *busripper_pins;  // List of object pointers of type OBJ_PIN to
busripper objects
};


// A bus is a collection of nets at one hierarchy level
// Multiple hierarchy level will be created by adjusting the bus name
// to include the lower level hierarchy_tags

struct st_bus {
  GString *bus_name;
  GString *bus_hierarchy;
  GString *bus_nets;

  BOOL bus_name_has_priority;

  BOOL bus_has_hierarchy_io_pins;

  BOOL bus_has_busripper_pins;

  int bus_level;   // hierarchy depth of this bus

  GList *pins;     // List of object pointers of type OBJ_PIN

  GList *busripper_pins;     // List of object pointers of type OBJ_PIN

  GList *nets;     // List of nets connected to this bus - for each bus
ripper see if it is part of an existing net
                   // on the current page. If it is add it to that net,
otherwise start a new net and include the busripper in that net

  gchar** net_names; // an array of net names in the order they they are
within the bus as deffined by the bus attribute

  int net_name_size; // number of strings in net_names
};


Peter Clifton wrote:
> On Thu, 2007-03-22 at 11:36 +0000, Peter Clifton wrote:
>
>   
>> I'll post a new diagram soon,
>>     
>
> The current attempt is at:
>
> http://www2.eng.cam.ac.uk/~pcjc2/geda/datastructures.pdf
>
> There may still be a lot of thinking / optimisation to do regarding
> where objects are back-linked, and what data-accesses are required for
> different operations we will need in our libgeda API. (To start with,
> this means operations in the current libgeda API).
>
> Buses are still missing as yet, as are many of the attributes belonging
> to each entity (I didn't want to clutter it too much yet).
>
> Regards,
>
>   



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