30 #include "../../common/Translator.h"
31 #include "../../common/StringUtils.h"
32 #include "../core/Edge.h"
33 #include "../core/Vertex.h"
34 #include "../loader/AbstractGraphLoaderStrategy.h"
35 #include "../Config.h"
36 #include "../Exception.h"
46 delete m_loadStrategy;
51 return m_loadStrategy;
56 m_loadStrategy = loaderStrategy;
63 m_loadStrategy->loadDataByVertexId(vertexId, m_graph, gc);
71 m_loadStrategy->loadDataByEdgeId(edgeId, m_graph, gc);
79 m_loadStrategy->saveData(data);
87 m_loadStrategy->removeEdge(
id);
95 m_loadStrategy->removeVertex(
id);
Abstract class used to define the main functions of graph struct. All graph implementations must used...
This class define the main functions necessary to save and load the graph data and metadata informati...
virtual ~GraphDataManager()
Default destructor.
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 loadGraphDataByEdgeId(int edgeId, te::graph::GraphCache *gc=0)
Load a set of edges elements that includes the desired element.
void loadGraphDataByVertexId(int vertexId, te::graph::GraphCache *gc=0)
Load a set of vertex elements that includes the desired element.
void setLoaderStrategy(AbstractGraphLoaderStrategy *loaderStrategy)
Function used to set a current loader strategy.
void saveGraphData(GraphData *data)
Save the graph data structure in Data Source.
void removeEdge(int id)
Function used to remove a edge from data source.
AbstractGraphLoaderStrategy * getLoaderStrategy()
Function used to get the current loader strategy.
void removeVertex(int id)
Function used to remove a vertex from data source.
This class defines a interface to access the graph elements inside a data source. Its use a implement...
This class define a important struct used to group a map of vertex and edges. A flag is used to indic...