Abstract class used to define the main functions of graph struct. All graph implementations must used this class. More...
#include <AbstractGraph.h>
Public Member Functions | |
| AbstractGraph () | |
| Default constructor. More... | |
| virtual void | flush ()=0 |
| Function used to clear the memory cache, all elements was released from memory, if any element was changes it will be saved. More... | |
| virtual te::graph::GraphMetadata * | getMetadata ()=0 |
| Function used to access the graph metadata. More... | |
| virtual | ~AbstractGraph () |
| Virtual destructor. More... | |
Vertex Access Methods | |
Method used to access vertex elements from a graph. | |
| virtual void | add (Vertex *v)=0 |
| Add a new vertex element to a graph. More... | |
| virtual void | update (Vertex *v)=0 |
| Update the vertex element. More... | |
| virtual void | removeVertex (int id)=0 |
| This function removes the vertex element from graph, also was removed in data source. More... | |
| virtual te::graph::Vertex * | getVertex (int id)=0 |
| It returns the vertex element if it's exist. More... | |
| virtual void | addVertexProperty (te::dt::Property *p)=0 |
| Add a new property associated to the vertex element. More... | |
| virtual void | removeVertexProperty (int idx)=0 |
| Remove a property associated to the vertex element. More... | |
| virtual te::dt::Property * | getVertexProperty (int idx)=0 |
| Get a vertex property given a index. More... | |
| virtual int | getVertexPropertySize ()=0 |
| Used to verify the number of properties associated to vertex elements. More... | |
Edge Access Methods | |
Method used to access edge elements from a graph. | |
| virtual void | add (Edge *e)=0 |
| Add a new edge element to a graph. More... | |
| virtual void | update (Edge *e)=0 |
| Update the edge element. More... | |
| virtual void | removeEdge (int id)=0 |
| This function removes the edge element from graph, also was removed in data source. More... | |
| virtual te::graph::Edge * | getEdge (int id)=0 |
| It returns the edge element if it's exist. More... | |
| virtual void | addEdgeProperty (te::dt::Property *p)=0 |
| Add a new property associated to the edge element. More... | |
| virtual void | removeEdgeProperty (int idx)=0 |
| Remove a property associated to the edge element. More... | |
| virtual te::dt::Property * | getEdgeProperty (int idx)=0 |
| Get a edge property given a index. More... | |
| virtual int | getEdgePropertySize ()=0 |
| Used to verify the number of properties associated to edge elements. More... | |
Abstract class used to define the main functions of graph struct. All graph implementations must used this class.
Definition at line 55 of file AbstractGraph.h.
| te::graph::AbstractGraph::AbstractGraph | ( | ) |
Default constructor.
Definition at line 33 of file AbstractGraph.cpp.
|
virtual |
Virtual destructor.
Definition at line 37 of file AbstractGraph.cpp.
|
pure virtual |
Add a new vertex element to a graph.
| v | Vertex element |
Implemented in te::graph::Graph.
Referenced by te::graph::GetSubGraph::getPredecessor(), te::graph::GetSubGraph::GetSubGraph(), te::graph::SpatialWeightsExchanger::importFromGAL(), te::graph::SpatialWeightsExchanger::importFromGWT(), te::graph::SequenceLoaderStrategy::loadDataByEdgeId(), te::graph::BoxLoaderStrategy::loadDataByEdgeId(), te::graph::SequenceLoaderStrategy::loadDataByVertexId(), and te::graph::BoxLoaderStrategy::loadDataByVertexId().
|
pure virtual |
Add a new edge element to a graph.
| e | Edge element |
Implemented in te::graph::Graph, te::graph::BidirectionalGraph, te::graph::UndirectedGraph, and te::graph::DirectedGraph.
|
pure virtual |
Add a new property associated to the edge element.
param p New property to be associated with edge elements.
Implemented in te::graph::Graph.
Referenced by te::graph::SpatialWeightsExchanger::importFromGWT().
|
pure virtual |
Add a new property associated to the vertex element.
param p New property to be associated with vertex elements.
Implemented in te::graph::Graph.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute(), and te::graph::SpatialWeightsExchanger::associateGeometry().
|
pure virtual |
Function used to clear the memory cache, all elements was released from memory, if any element was changes it will be saved.
Implemented in te::graph::Graph.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute().
|
pure virtual |
It returns the edge element if it's exist.
| id | Vertex identification |
Implemented in te::graph::Graph.
Referenced by te::graph::SpatialWeightsExchanger::exportToGAL().
|
pure virtual |
Get a edge property given a index.
| idx | Index of the property |
Implemented in te::graph::Graph.
Referenced by te::graph::LayerRenderer::checkEdgeGeometryProperty().
|
pure virtual |
Used to verify the number of properties associated to edge elements.
Implemented in te::graph::Graph.
Referenced by te::graph::QueryGraphBuilder::build(), and te::graph::LayerRenderer::checkEdgeGeometryProperty().
|
pure virtual |
Function used to access the graph metadata.
Implemented in te::graph::Graph.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute(), te::graph::QueryGraphBuilder::build(), te::graph::LayerRenderer::draw(), te::graph::SpatialWeightsExchanger::exportToGAL(), te::graph::SpatialWeightsExchanger::exportToGWT(), te::graph::BoxLoaderStrategy::loadDataByEdgeId(), te::graph::SequenceLoaderStrategy::loadDataByVertexId(), te::graph::BoxLoaderStrategy::loadDataByVertexId(), te::graph::AbstractGraphFactory::make(), and te::graph::AbstractGraphFactory::open().
|
pure virtual |
It returns the vertex element if it's exist.
| id | Vertex identification |
Implemented in te::graph::Graph.
Referenced by te::graph::SpatialWeightsExchanger::associateGeometry(), te::graph::LayerRenderer::drawDataSourceGraph(), te::graph::LayerRenderer::drawMemoryGraph(), te::graph::SpatialWeightsExchanger::importFromGAL(), and te::graph::SpatialWeightsExchanger::importFromGWT().
|
pure virtual |
Get a vertex property given a index.
| idx | Index of the property |
Implemented in te::graph::Graph.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute(), and te::graph::LayerRenderer::checkVertexGeometryProperty().
|
pure virtual |
Used to verify the number of properties associated to vertex elements.
Implemented in te::graph::Graph.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute(), te::graph::QueryGraphBuilder::build(), and te::graph::LayerRenderer::checkVertexGeometryProperty().
|
pure virtual |
This function removes the edge element from graph, also was removed in data source.
| id | Edge identification |
Implemented in te::graph::Graph, te::graph::BidirectionalGraph, te::graph::UndirectedGraph, and te::graph::DirectedGraph.
|
pure virtual |
Remove a property associated to the edge element.
| idx | Index of the property |
Implemented in te::graph::Graph.
|
pure virtual |
This function removes the vertex element from graph, also was removed in data source.
| id | Vertex identification |
Implemented in te::graph::Graph.
|
pure virtual |
Remove a property associated to the vertex element.
| idx | Index of the property |
Implemented in te::graph::Graph.
|
pure virtual |
Update the vertex element.
| v | Vertex element |
Implemented in te::graph::Graph.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute().
|
pure virtual |
Update the edge element.
| e | Edge element |
Implemented in te::graph::Graph.