#include <level_one_hmap.h>
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 |
This class is designed to provide a fast lookup of possible labels/vertices
| 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
1.4.7