This software is a translation into C++ of the excellent Webgraph library by P. Boldi and S. Vigna. The original library, written in Java, is easy to use but hampered by some requirements of the Java virtual machine. This C++ translation attempts to preserve much of the ease of use (through integration with the Boost Graph Library), but bypass requirements imposed by a virtual machine.
Like the original Webgraph library, this work is available under the GNU General Public License.
This software is considered still in alpha stage. There are probably bugs. If you find any, please let me know (unless you feel like fixing it!)
To build the library, run make from the main directory (of course, you must have Boost installed). This builds a file called libwebgraph.ar that must be linked in to any projects that use WebGraph++.
The bv_graph::graph class (which is the main class in this library) models the Boost Graph concepts VertexListGraph and EdgeListGraph, and can thus be used with any algorithm that can work with these concepts. Code is provided that can be used to convert a graph in AsciiGraph format to a format that can be used with Webgraph. The following are some simple examples:
This translation of the original Webgraph library is by Jacob Ratkiewicz. I am a 4th-year PhD student of Computer Science at Indiana University. My advisor is Filippo Menczer; I am a member of his NaN research group.
This material is based upon work supported by the National Science Foundation under award No. IIS-0348940. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.