Graph C++ Library
 All Classes Namespaces Files Functions Variables Typedefs Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
gcl::base_directed_graph< VertexType > Class Template Referenceabstract

Virtual template base class for directed graph objects. More...

#include <base_directed_graph.hpp>

Inheritance diagram for gcl::base_directed_graph< VertexType >:
gcl::base_graph< VertexType >

Public Member Functions

 base_directed_graph ()
 Constructor.
 
virtual ~base_directed_graph ()
 Destructor.
 
unsigned int get_nb_reciprocal_edges ()
 Returns the number of reciprocal edges.
 
double get_reciprocity ()
 Returns the reciprocity.
 
unsigned int get_nb_undirected_projection_triangles ()
 Returns the number of triangles in the graph (regardless of the direction of the edges).
 
unsigned int get_nb_undirected_projection_wedges ()
 Returns the number of wegdes in the graph (regardless of the direction of the edges).
 
double get_global_undirected_projection_clustering_coefficient ()
 Returns the global clustering coefficient (3 x [number of triangles] / [number of wedges], regardless of the direction of the edges).
 
double get_avg_local_undirected_projection_clustering_coefficient ()
 Returns the average value of the local clustering coefficients.
 
unsigned int get_min_in_degree ()
 Returns the minimal in degree found in the graph.
 
unsigned int get_max_in_degree ()
 Returns the maximal in degree found in the graph.
 
double get_avg_in_degree ()
 Returns the average in degree found in the graph.
 
unsigned int get_min_out_degree ()
 Returns the minimal out degree found in the graph.
 
unsigned int get_max_out_degree ()
 Returns the maximal out degree found in the graph.
 
double get_avg_out_degree ()
 Returns the average out degree found in the graph.
 
void survey_triangles ()
 Creates a list of the triangles in the graph (regardless of the direction of the edges).
 
void write_edgelist (std::string _name)
 Exports the directed graph to an edgelist.
 
void compute_nb_reciprocal_edges ()
 Computes the number of reciprocal edges.
 
void compute_undirected_projection_clustering_coefficients ()
 Computes the clustering coefficients.
 
virtual void write_graph_properties (std::string _name)=0
 Exports the graph's properties.
 
virtual void write_vertices_properties (std::string _name)=0
 Exports the vertices' properties.
 
std::string get_type_of_graph ()
 Returns the type of graph.
 
unsigned int get_nb_vertices ()
 Returns the number of vertices.
 
unsigned int get_nb_edges ()
 Returns the number of edges.
 
unsigned int get_nb_zerodegree_vertices ()
 Returns the number of vertices with no edge.
 
void survey_degrees_distribution ()
 Computes the quantities related to the degrees distribution.
 
VertexType * operator() (unsigned int _id)
 Returns a VertexType object corresponding to the _id-th vertex.
 
virtual void clear ()=0
 Reinitializes the graph (specific variables).
 

Protected Member Functions

void base_directed_graph_clear ()
 Reinitializes the graph (inherited variables).
 
void set_type_of_graph (std::string _type_of_graph)
 Sets the type of graph.
 
void set_nb_vertices (unsigned int _value)
 Sets the number of vertices.
 
void set_nb_edges (unsigned int _value)
 Sets the number of edges.
 
void set_nb_of_types_of_degrees (unsigned int _value)
 Sets the number of types of degrees.
 
unsigned int get_base_graph_min_degrees (unsigned int _type)
 Returns the minimal degree found in the graph.
 
unsigned int get_base_graph_max_degrees (unsigned int _type)
 Returns the maximal degree found in the graph.
 
double get_base_graph_avg_degrees (unsigned int _type)
 Returns the average degree found in the graph.
 
void base_graph_clear ()
 Reinitializes the graph (inherited variables).
 

Protected Attributes

const unsigned int id_out_degree
 Index corresponding to the out-degree in degree-related vectors.
 
const unsigned int id_in_degree
 Index corresponding to the in-degree in degree-related vectors.
 
bool have_the_degree_distributions_been_surveyed
 

Detailed Description

template<class VertexType>
class gcl::base_directed_graph< VertexType >

Virtual template base class for directed graph objects.

This class provides the common members attributes and functions for all directed graph objects.

Author
Antoine Allard (antoineallard.info)
Date
Sept. 2015

The documentation for this class was generated from the following file: