|
| Graph_TS (const std::list< const Edge< T > * > &edgeSet) |
|
| Graph_TS (const Graph< T > &graph) |
|
const std::list< const Edge< T > * > & | getEdgeSet () const override |
| Function that return the Edge set of the Graph Note: Thread Safe. More...
|
|
void | setEdgeSet (std::list< const Edge< T > * > &edgeSet) override |
| Function set the Edge Set of the Graph Note: Thread Safe. More...
|
|
void | addEdge (const Edge< T > *edge) override |
| Function add an Edge to the Graph Edge Set Note: Thread Safe. More...
|
|
void | removeEdge (unsigned long edgeId) override |
| Function remove an Edge from the Graph Edge Set Note: Thread Safe. More...
|
|
const std::list< const Node< T > * > | getNodeSet () const override |
| Function that return the Node Set of the Graph Note: Thread Safe. More...
|
|
const std::optional< const Edge< T > * > | getEdge (unsigned long edgeId) const override |
| Function that return an Edge with specific ID if Exist in the Graph Note: Thread Safe. More...
|
|
const AdjacencyMatrix< T > | getAdjMatrix () const override |
| This function generate a list of adjacency matrix with every element of the matrix contain the node where is directed the link and the Edge corrispondent to the link Note: Thread Safe.
|
|
const DijkstraResult | dijkstra (const Node< T > &source, const Node< T > &target) const override |
| Function runs the dijkstra algorithm for some source node and target node in the graph and returns the shortest distance of target from the source. Note: Thread Safe. More...
|
|
const std::vector< Node< T > > | breadth_first_search (const Node< T > &start) const override |
| Function performs the breadth first search algorithm over the graph Note: Thread Safe. More...
|
|
const std::vector< Node< T > > | depth_first_search (const Node< T > &start) const override |
| Function performs the depth first search algorithm over the graph Note: Thread Safe. More...
|
|
bool | isCyclicDirectedGraphDFS () const override |
| This function uses DFS to check for cycle in the graph. Pay Attention, this function work only with directed Graph Note: Thread Safe. More...
|
|
bool | isCyclicDirectedGraphBFS () const override |
| This function uses BFS to check for cycle in the graph. Pay Attention, this function work only with directed Graph Note: Thread Safe. More...
|
|
bool | isDirectedGraph () const override |
| This function checks if a graph is directed Note: Thread Safe. More...
|
|
const DialResult | dial (const Node< T > &source, int maxWeight) const override |
| This function write the graph in an output file Note: Thread Safe. More...
|
|
int | writeToFile (typename Graph< T >::InputOutputFormat format=Graph< T >::InputOutputFormat::STANDARD_CSV, const std::string &workingDir=".", const std::string &OFileName="graph", bool compress=false, bool writeNodeFeat=false, bool writeEdgeWeight=false) const override |
|
int | readFromFile (typename Graph< T >::InputOutputFormat format=Graph< T >::InputOutputFormat::STANDARD_CSV, const std::string &workingDir=".", const std::string &OFileName="graph", bool compress=false, bool readNodeFeat=false, bool readEdgeWeight=false) override |
| This function write the graph in an output file Note: Thread Safe. More...
|
|
PartitionMap< T > | partitionGraph (typename Graph< T >::PartitionAlgorithm algorithm, unsigned int numberOfPartitions) const override |
| This function partition a graph in a set of partitions Note: Thread Safe. More...
|
|
| Graph (const std::list< const Edge< T > * > &edgeSet) |
|
virtual int | writeToFile (InputOutputFormat format=InputOutputFormat::STANDARD_CSV, const std::string &workingDir=".", const std::string &OFileName="graph", bool compress=false, bool writeNodeFeat=false, bool writeEdgeWeight=false) const |
|
virtual int | readFromFile (InputOutputFormat format=InputOutputFormat::STANDARD_CSV, const std::string &workingDir=".", const std::string &OFileName="graph", bool compress=false, bool readNodeFeat=false, bool readEdgeWeight=false) |
| This function write the graph in an output file Note: No Thread Safe. More...
|
|
virtual PartitionMap< T > | partitionGraph (PartitionAlgorithm algorithm, unsigned int numberOfPartitions) const |
| This function partition a graph in a set of partitions Note: No Thread Safe. More...
|
|
void | getLock () const |
|
void | releaseLock () const |
|
template<typename T>
class CXXGRAPH::Graph_TS< T >
Class that implement the Thread Safe Graph.