level_one_hmap< V_T, E_T, ALLOC > Class Template Reference

Class to store edges i.e. level one patterns for graphs;. More...

#include <level_one_hmap.h>

List of all members.

Public Types

typedef element_parser< V_T > V_EP
typedef HASHNS::hash_set<
E_T, HASHNS::hash< E_T >,
std::equal_to< E_T >, ALLOC<
E_T > > 
LABELS
typedef HASHNS::hash_map<
typename V_EP::HASH_TYPE,
LABELS, HASHNS::hash< typename
V_EP::HASH_TYPE >, typename
V_EP::COMP_FUNC, ALLOC< std::pair<
typename V_EP::HASH_TYPE,
LABELS > > > 
NEIGHBORS
typedef HASHNS::hash_map<
typename V_EP::HASH_TYPE,
NEIGHBORS, HASHNS::hash<
typename V_EP::HASH_TYPE >,
typename V_EP::COMP_FUNC,
ALLOC< std::pair< typename
V_EP::HASH_TYPE, NEIGHBORS > > > 
HMAP
typedef HMAP::const_iterator CONST_IT
typedef HMAP::iterator IT
typedef NEIGHBORS::const_iterator CONST_NIT
typedef NEIGHBORS::iterator NIT
typedef LABELS::const_iterator CONST_LIT
typedef LABELS::iterator LIT

Public Member Functions

void print () const
int size () const
void insert (const V_T &src, const V_T &dest, const E_T &lbl)
const LABELS & get_labels (const V_T &src, const V_T &dest) const
const NEIGHBORS & get_neighbors (const V_T &src) const


Detailed Description

template<typename V_T, typename E_T, template< typename > class ALLOC = std::allocator>
class level_one_hmap< V_T, E_T, ALLOC >

Class to store edges i.e. level one patterns for graphs;.

This class is designed to provide a fast lookup of possible labels/vertices


Member Function Documentation

template<typename V_T, typename E_T, template< typename > class ALLOC = std::allocator>
void level_one_hmap< V_T, E_T, ALLOC >::insert ( const V_T &  src,
const V_T &  dest,
const E_T &  lbl 
) [inline]

Inserts the edge from src to dest with label lbl in the hmap; If any of src/dest are not present in hmap, they are inserted as well; This hmap does not permit parallel edges between two nodes


The documentation for this class was generated from the following file:
Generated on Wed Jul 26 14:01:09 2006 for DMTL by  doxygen 1.4.7