26#ifndef __TERRALIB_GRAPH_INTERNAL_UNDIRECTEDGRAPHFACTORY_H
27#define __TERRALIB_GRAPH_INTERNAL_UNDIRECTEDGRAPHFACTORY_H
30#include "../core/AbstractGraphFactory.h"
This is the abstract factory for Graphs.
Abstract class used to define the main functions of graph struct. All graph implementations must used...
This is the concrete factory for the undirected Graph type.
const std::string & getType() const
Returns the type (name) of this factory.
static void initialize()
It initializes the factory: the singleton instance will be registered in the abstract factory ....
UndirectedGraphFactory()
Constructor.
static UndirectedGraphFactory * sm_factory
Static instance used to register the factory.
static void finalize()
It finalizes the factory: the singleton instance will be destroyed and will be unregistered from the ...
void getCreationalParameters(std::vector< std::pair< std::string, std::string > > ¶ms) const
It returns the list of parameters accepted as graph info.
te::graph::AbstractGraph * create(const std::string &dsInfo, const std::map< std::string, std::string > &gInfo)
This method must be implemented by subclasses (graph types).
te::graph::AbstractGraph * iOpen(const std::string &dsInfo, const std::map< std::string, std::string > &gInfo)
This method must be re-implemented by subclasses in order to have a finner control for the graph obje...
~UndirectedGraphFactory()
Destructor.
te::graph::AbstractGraph * build()
Builder Function used to create the class object.
#define TEGRAPHEXPORT
You can use this macro in order to export/import classes and functions from this module.