te::graph::BoxLoaderStrategy Class Reference

This class implements the main functions necessary to save and load the graph data and metadata information using as strategy a bounding box to create a region that defines a group of elements. More...

#include <BoxLoaderStrategy.h>

Inheritance diagram for te::graph::BoxLoaderStrategy:
te::graph::AbstractGraphLoaderStrategy

Public Member Functions

 BoxLoaderStrategy (te::graph::GraphMetadata *metadata)
 Default constructor. More...
 
virtual ~BoxLoaderStrategy ()
 Default destructor. More...
 
Database Box Graph Loader Strategy Methods

Method used to manager a graph data

virtual void loadDataByVertexId (int vertexId, te::graph::AbstractGraph *g, te::graph::GraphCache *gc=0)
 Functio used to load a group of vertex elements given a base element. More...
 
virtual void loadDataByEdgeId (int edgeId, te::graph::AbstractGraph *g, te::graph::GraphCache *gc=0)
 Functio used to load a group of edges elements given a base element. More...
 

Protected Member Functions

te::gm::EnvelopecalculateBox (te::gm::Point *p, std::string tableName)
 Generate a box with p as center. The new box will have n% of the total graph height and n% of total graph width. More...
 

Protected Attributes

te::graph::GraphMetadatam_graphMetadata
 Graph metadata attribute. More...
 

Abstract Graph Loader Strategy Methods

Method used to manager a graph data

virtual void saveData (GraphData *data)
 Save the graph data structure in Data Source. More...
 
virtual void removeEdge (int id)
 Function used to remove a edge saved in a data source. More...
 
virtual void removeVertex (int id)
 Function used to remove a vertex saved in a data source. More...
 
te::graph::GraphMetadatagetMetadata ()
 It returns a pointer to a class that describes the graph metadata. More...
 
void saveGraphEdgeList (GraphData *data)
 Used to save the edge elements from a graph data. More...
 
void saveVertexAttributes (GraphData *data)
 Used to save the vertex elements attributes from a graph data. More...
 
void saveGraphVertexList (GraphData *data)
 Used to save the vertex elements from a graph data. More...
 
void saveEdgeAttributes (GraphData *data)
 Used to save the edges elements attributes from a graph data. More...
 
VertexloadVertex (int id)
 Function used to load one vertex given a ID. More...
 
VertexloadVertexAttrs (int id)
 Function used to load one vertex given a ID. More...
 
EdgeloadEdge (int id)
 Function used to load one edge given a ID. More...
 
EdgeloadEdgeAttrs (int id)
 Function used to load one edge given a ID. More...
 

Detailed Description

This class implements the main functions necessary to save and load the graph data and metadata information using as strategy a bounding box to create a region that defines a group of elements.

See also
AbstractGraphLoaderStrategy

Definition at line 74 of file BoxLoaderStrategy.h.

Constructor & Destructor Documentation

te::graph::BoxLoaderStrategy::BoxLoaderStrategy ( te::graph::GraphMetadata metadata)

Default constructor.

virtual te::graph::BoxLoaderStrategy::~BoxLoaderStrategy ( )
virtual

Default destructor.

Member Function Documentation

te::gm::Envelope* te::graph::BoxLoaderStrategy::calculateBox ( te::gm::Point p,
std::string  tableName 
)
protected

Generate a box with p as center. The new box will have n% of the total graph height and n% of total graph width.

Parameters
pTerralib object that defines a geometric point.
tableNameAttribute used to define the table name that contains the graph elements
Returns
Terralib object that defines geometric region.
te::graph::GraphMetadata* te::graph::AbstractGraphLoaderStrategy::getMetadata ( )
inherited

It returns a pointer to a class that describes the graph metadata.

Returns
A valid pointer if exists and null pointer in other case
virtual void te::graph::BoxLoaderStrategy::loadDataByEdgeId ( int  edgeId,
te::graph::AbstractGraph g,
te::graph::GraphCache gc = 0 
)
virtual

Functio used to load a group of edges elements given a base element.

Parameters
edgeIdAttribute used to identify the base element
gPointer to a graph, parent of this element
gcThis is a optional attribute, if present the cache will be check if the already been loaded

Implements te::graph::AbstractGraphLoaderStrategy.

virtual void te::graph::BoxLoaderStrategy::loadDataByVertexId ( int  vertexId,
te::graph::AbstractGraph g,
te::graph::GraphCache gc = 0 
)
virtual

Functio used to load a group of vertex elements given a base element.

Parameters
vertexIdAttribute used to identify the base element
gPointer to a graph, parent of this element
gcThis is a optional attribute, if present the cache will be check if the already been loaded

Implements te::graph::AbstractGraphLoaderStrategy.

Edge* te::graph::AbstractGraphLoaderStrategy::loadEdge ( int  id)
protectedinherited

Function used to load one edge given a ID.

Parameters
idThe edge identifier
Note
This function is used in case the graph was saved using the edge list
Returns
A valid edge pointer if the element was found and a null pointer in other case
Edge* te::graph::AbstractGraphLoaderStrategy::loadEdgeAttrs ( int  id)
protectedinherited

Function used to load one edge given a ID.

Parameters
idThe edge identifier
Note
This function is used in case the graph was saved using the vertex list
Returns
A valid vertex pointer if the element was found and a null pointer in other case
Vertex* te::graph::AbstractGraphLoaderStrategy::loadVertex ( int  id)
protectedinherited

Function used to load one vertex given a ID.

Parameters
idThe vertex identifier
Note
This function is used in case the graph was saved using the vertex list
Returns
A valid vertex pointer if the element was found and a null pointer in other case
Vertex* te::graph::AbstractGraphLoaderStrategy::loadVertexAttrs ( int  id)
protectedinherited

Function used to load one vertex given a ID.

Parameters
idThe vertex identifier
Note
This function is used in case the graph was saved using the edge list
Returns
A valid vertex pointer if the element was found and a null pointer in other case
virtual void te::graph::AbstractGraphLoaderStrategy::removeEdge ( int  id)
virtualinherited

Function used to remove a edge saved in a data source.

Parameters
idThe edge identifier

Reimplemented in te::graph::BottomUpLoaderStrategy, and te::graph::TopDownLoaderStrategy.

virtual void te::graph::AbstractGraphLoaderStrategy::removeVertex ( int  id)
virtualinherited

Function used to remove a vertex saved in a data source.

Parameters
idThe vertex identifier

Reimplemented in te::graph::BottomUpLoaderStrategy, and te::graph::TopDownLoaderStrategy.

virtual void te::graph::AbstractGraphLoaderStrategy::saveData ( GraphData data)
virtualinherited

Save the graph data structure in Data Source.

Parameters
dataPointer to a valid graph data

Reimplemented in te::graph::BottomUpLoaderStrategy, and te::graph::TopDownLoaderStrategy.

void te::graph::AbstractGraphLoaderStrategy::saveEdgeAttributes ( GraphData data)
protectedinherited

Used to save the edges elements attributes from a graph data.

Parameters
dataPointer to a valid graph data
void te::graph::AbstractGraphLoaderStrategy::saveGraphEdgeList ( GraphData data)
protectedinherited

Used to save the edge elements from a graph data.

Parameters
dataPointer to a valid graph data
void te::graph::AbstractGraphLoaderStrategy::saveGraphVertexList ( GraphData data)
protectedinherited

Used to save the vertex elements from a graph data.

Parameters
dataPointer to a valid graph data
void te::graph::AbstractGraphLoaderStrategy::saveVertexAttributes ( GraphData data)
protectedinherited

Used to save the vertex elements attributes from a graph data.

Parameters
dataPointer to a valid graph data

Member Data Documentation

te::graph::GraphMetadata* te::graph::AbstractGraphLoaderStrategy::m_graphMetadata
protectedinherited

Graph metadata attribute.

Definition at line 203 of file AbstractGraphLoaderStrategy.h.


The documentation for this class was generated from the following file: