Generated on Wed Apr 29 2015 11:51:41 for GGL-4.1.2 by doxygen 1.8.3.1
Public Types | Public Member Functions | Protected Attributes
ggl::GS_STL_pushUniqueT< STL_CONTAINER > Class Template Reference

Unique storage of graphs in STL push-back container. More...

#include <GS_STL.hh>

Inheritance diagram for ggl::GS_STL_pushUniqueT< STL_CONTAINER >:
Inheritance graph
[legend]

Public Types

typedef STL_CONTAINER storage_type
 type of STL container of graphs this graph storage uses More...
 

Public Member Functions

virtual void add (const Graph &graph)
 
 GS_STL_pushUniqueT (STL_CONTAINER &storage, sgm::GraphMatching &matcher)
 
 GS_STL_pushUniqueT (STL_CONTAINER &storage, sgm::GraphMatching &matcher, const std::string &wildcard)
 
 GS_STL_pushUniqueT (const GGL_GS_STL_PUSHUNIQUET_TYPE &toCopy)
 
virtual ~GS_STL_pushUniqueT ()
 destruction More...
 

Protected Attributes

sgm::GraphMatchingmatcher
 
STL_CONTAINER & storage
 the STL container to write the graphs to More...
 
const std::string * wildcard
 the wildcard to use for the matching More...
 

Detailed Description

template<class STL_CONTAINER = typename std::vector< Graph >>
class ggl::GS_STL_pushUniqueT< STL_CONTAINER >

A ggl::Graph_Storage implementation that pushs the added graph to the end of a provided STL container !!! ONLY if it is not only present in the container !!!, using its "push_back" method.

The check is done using the provided sgm::GraphMatching object. Thus the more elements are in the container the more tests have to be done which results in slower runtimes!

Template Parameters
STL_CONTAINERa push-back STL container for Graph objects.
Author
Martin Mann (c) 2008 http://www.bioinf.uni-freiburg.de/~mmann/

Definition at line 159 of file GS_STL.hh.

Member Typedef Documentation

template<class STL_CONTAINER = typename std::vector< Graph >>
typedef STL_CONTAINER ggl::GS_STL_pushUniqueT< STL_CONTAINER >::storage_type

Definition at line 164 of file GS_STL.hh.

Constructor & Destructor Documentation

template<class STL_CONTAINER = typename std::vector< Graph >>
ggl::GS_STL_pushUniqueT< STL_CONTAINER >::GS_STL_pushUniqueT ( STL_CONTAINER &  storage,
sgm::GraphMatching matcher 
)

Construction

Parameters
storagethe STL container to write the graphs to
matcherthe graph matcher used to decide if the added graph is already present in the storage
template<class STL_CONTAINER = typename std::vector< Graph >>
ggl::GS_STL_pushUniqueT< STL_CONTAINER >::GS_STL_pushUniqueT ( STL_CONTAINER &  storage,
sgm::GraphMatching matcher,
const std::string &  wildcard 
)

Construction

Parameters
storagethe STL container to write the graphs to
matcherthe graph matcher used to decide if the added graph is already present in the storage
wildcardthe wildcard to use for the matching.
template<class STL_CONTAINER = typename std::vector< Graph >>
ggl::GS_STL_pushUniqueT< STL_CONTAINER >::GS_STL_pushUniqueT ( const GGL_GS_STL_PUSHUNIQUET_TYPE toCopy)

Copy construction

Parameters
toCopythe object to make this a copy of
template<class STL_CONTAINER = typename std::vector< Graph >>
virtual ggl::GS_STL_pushUniqueT< STL_CONTAINER >::~GS_STL_pushUniqueT ( )
virtual

Member Function Documentation

template<class STL_CONTAINER = typename std::vector< Graph >>
virtual void ggl::GS_STL_pushUniqueT< STL_CONTAINER >::add ( const Graph graph)
virtual

Adds the given graph to the internal STL container.

Parameters
graphthe Graph object to add.

Implements ggl::Graph_Storage.

Field Documentation

template<class STL_CONTAINER = typename std::vector< Graph >>
sgm::GraphMatching& ggl::GS_STL_pushUniqueT< STL_CONTAINER >::matcher
protected

the graph matcher used to decide if the added graph is already present in the storage

Definition at line 173 of file GS_STL.hh.

template<class STL_CONTAINER = typename std::vector< Graph >>
STL_CONTAINER& ggl::GS_STL_pushUniqueT< STL_CONTAINER >::storage
protected

Definition at line 169 of file GS_STL.hh.

template<class STL_CONTAINER = typename std::vector< Graph >>
const std::string* ggl::GS_STL_pushUniqueT< STL_CONTAINER >::wildcard
protected

Definition at line 176 of file GS_STL.hh.


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