|
libgrape-lite
A C++ library for parallel graph processing
|
IEdgecutFragment defines the interfaces of fragments with edgecut. To learn more about edge-cut and vertex-cut, please refers to https://spark.apache.org/docs/1.6.2/graphx-programming-guide.html#optimized-representation. More...
#include <edgecut_fragment_base.h>
Public Types | |
| using | base_t = FragmentBase< OID_T, VDATA_T, EDATA_T > |
| using | vid_t = VID_T |
| using | vertex_t = Vertex< VID_T > |
| using | fragment_adj_list_t = typename TRAITS_T::fragment_adj_list_t |
| using | fragment_const_adj_list_t = typename TRAITS_T::fragment_const_adj_list_t |
| using | vertices_t = typename TRAITS_T::vertices_t |
| using | internal_id_t = typename InternalOID< OID_T >::type |
| using | inner_vertices_t = typename TRAITS_T::inner_vertices_t |
| using | outer_vertices_t = typename TRAITS_T::outer_vertices_t |
| using | sub_vertices_t = typename TRAITS_T::sub_vertices_t |
| using | mirror_vertices_t = typename TRAITS_T::mirror_vertices_t |
Public Member Functions | |
| VertexMap< OID_T, VID_T > & | GetVertexMap () |
| const VertexMap< OID_T, VID_T > & | GetVertexMap () const |
| const vertices_t & | Vertices () const |
| Get all vertices referenced to this fragment. | |
| size_t | GetVerticesNum () const override |
| Returns the number of vertices in this fragment. | |
| size_t | GetTotalVerticesNum () const override |
| Returns the number of vertices in the entire graph. | |
| bool | GetVertex (const OID_T &oid, Vertex< VID_T > &v) const |
| Get a vertex with original ID vid. | |
| OID_T | GetId (const Vertex< VID_T > &v) const |
| Get the original ID of a vertex. | |
| internal_id_t | GetInternalId (const Vertex< VID_T > &v) const |
| OID_T | Gid2Oid (VID_T gid) const |
| fid_t | GetFragId (const Vertex< VID_T > &u) const |
| Get the ID of fragment the input vertex belongs to. | |
| virtual const VDATA_T & | GetData (const Vertex< VID_T > &v) const =0 |
| Get the data of a vertex. | |
| virtual void | SetData (const Vertex< VID_T > &v, const VDATA_T &val)=0 |
| Set the data of a vertex. | |
| virtual bool | HasChild (const Vertex< VID_T > &v) const =0 |
| Check if vertex v has a child, that is, existing an edge v->u. | |
| virtual bool | HasParent (const Vertex< VID_T > &v) const =0 |
| Check if vertex v has a parent, that is, existing an edge u->v. | |
| virtual int | GetLocalInDegree (const Vertex< VID_T > &v) const =0 |
| Returns the in-degree of vertex v in this fragment. | |
| virtual int | GetLocalOutDegree (const Vertex< VID_T > &v) const =0 |
| Returns the out-degree of vertex v in this fragment.<Paste> | |
| virtual AdjList< VID_T, EDATA_T > | GetIncomingAdjList (const Vertex< VID_T > &v)=0 |
| Returns the incoming adjacent vertices of v. | |
| virtual ConstAdjList< VID_T, EDATA_T > | GetIncomingAdjList (const Vertex< VID_T > &v) const =0 |
| virtual fragment_adj_list_t | GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid)=0 |
| virtual fragment_const_adj_list_t | GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0 |
| virtual AdjList< VID_T, EDATA_T > | GetOutgoingAdjList (const Vertex< VID_T > &v)=0 |
| Returns the outgoing adjacent vertices of v. | |
| virtual ConstAdjList< VID_T, EDATA_T > | GetOutgoingAdjList (const Vertex< VID_T > &v) const =0 |
| virtual fragment_adj_list_t | GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid)=0 |
| virtual fragment_const_adj_list_t | GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0 |
| VID_T | GetInnerVerticesNum () const |
| Returns the number of inner vertices in this fragment. | |
| VID_T | GetOuterVerticesNum () const |
| Returns the number of outer vertices in this fragment. | |
| const inner_vertices_t & | InnerVertices () const |
| Returns the vertex range of inner vertices in this fragment. | |
| const outer_vertices_t & | OuterVertices () const |
| Returns the vertex range of outer vertices in this fragment. | |
| const sub_vertices_t & | OuterVertices (fid_t fid) const |
| const mirror_vertices_t & | MirrorVertices (fid_t fid) const |
| bool | IsInnerVertex (const Vertex< VID_T > &v) const |
| Check if vertex v is inner vertex of this fragment. | |
| bool | IsOuterVertex (const Vertex< VID_T > &v) const |
| Check if vertex v is outer vertex of this fragment. | |
| bool | GetInnerVertex (const OID_T &oid, Vertex< VID_T > &v) const |
| Get a inner vertex with original ID vid. | |
| OID_T | GetInnerVertexId (vertex_t v) const |
| Get the original ID of an inner vertex. | |
| OID_T | GetOuterVertexId (vertex_t v) const |
| Get the original ID of an outer vertex. | |
| bool | InnerVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const |
| Convert from global id to an inner vertex handle. | |
| bool | OuterVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const |
| Convert from global id to an outer vertex handle. | |
| virtual VID_T | GetOuterVertexGid (vertex_t v) const =0 |
| Convert from inner vertex handle to its global id. | |
| VID_T | GetInnerVertexGid (vertex_t v) const |
| Convert from outer vertex handle to its global id. | |
| virtual DestList | IEDests (const Vertex< VID_T > &v) const =0 |
| Return the incoming edge destination fragment ID list of a inner vertex. | |
| virtual size_t | IEDestsSize () const =0 |
| virtual DestList | OEDests (const Vertex< VID_T > &v) const =0 |
| Return the outgoing edge destination fragment ID list of a inner vertex. | |
| virtual size_t | OEDestsSize () const =0 |
| virtual DestList | IOEDests (const Vertex< VID_T > &v) const =0 |
| Return the edge destination fragment ID list of a inner vertex. | |
| virtual size_t | IOEDestsSize () const =0 |
| virtual AdjList< VID_T, EDATA_T > | GetIncomingInnerVertexAdjList (const Vertex< VID_T > &v)=0 |
| Returns the incoming adjacent inner vertices of v. | |
| virtual ConstAdjList< VID_T, EDATA_T > | GetIncomingInnerVertexAdjList (const Vertex< VID_T > &v) const =0 |
| Returns the incoming adjacent inner vertices of v. | |
| virtual AdjList< VID_T, EDATA_T > | GetIncomingOuterVertexAdjList (const Vertex< VID_T > &v)=0 |
| Returns the incoming adjacent outer vertices of v. | |
| virtual ConstAdjList< VID_T, EDATA_T > | GetIncomingOuterVertexAdjList (const Vertex< VID_T > &v) const =0 |
| Returns the incoming adjacent outer vertices of v. | |
| virtual AdjList< VID_T, EDATA_T > | GetOutgoingInnerVertexAdjList (const Vertex< VID_T > &v)=0 |
| Returns the outgoing adjacent inner vertices of v. | |
| virtual ConstAdjList< VID_T, EDATA_T > | GetOutgoingInnerVertexAdjList (const Vertex< VID_T > &v) const =0 |
| Returns the outgoing adjacent inner vertices of v. | |
| virtual AdjList< VID_T, EDATA_T > | GetOutgoingOuterVertexAdjList (const Vertex< VID_T > &v)=0 |
| Returns the outgoing adjacent outer vertices of v. | |
| virtual ConstAdjList< VID_T, EDATA_T > | GetOutgoingOuterVertexAdjList (const Vertex< VID_T > &v) const =0 |
| Returns the outgoing adjacent outer vertices of v. | |
| bool | Gid2Vertex (const vid_t &gid, vertex_t &v) const |
| Convert from global id to a vertex handle. | |
| vid_t | Vertex2Gid (const vertex_t &v) const |
| Convert from vertex handle to its global id. | |
| fid_t | fid () const |
| Returns the ID of this fragment. | |
| fid_t | fnum () const |
| Returns the number of fragments. | |
Public Member Functions inherited from grape::FragmentBase< OID_T, VDATA_T, EDATA_T > | |
| bool | directed () const |
| Returns true if the fragment is directed, false otherwise. | |
| fid_t | fid () const |
| Returns the ID of this fragment. | |
| fid_t | fnum () const |
| Returns the number of fragments. | |
| virtual size_t | GetEdgeNum () const =0 |
| Returns the number of edges in this fragment. | |
| virtual void | PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf, const ParallelEngineSpec &pe_spec)=0 |
| For some kind of applications, specific data structures will be generated. | |
Static Public Attributes | |
| static constexpr FragmentType | fragment_type = FragmentType::kEdgeCut |
Protected Member Functions | |
| void | init (fid_t fid, bool directed, std::unique_ptr< VertexMap< OID_T, VID_T > > &&vm_ptr) |
| bool | IsInnerVertexGid (VID_T gid) const |
| bool | IsInnerVertexLid (VID_T lid) const |
| bool | Gid2Lid (VID_T gid, VID_T &lid) const |
| bool | InnerVertexGid2Lid (VID_T gid, VID_T &lid) const |
| virtual bool | OuterVertexGid2Lid (VID_T gid, VID_T &lid) const =0 |
| void | initMirrorInfo (const CommSpec &comm_spec) |
| template<typename IOADAPTOR_T > | |
| void | serialize (std::unique_ptr< IOADAPTOR_T > &writer) |
| template<typename IOADAPTOR_T > | |
| void | deserialize (std::unique_ptr< IOADAPTOR_T > &reader) |
Protected Member Functions inherited from grape::FragmentBase< OID_T, VDATA_T, EDATA_T > | |
| void | init (fid_t fid, fid_t fnum, bool directed) |
| template<typename IOADAPTOR_T > | |
| void | serialize (std::unique_ptr< IOADAPTOR_T > &writer) |
| template<typename IOADAPTOR_T > | |
| void | deserialize (std::unique_ptr< IOADAPTOR_T > &reader) |
Protected Attributes | |
| VID_T | ivnum_ |
| inner_vertices_t | inner_vertices_ |
| outer_vertices_t | outer_vertices_ |
| vertices_t | vertices_ |
| std::vector< sub_vertices_t > | outer_vertices_of_frag_ |
| std::vector< mirror_vertices_t > | mirrors_of_frag_ |
| std::unique_ptr< VertexMap< OID_T, VID_T > > | vm_ptr_ |
| IdParser< VID_T > | id_parser_ |
Protected Attributes inherited from grape::FragmentBase< OID_T, VDATA_T, EDATA_T > | |
| fid_t | fid_ |
| fid_t | fnum_ |
| bool | directed_ |
IEdgecutFragment defines the interfaces of fragments with edgecut. To learn more about edge-cut and vertex-cut, please refers to https://spark.apache.org/docs/1.6.2/graphx-programming-guide.html#optimized-representation.
If we have an edge a->b cutted by the partitioner, and a is in frag_0, and b in frag_1. Then: a->b is a crossing edge, a is an inner_vertex in frag_0, b is an outer_vertex in frag_0.
| OID_T | |
| VID_T | |
| VDATA_T | |
| EDATA_T | |
| TRAITS_T |
|
inline |
Returns the ID of this fragment.
|
inline |
Returns the number of fragments.
|
pure virtual |
Get the data of a vertex.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
inline |
Get the ID of fragment the input vertex belongs to.
| u | Input vertex. |
|
inline |
Get the original ID of a vertex.
| v | Input vertex. |
|
pure virtual |
Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the incoming adjacent vertices of v.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the incoming adjacent inner vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the incoming adjacent inner vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the incoming adjacent outer vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the incoming adjacent outer vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
inline |
Get a inner vertex with original ID vid.
| vid | Original ID. |
| v | Got vertex. |
|
inline |
Convert from outer vertex handle to its global id.
| v | Input vertex handle. |
|
inline |
Get the original ID of an inner vertex.
| v | Input vertex. |
|
inline |
Returns the number of inner vertices in this fragment.
|
pure virtual |
Returns the in-degree of vertex v in this fragment.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
pure virtual |
Returns the out-degree of vertex v in this fragment.<Paste>
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
pure virtual |
Convert from inner vertex handle to its global id.
| v | Input vertex handle. |
Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
inline |
Get the original ID of an outer vertex.
| v | Input vertex. |
|
inline |
Returns the number of outer vertices in this fragment.
|
pure virtual |
Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the outgoing adjacent vertices of v.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the outgoing adjacent inner vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the outgoing adjacent inner vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the outgoing adjacent outer vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
pure virtual |
Returns the outgoing adjacent outer vertices of v.
| v | Input vertex. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
inlineoverridevirtual |
Returns the number of vertices in the entire graph.
Implements grape::FragmentBase< OID_T, VDATA_T, EDATA_T >.
|
inline |
Get a vertex with original ID vid.
| vid | Original ID. |
| v | Got vertex. |
|
inlineoverridevirtual |
Returns the number of vertices in this fragment.
Implements grape::FragmentBase< OID_T, VDATA_T, EDATA_T >.
|
inline |
Convert from global id to a vertex handle.
| gid | Input global id. |
| v | Output vertex handle. |
|
pure virtual |
Check if vertex v has a child, that is, existing an edge v->u.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
pure virtual |
Check if vertex v has a parent, that is, existing an edge u->v.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
pure virtual |
Return the incoming edge destination fragment ID list of a inner vertex.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
inline |
Convert from global id to an inner vertex handle.
| gid | Input global id. |
| v | Output vertex handle. |
|
inline |
Returns the vertex range of inner vertices in this fragment.
|
pure virtual |
Return the edge destination fragment ID list of a inner vertex.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
inline |
Check if vertex v is inner vertex of this fragment.
| v | Input vertex. |
|
inline |
Check if vertex v is outer vertex of this fragment.
| v | Input vertex. |
|
pure virtual |
Return the outgoing edge destination fragment ID list of a inner vertex.
| v | Input vertex. |
Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >.
|
inline |
Convert from global id to an outer vertex handle.
| gid | Input global id. |
| v | Output vertex handle. |
|
inline |
Returns the vertex range of outer vertices in this fragment.
|
pure virtual |
Set the data of a vertex.
| v | Input vertex. |
| val | Data to write. |
Implemented in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.
|
inline |
Convert from vertex handle to its global id.
| v | Input vertex handle. |
|
inline |
Get all vertices referenced to this fragment.