This is a implementation of a UndirectedGraph Graph. By definition a undirected graph has no direction information about his edges.  
 More...
#include <UndirectedGraph.h>
This is a implementation of a UndirectedGraph Graph. By definition a undirected graph has no direction information about his edges. 
- See also
 - Graph, GraphData, GraphCache 
 
Definition at line 56 of file UndirectedGraph.h.
 
◆ UndirectedGraph() [1/3]
      
        
          | te::graph::UndirectedGraph::UndirectedGraph  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ UndirectedGraph() [2/3]
      
        
          | te::graph::UndirectedGraph::UndirectedGraph  | 
          ( | 
          GraphMetadata *  | 
          metadata | ) | 
           | 
        
      
 
Constructor. 
- Parameters
 - 
  
    | metadata | A pointer to a graph metadata implementation  | 
  
   
 
 
◆ UndirectedGraph() [3/3]
Constructor. 
- Parameters
 - 
  
    | cp | A pointer to a cache policy implementation | 
    | ls | A pointer to a loader strategy implementation  | 
  
   
 
 
◆ ~UndirectedGraph()
      
        
          | te::graph::UndirectedGraph::~UndirectedGraph  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ add() [1/2]
  
  
      
        
          | virtual void te::graph::UndirectedGraph::add  | 
          ( | 
          Edge *  | 
          e | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
Add a new edge element to a graph. 
- Parameters
 - 
  
  
 
- Note
 - This function turns the dirty flag of current GraphData to true, the new flag of the edge turns to true. 
 
Reimplemented from te::graph::Graph.
 
 
◆ add() [2/2]
  
  
      
        
          | virtual void te::graph::Graph::add  | 
          ( | 
          Vertex *  | 
          v | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
Add a new vertex element to a graph. 
- Parameters
 - 
  
  
 
- Note
 - This function turns the dirty flag of current GraphData to true, the new flag of the vertex turns to true. 
 
Implements te::graph::AbstractGraph.
 
 
◆ addEdgeProperty()
Add a new property associated to the edge element. 
param p New property to be associated with edge elements.
- Note
 - It's important before using this function call the flush() function, its necessary to force the memory clear and the elements will be loaded with the right size of properties. 
 
Implements te::graph::AbstractGraph.
 
 
◆ addVertexProperty()
Add a new property associated to the vertex element. 
param p New property to be associated with vertex elements.
- Note
 - It's important before using this function call the flush() function, its necessary to force the memory clear and the elements will be loaded with the right size of properties. 
 
Implements te::graph::AbstractGraph.
 
 
◆ flush()
  
  
      
        
          | virtual void te::graph::Graph::flush  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
Function used to clear the memory cache, all elements was released from memory, if any element was changes it will be saved. 
- Returns
 
Implements te::graph::AbstractGraph.
 
 
◆ getEdge()
It returns the edge element if it's exist. 
- Parameters
 - 
  
  
 
- Returns
 - A valid vertex point if the element was found and a null pointer in other case. 
 
Implements te::graph::AbstractGraph.
 
 
◆ getEdgeProperty()
Get a edge property given a index. 
- Parameters
 - 
  
  
 
- Returns
 - A property associated to the edge element if the index is right and a null pointer in other case. 
 
Implements te::graph::AbstractGraph.
 
 
◆ getEdgePropertySize()
  
  
      
        
          | virtual int te::graph::Graph::getEdgePropertySize  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
Used to verify the number of properties associated to edge elements. 
- Returns
 - Integer value with the number of properties. 
 
Implements te::graph::AbstractGraph.
 
 
◆ getEdges()
  
  
      
        
          | virtual std::vector< te::graph::Edge * > te::graph::UndirectedGraph::getEdges  | 
          ( | 
          int  | 
          vId | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
It returns all edges that belongs to a vertex. 
- Parameters
 - 
  
    | vId | The attribute used to identify the vertex element | 
  
   
- Returns
 - A vector with edge elements. 
 
 
 
◆ getMetadata()
Function used to access the graph metadata. 
- Returns
 - A pointer to a class that defines the graph metadata 
 
Implements te::graph::AbstractGraph.
 
 
◆ getVertex()
It returns the vertex element if it's exist. 
- Parameters
 - 
  
  
 
- Returns
 - A valid vertex point if the element was found and a null pointer in other case. 
 
Implements te::graph::AbstractGraph.
 
 
◆ getVertexNeighborhood()
  
  
      
        
          | virtual std::vector< te::graph::Vertex * > te::graph::UndirectedGraph::getVertexNeighborhood  | 
          ( | 
          int  | 
          id | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
The neighborhood of a vertex v is an induced subgraph of the graph, formed by all vertices adjacent to v. 
- Parameters
 - 
  
    | id | The attribute used to identify the vertex element | 
  
   
- Returns
 - A vector with vertex elements. 
 
 
 
◆ getVertexProperty()
Get a vertex property given a index. 
- Parameters
 - 
  
  
 
- Returns
 - A property associated to the vertex element if the index is right and a null pointer in other case. 
 
Implements te::graph::AbstractGraph.
 
 
◆ getVertexPropertySize()
  
  
      
        
          | virtual int te::graph::Graph::getVertexPropertySize  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
Used to verify the number of properties associated to vertex elements. 
- Returns
 - Integer value with the number of properties. 
 
Implements te::graph::AbstractGraph.
 
 
◆ isIsolateVertex()
  
  
      
        
          | virtual bool te::graph::UndirectedGraph::isIsolateVertex  | 
          ( | 
          int  | 
          id,  | 
         
        
           | 
           | 
          bool &  | 
          flag  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
virtual   | 
  
 
This function indicates if a desired element is a isolated vertex. 
- Parameters
 - 
  
    | id | The attribute used to identify the vertex element | 
    | flag | Flag used to indicating if the element is a isolated vertex. | 
  
   
- Returns
 - True if the vertex element was found and false in other case 
 
 
 
◆ removeEdge()
  
  
      
        
          | virtual void te::graph::UndirectedGraph::removeEdge  | 
          ( | 
          int  | 
          id | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
This function removes the edge element from graph, also was removed in data source. 
- Parameters
 - 
  
  
 
Reimplemented from te::graph::Graph.
 
 
◆ removeEdgeProperty()
  
  
      
        
          | virtual void te::graph::Graph::removeEdgeProperty  | 
          ( | 
          int  | 
          idx | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ removeVertex()
  
  
      
        
          | virtual void te::graph::Graph::removeVertex  | 
          ( | 
          int  | 
          id | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ removeVertexProperty()
  
  
      
        
          | virtual void te::graph::Graph::removeVertexProperty  | 
          ( | 
          int  | 
          idx | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ update() [1/2]
  
  
      
        
          | virtual void te::graph::Graph::update  | 
          ( | 
          Edge *  | 
          e | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ update() [2/2]
  
  
      
        
          | virtual void te::graph::Graph::update  | 
          ( | 
          Vertex *  | 
          v | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ m_dataManager
Used to load and save GraphData information from a DataSource. 
Definition at line 290 of file Graph.h.
 
 
◆ m_graphCache
Class used to keep all graph data loaded. 
Definition at line 292 of file Graph.h.
 
 
◆ m_graphData
This class has the graph data and properties. 
Definition at line 298 of file Graph.h.
 
 
◆ m_metadata
The documentation for this class was generated from the following file:
- /home/castejon/castejon_files/develop/terralib5/git_release/src/terralib/graph/graphs/UndirectedGraph.h