FlashGraph-ng
A new frontier in large-scale graph analysis and data mining
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | List of all members
fg::page_directed_vertex Class Reference

#include <vertex.h>

Inheritance diagram for fg::page_directed_vertex:
fg::page_vertex

Public Member Functions

size_t get_num_edges (edge_type type) const
 Get the number of edges associated with a vertex. More...
 
edge_iterator get_neigh_begin (edge_type type) const
 Get an STL-style const iterator pointing to the first element in the neighbor list of a vertex. More...
 
edge_iterator get_neigh_end (edge_type type) const
 Get an STL-style const iterator pointing to the end of a vertex's neighbor list. More...
 
edge_seq_iterator get_neigh_seq_it (edge_type type, size_t start=0, size_t end=-1) const
 Get a java-style sequential const iterator that iterates the neighbors in the specified range. More...
 
template<class edge_data_type >
safs::page_byte_array::const_iterator
< edge_data_type > 
get_data_begin (edge_type type) const
 Get an STL-style const iterator pointing to the first element in the edge data list of a vertex. More...
 
template<class edge_data_type >
safs::page_byte_array::const_iterator
< edge_data_type > 
get_data_end (edge_type type) const
 Get an STL-style const iterator pointing to the end of the edge data list of a vertex. More...
 
template<class edge_data_type >
safs::page_byte_array::seq_const_iterator
< edge_data_type > 
get_data_seq_it (edge_type type, size_t start, size_t end) const
 Get a java-style sequential const iterator for edge data with additional parameters to define the range to iterate. More...
 
template<class edge_data_type >
safs::page_byte_array::seq_const_iterator
< edge_data_type > 
get_data_seq_it (edge_type type) const
 Get a java-style sequential const iterator that iterates the edge data list. More...
 
virtual size_t read_edges (edge_type type, vertex_id_t edges[], size_t num) const
 Read the edges of the specified type. More...
 
vertex_id_t get_id () const
 Get the id of the vertex. More...
 
bool has_in_part () const
 Determine whether the page vertex contains in-edges. More...
 
bool has_out_part () const
 Determine whether the page vertex contains out-edges. More...
 
- Public Member Functions inherited from fg::page_vertex
virtual bool is_directed () const
 Whether the vertex is directed. More...
 

Detailed Description

This vertex represents a directed vertex stored in the page cache.

Member Function Documentation

template<class edge_data_type >
safs::page_byte_array::const_iterator<edge_data_type> fg::page_directed_vertex::get_data_begin ( edge_type  type) const
inline

Get an STL-style const iterator pointing to the first element in the edge data list of a vertex.

Parameters
typeThe type of edges a user wishes to iterate over. A user can iterate over IN_EDGE or OUT_EDGE.
Returns
A const iterator pointing to the first element in the edge data list of a vertex.
template<class edge_data_type >
safs::page_byte_array::const_iterator<edge_data_type> fg::page_directed_vertex::get_data_end ( edge_type  type) const
inline

Get an STL-style const iterator pointing to the end of the edge data list of a vertex.

Parameters
typeThe type of edges a user wishes to iterate over. A user can iterate over IN_EDGE or OUT_EDGE.
Returns
A const iterator pointing to the first element in the edge data list of a vertex.
template<class edge_data_type >
safs::page_byte_array::seq_const_iterator<edge_data_type> fg::page_directed_vertex::get_data_seq_it ( edge_type  type,
size_t  start,
size_t  end 
) const
inline

Get a java-style sequential const iterator for edge data with additional parameters to define the range to iterate.

Returns
A sequential const iterator.
Parameters
typeThe type of edges a user wishes to iterate over. A user can iterate over IN_EDGE or OUT_EDGE.
startThe starting offset in the edge list.
endThe end offset in the edge list.
template<class edge_data_type >
safs::page_byte_array::seq_const_iterator<edge_data_type> fg::page_directed_vertex::get_data_seq_it ( edge_type  type) const
inline

Get a java-style sequential const iterator that iterates the edge data list.

Parameters
typeThe type of edges a user wishes to iterate over. A user can iterate over IN_EDGE or OUT_EDGE.
Returns
A sequential const iterator.
vertex_id_t fg::page_directed_vertex::get_id ( ) const
inlinevirtual

Get the id of the vertex.

Returns
The vertex id

Implements fg::page_vertex.

edge_iterator fg::page_directed_vertex::get_neigh_begin ( edge_type  type) const
inlinevirtual

Get an STL-style const iterator pointing to the first element in the neighbor list of a vertex.

Parameters
typeThe type of edges a user wishes to iterate over. A user can iterate over IN_EDGE or OUT_EDGE.
Returns
A const iterator pointing to the first element in the neighbor list of a vertex.

Implements fg::page_vertex.

edge_iterator fg::page_directed_vertex::get_neigh_end ( edge_type  type) const
inlinevirtual

Get an STL-style const iterator pointing to the end of a vertex's neighbor list.

Returns
A const iterator pointing to the end of a vertex's neighbor list.
Parameters
typeThe type of edges a user wishes to iterate over e.g IN_EDGE, OUT_EDGE.

Implements fg::page_vertex.

edge_seq_iterator fg::page_directed_vertex::get_neigh_seq_it ( edge_type  type,
size_t  start = 0,
size_t  end = -1 
) const
inlinevirtual

Get a java-style sequential const iterator that iterates the neighbors in the specified range.

Returns
A sequential const iterator.
Parameters
typeThe type of edges a user wishes to iterate over e.g IN_EDGE, OUT_EDGE.
startThe starting offset in the neighbor list iterated by the sequential iterator.
endThe end offset in the neighbor list iterated by the sequential iterator.

Implements fg::page_vertex.

size_t fg::page_directed_vertex::get_num_edges ( edge_type  type) const
inlinevirtual

Get the number of edges associated with a vertex.

Parameters
typeThe type of edges a user wishes to evaluate e.g IN_EDGE, OUT_EDGE.
Returns
The number of edges associated with a vertex.

Implements fg::page_vertex.

bool fg::page_directed_vertex::has_in_part ( ) const
inline

Determine whether the page vertex contains in-edges.

Returns
True if it contains in-edges.
bool fg::page_directed_vertex::has_out_part ( ) const
inline

Determine whether the page vertex contains out-edges.

Returns
True if it contains out-edges.
virtual size_t fg::page_directed_vertex::read_edges ( edge_type  type,
vertex_id_t  edges[],
size_t  num 
) const
inlinevirtual

Read the edges of the specified type.

Parameters
typeThe type of edges a user wishes to read e.g IN_EDGE, OUT_EDGE.
edgesThe array of edges returned to a user.
numThe maximal number of edges read by a user.

Reimplemented from fg::page_vertex.


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