31 #include "../../common/Translator.h"
32 #include "../../common/progress/TaskProgress.h"
33 #include "../../dataaccess/query/Expression.h"
34 #include "../core/AbstractGraphFactory.h"
35 #include "../core/Edge.h"
36 #include "../core/GraphMetadata.h"
37 #include "../core/Vertex.h"
38 #include "../core/VertexProperty.h"
39 #include "../graphs/Graph.h"
40 #include "../iterator/QueryIterator.h"
41 #include "../Config.h"
42 #include "../Exception.h"
73 m_graph->addEdgeProperty(p);
81 m_graph->addVertexProperty(p);
Abstract class used to define the main functions of graph struct. All graph implementations must used...
static AbstractGraph * make()
It creates and returns an empty graph with default graph type.
Class used to define the edge struct of a graph. Its compose with a identifier, the vertex origin and...
void setParent(Property *p)
It associate this property to the informed parent.
virtual te::dt::Property * getVertexProperty(int idx)
Get a vertex property given a index.
void setIterator(te::graph::AbstractIterator *i)
Used to associate a iterator to graph.
void setTotalSteps(int value)
Set the task total stepes.
From the point of view of graph theory, vertices are treated as featureless and indivisible objects...
This abstract class provides the common functions for graph builder classes. Each builder strategy ha...
QueryGraphBuilder()
Default constructor.
virtual te::graph::GraphMetadata * getMetadata()=0
Function used to access the graph metadata.
This class defines the Query strategy to build a graph having a exist graph as input parameters...
#define TR_GRAPH(message)
It marks a string in order to get translated. This is a special mark used in the Graph module of Terr...
virtual te::graph::Vertex * getNextVertex()
It returns a pointer to the next vertex element of a graph.
virtual bool isEdgeIteratorAfterEnd()
Used to check the iterator position.
virtual te::dt::Property * getEdgeProperty(int idx)
Get a edge property given a index.
virtual int getVertexPropertySize()=0
Used to verify the number of properties associated to vertex elements.
te::graph::Edge * getNextEdge()
It returns a pointer to the next edge element of a graph.
void pulse()
Calls setCurrentStep() function using getCurrentStep() + 1.
This class defines a commun interface to represents a graph iterator class. The main diferency to ano...
bool build(te::graph::AbstractGraph *g, te::da::Expression *eEdge, te::da::Expression *eVertex, const std::map< std::string, std::string > &dsInfo, const std::string &graphType, const std::map< std::string, std::string > &gInfo)
Function used to generated the vertex id based on raster coordenate.
te::graph::Edge * getFirstEdge()
It returns a pointer to the first edge element of a graph.
virtual bool isVertexIteratorAfterEnd()
Used to check the iterator position.
It models a property definition.
This is an abstract class that models a query expression.
void useTimer(bool flag)
Used to define if task use progress timer information.
virtual size_t getVertexInteratorCount()
It returns the number of elements of this iterator.
virtual ~QueryGraphBuilder()
Virtual destructor.
void setMessage(const std::string &message)
Set the task message.
This class can be used to inform the progress of a task.
This class defines a commun interface to represents a graph iterator class. The main diferency to ano...
virtual int getEdgePropertySize()=0
Used to verify the number of properties associated to edge elements.
virtual size_t getEdgeInteratorCount()
It returns the number of elements of this iterator.
virtual Property * clone() const =0
It returns a clone of the object.
te::graph::AbstractIterator * getIterator()
Used to get a iterator associated to graph.
virtual te::graph::Vertex * getFirstVertex()
It returns a pointer to the first vertex element of a graph.