Boost logo

Boost :

From: Tiago de Paula Peixoto (tiago_at_[hidden])
Date: 2006-08-09 10:04:59


Hello.

I've written a graphml reader/writer for BGL, based on the code Douglas
Gregor posted on the boost users list at
http://article.gmane.org/gmane.comp.lib.boost.user/17877/, and I'm
sending it attached.

It has the following additional features:

* support for attributes of different types (int, float, etc.)
* understand the following parse info attributes: parse.nodeids and
  parse.edgeids. If nodeids or edgeids are canonical,
  they are automatically converted into indexes, and there's no need to
  keep a name map, which saves memory for large graphs.

If there's interest in having this in the library, I would gladly write
documentation for it, and make the necessary modifications/adjustments.

Notes:

* The code uses some exceptions from the graphviz code. It just seemed
  unnecessary for both codes to return different exceptions. But this is
  is trivially changeable.
* The code depends on expat. And also, when reading some invalid files,
  it sometimes just hangs. This is due, probably, with not setting
  up expat properly to return errors. I would also look into this.

BTW, this was written for the graph-tool project, if anyone is
interested: http://graph-tool.forked.de

Thanks.

-- 
Tiago de Paula Peixoto <tiago_at_[hidden]>





Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk