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. | |
![]() | |
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) |
![]() | |
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_ |
![]() | |
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.