Simplified implementation of Graph_CSR. More...
Simplified implementation of Graph_CSR.
Used when Graph_CSR is used as a default template argument to avoid 7 arguments
[Example]
template<template<typename,typename> class T=Graph_CSR_s> class cool_structure { T<Vertex,Edge> graph }
only 2 parameter are needed, if you use Graph_CSR you have to define 7 regardless that Graph_CSR has some default template
template<template<typename,typename> class T=Graph_CSR> class cool_structure { T<Vertex,Edge> graph }
THIS DO NOT COMPILE
Definition at line 1071 of file map_graph.hpp.
#include <map_graph.hpp>
 Inheritance diagram for Graph_CSR_s< V, E >:Additional Inherited Members | |
  Public Types inherited from Graph_CSR< V, E > | |
| typedef V | V_type | 
| Vertex typedef.  | |
| typedef E | E_type | 
| Edge typedef.  | |
| 
typedef openfpm::vector< V,  Memory, layout_v, layout_v_base, grow_p, openfpm::vect_isel< V >::value > ::container  | V_container | 
| Object container for the vertex, for example can be encap<...> (map_grid or openfpm::vector)  | |
| 
typedef openfpm::vector< E,  Memory, layout_e, layout_e_base, grow_p, openfpm::vect_isel< E >::value > ::container  | E_container | 
| Object container for the edge, for example can be encap<...> (map_grid or openfpm::vector)  | |
  Public Member Functions inherited from Graph_CSR< V, E > | |
| bool | operator== (const Graph_CSR< V, E, Memory, layout_v, layout_e, layout_v_base, layout_e_base, grow_p > &g) const | 
| Check if two graph exactly match.  More... | |
| Graph_CSR< V, E, Memory,  layout_v, layout_e, layout_v_base, layout_e_base, grow_p >  | duplicate () const | 
| It duplicate the graph.  More... | |
| Graph_CSR () | |
| Constructor.  More... | |
| Graph_CSR (size_t n_vertex) | |
| Constructor.  More... | |
| Graph_CSR (size_t n_vertex, size_t n_slot) | |
| Constructor.  More... | |
| Graph_CSR (Graph_CSR< V, E, Memory > &&g) | |
| Copy constructor.  More... | |
| Graph_CSR< V, E, Memory > & | operator= (Graph_CSR< V, E, Memory > &&g) | 
| Graph_CSR< V, E, Memory > & | operator= (const Graph_CSR< V, E, Memory > &g) | 
| auto | vertex_p (size_t id) -> decltype(v.template get< i >(id)) | 
| operator to access the vertex  More... | |
| auto | vertex_p (grid_key_dx< 1 > id) -> decltype(v.template get< i >(id)) | 
| Access the vertex.  More... | |
| auto | vertex (size_t id) -> decltype(v.get(id)) | 
| Function to access the vertex.  More... | |
| auto | vertex (grid_key_dx< 1 > id) -> decltype(v.get(id.get(0))) | 
| Function to access the vertex.  More... | |
| auto | vertex (openfpm::vector_key_iterator id) -> decltype(v.get(0)) | 
| Fuction to access the vertex.  More... | |
| auto | vertex (size_t id) const -> const decltype(v.get(id)) | 
| Function to access the vertex.  More... | |
| auto | vertex (grid_key_dx< 1 > id) const -> const decltype(v.get(id.get(0))) | 
| Fuction to access the vertex.  More... | |
| auto | vertex (openfpm::vector_key_iterator id) const -> const decltype(v.get(0)) | 
| operator to access the vertex  More... | |
| void | clear () | 
| operator to clear the whole graph  More... | |
| auto | edge_p (grid_key_dx< 1 > id) -> decltype(e.template get< i >(id)) | 
| Access the edge.  More... | |
| auto | edge_p (size_t id) -> decltype(e.template get< i >(id)) | 
| Access the edge.  More... | |
| auto | edge (edge_key ek) const -> const decltype(e.get(0)) | 
| operator to access the edge  More... | |
| auto | edge (size_t id) const -> const decltype(e.get(id)) | 
| operator to access the edge  More... | |
| auto | edge (grid_key_dx< 1 > id) const -> const decltype(e.get(id.get(0))) | 
| Access the edge.  More... | |
| size_t | getNChilds (size_t c) const | 
| Return the number of childs of a vertex.  More... | |
| size_t | getNChilds (typename openfpm::vector< V, Memory, layout_v, layout_v_base, grow_p, openfpm::vect_isel< V >::value >::iterator_key &c) | 
| Return the number of childs of a vertex.  More... | |
| auto | getChildEdge (size_t v, size_t v_e) -> decltype(e.get(0)) | 
| Get the vertex edge.  More... | |
| size_t | getChild (size_t v, size_t i) const | 
| Get the child vertex id.  More... | |
| size_t | getChild (typename openfpm::vector< V, Memory, layout_v, layout_v_base, grow_p >::iterator_key &v, size_t i) | 
| Get the child edge.  More... | |
| void | addVertex (const V &vrt) | 
| add vertex  More... | |
| void | addVertex () | 
| add an empty vertex  More... | |
| auto | addEdge (size_t v1, size_t v2, const E &ed) -> decltype(e.get(0)) | 
| add edge on the graph  More... | |
| auto | addEdge (size_t v1, size_t v2) -> decltype(e.get(0)) | 
| add edge on the graph  More... | |
| auto | addEdge (size_t v1, size_t v2, size_t srcgid, size_t dstgid) -> decltype(e.get(0)) | 
| add edge on the graph and fill source and destination informations  More... | |
| void | swap (Graph_CSR< V, E > &g) | 
| swap the memory of g with this graph  More... | |
| void | swap (Graph_CSR< V, E > &&g) | 
| swap the memory of g with this graph  More... | |
| auto | getVertexIterator () const -> decltype(v.getIterator()) | 
| Get the vertex iterator.  More... | |
| edge_iterator< Graph_CSR< V, E,  Memory > >  | getEdgeIterator () const | 
| Get the vertex iterator.  More... | |
| size_t | getNVertex () const | 
| Return the number of the vertex.  More... | |
| size_t | getNEdge () const | 
| Return the number of edges.  More... | |