29 #ifndef __TERRALIB_GRAPH_INTERNAL_GRAPHDATAMANAGER_H
30 #define __TERRALIB_GRAPH_INTERNAL_GRAPHDATAMANAGER_H
33 #include "../Config.h"
42 class AbstractGraphLoaderStrategy;
This class define the main functions necessary to save and load the graph data and metadata informati...
Abstract class used to define the main functions of graph struct. All graph implementations must used...
Class used to manager the graph data elements. This class uses a cache policy to control the elements...
GraphDataManager(te::graph::AbstractGraph *g)
Default constructor.
void removeVertex(int id)
Function used to remove a vertex from data source.
AbstractGraphLoaderStrategy * getLoaderStrategy()
Function used to get the current loader strategy.
void loadGraphDataByVertexId(int vertexId, te::graph::GraphCache *gc=0)
Load a set of vertex elements that includes the desired element.
void loadGraphDataByEdgeId(int edgeId, te::graph::GraphCache *gc=0)
Load a set of edges elements that includes the desired element.
void removeEdge(int id)
Function used to remove a edge from data source.
AbstractGraphLoaderStrategy * m_loadStrategy
Pointer to a loader strategy object.
virtual ~GraphDataManager()
Default destructor.
AbstractGraph * m_graph
Pointer to a graph object.
void saveGraphData(GraphData *data)
Save the graph data structure in Data Source.
void setLoaderStrategy(AbstractGraphLoaderStrategy *loaderStrategy)
Function used to set a current loader strategy.
This class define a important struct used to group a map of vertex and edges. A flag is used to indic...
#define TEGRAPHEXPORT
You can use this macro in order to export/import classes and functions from this module.