graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t Struct Reference

Structure maintaining the data for a single neighbor. More...

#include <vvgraph.h>

Inherits graph::__vvgraph_EdgeCache< VVGRAPH_COMPACT_EDGE, EdgeContent, VVGraph, single_neighborhood_t, std::list< neighbor_t > >.

List of all members.

Public Types

typedef __vvgraph_EdgeCache
< VVGRAPH_COMPACT_EDGE,
EdgeContent, VVGraph,
single_neighborhood_t,
std::list< neighbor_t > > 
base
typedef std::list< neighbor_tedge_list_t
 Type of the list of outgoing neighbors.

Public Member Functions

void clear_edge ()
 neighbor_t (const neighbor_t &copy)
 neighbor_t (const vertex_t &tgt, const EdgeContent &e, single_neighborhood_t &n, intptr_t gid)
 Constructor.
neighbor_toperator= (const neighbor_t &copy)
bool operator== (const neighbor_t &other) const
 Equality of two neighbors/edge.

Public Attributes

vertex_t target
 Target of the edge.

Detailed Description

template<typename VertexContent, typename EdgeContent = _EmptyEdgeContent, bool compact = false>
struct graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t

Structure maintaining the data for a single neighbor.

Definition at line 431 of file vvgraph.h.


Member Typedef Documentation

template<typename VertexContent, typename EdgeContent = _EmptyEdgeContent, bool compact = false>
typedef std::list<neighbor_t> graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t::edge_list_t

Type of the list of outgoing neighbors.

Definition at line 437 of file vvgraph.h.


Constructor & Destructor Documentation

template<typename VertexContent, typename EdgeContent = _EmptyEdgeContent, bool compact = false>
graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t::neighbor_t ( const vertex_t tgt,
const EdgeContent &  e,
single_neighborhood_t n,
intptr_t  gid 
) [inline]

Constructor.

Definition at line 442 of file vvgraph.h.

00445             : base(e, &n, gid)
00446             , target(tgt)
00447             {
00448             }


Member Function Documentation

template<typename VertexContent, typename EdgeContent = _EmptyEdgeContent, bool compact = false>
bool graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t::operator== ( const neighbor_t other  )  const [inline]

Equality of two neighbors/edge.

A single neighbor is equal to another if the vertex and the content are the same

Definition at line 485 of file vvgraph.h.

References graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t::target.

00486           {
00487             return (target == other.target) &&
00488               (static_cast<const EdgeContent&>(*this) == static_cast<const EdgeContent&>(other));
00489           }


Member Data Documentation

template<typename VertexContent, typename EdgeContent = _EmptyEdgeContent, bool compact = false>
vertex_t graph::VVGraph< VertexContent, EdgeContent, compact >::neighbor_t::target

The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Fri May 31 15:38:12 2013 for VVE by  doxygen 1.6.3