Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
RandomGraphFactory.h 822 B
/*
 * RandomGraphFactory.h
 *
 *   Created on: Jun 19, 2014
 *       Author: David Rosca
 *  Modified by: Jan Broz
 */

#ifndef RANDOM_GRAPH_FACTORY_H_
#define RANDOM_GRAPH_FACTORY_H_

#include <graph/GraphClasses.h>

namespace graph {

namespace generate {

class RandomGraphFactory {

  public:
	/// size - rough number of nodes, may be more but not less
	static AdjacencyListUndirectedGraph generateUndirectedTriConnectedPlanarGraph(int size);
	static AdjacencyListUndirectedGraph generateUndirectedIsomorphicGraph(const UndirectedGraph &graph);

	static AdjacencyListUndirectedGraph generateUndirectedGraph( int nodeCount, int edgeCount );
	static AdjacencyListDirectedGraph generateDirectedGraph( int nodeCount, int edgeCount );

};

} // namespace generate

} // namespace grammar

#endif // RANDOM_GRAPH_FACTORY_H_