graph.h File Reference

EcoLab graph library. More...

#include <classdesc_access.h>
#include "sparse_mat.h"
#include "pack_stl.h"
#include "TCL_obj_base.h"
#include "arrays.h"
#include "poly.h"
#include <vector>
#include <set>
#include <utility>
#include <algorithm>
#include <iostream>
#include <assert.h>
#include "graph.cd"
Include dependency graph for graph.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ecolab::Edge
 
class  ecolab::Graph_back_insert_iterator< Graph, BG >
 
struct  ecolab::Graph
 
struct  ecolab::Graph::const_iterator_base
 
class  ecolab::Graph::const_iterator
 iterator over edges More...
 
struct  ecolab::GraphAdaptor_const_iterator_base< G >
 
class  ecolab::GraphAdaptor< G >
 
class  ecolab::ConcreteGraph< G >
 
class  ecolab::DiGraph
 
class  ecolab::BiDirectionalGraph_const_iterator
 
class  ecolab::BiDirectionalGraph
 A graph in which each link is bidirectional. More...
 
class  ecolab::sparse_mat_graph
 
class  ecolab::sparse_mat_graph_adaptor
 
class  ecolab::sparse_mat_graph_adaptor::const_iterator
 
struct  ecolab::Degrees
 
struct  ecolab::ConstantRNG
 default indegree distribution (builds trees)
 
struct  classdesc_access::access_pack< ecolab::GraphAdaptor_const_iterator_base< G > >
 
struct  classdesc_access::access_unpack< ecolab::GraphAdaptor_const_iterator_base< G > >
 

Namespaces

 ecolab
 _OPENMP
 
 classdesc_access
 Contains access_* structs, and nothing else. These structs are used to gain access to private members.
 
 std
 

Functions

void ecolab::swap (DiGraph &x, DiGraph &y)
 
void ecolab::swap (BiDirectionalGraph &x, BiDirectionalGraph &y)
 
template<class G >
Degrees ecolab::degrees (const G &g)
 
void ecolab::ErdosRenyi_generate (Graph &g, unsigned nodes, unsigned links, urand &uni, random_gen &weight_dist=one)
 random graph chosen uniformly from the set of graphs with n nodes and l links
 
void ecolab::PreferentialAttach_generate (Graph &g, unsigned nodes, urand &uni, random_gen &indegree_dist=one, random_gen &weight_dist=one)
 
void ecolab::random_rewire (Graph &g, urand &u)
 randomly rewire the graph g (in place), using random generator u
 
std::ostream & std::operator<< (std::ostream &s, const ecolab::Graph &x)
 for use with TCL_obj. Graphviz format is used with the netgraph command.
 
template<class G >
std::ostream & std::operator<< (std::ostream &s, const ecolab::ConcreteGraph< G > &x)
 
std::ostream & std::operator<< (std::ostream &s, const ecolab::DiGraph &x)
 
std::ostream & std::operator<< (std::ostream &s, const ecolab::BiDirectionalGraph &x)
 
std::istream & std::operator>> (std::istream &s, ecolab::Graph &x)
 
template<class G >
std::istream & std::operator>> (std::istream &s, ecolab::ConcreteGraph< G > &x)
 
std::istream & std::operator>> (std::istream &s, ecolab::DiGraph &x)
 
std::istream & std::operator>> (std::istream &s, ecolab::BiDirectionalGraph &x)
 

Detailed Description

EcoLab graph library.