|
libgrape-lite
A C++ library for parallel graph processing
|
FragmentBase is the base class for fragments. More...
#include <fragment_base.h>
Public Member Functions | |
| 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 size_t | GetVerticesNum () const =0 |
| Returns the number of vertices in this fragment. | |
| virtual size_t | GetTotalVerticesNum () const =0 |
| Returns the number of vertices in the entire graph. | |
| 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. | |
Protected Member Functions | |
| 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 | |
| fid_t | fid_ |
| fid_t | fnum_ |
| bool | directed_ |
FragmentBase is the base class for fragments.
| OID_T | |
| VDATA_T | |
| EDATA_T |
|
inline |
Returns true if the fragment is directed, false otherwise.
|
inline |
Returns the ID of this fragment.
|
inline |
Returns the number of fragments.
|
pure virtual |
Returns the number of edges in this fragment.
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 > >, and grape::ImmutableVertexcutFragment< uint64_t, EmptyType, EmptyType >.
|
pure virtual |
Returns the number of vertices in the entire graph.
Implemented in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::ImmutableVertexcutFragment< uint64_t, EmptyType, EmptyType >.
|
pure virtual |
Returns the number of vertices in this fragment.
Implemented in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T > >, and grape::ImmutableVertexcutFragment< uint64_t, EmptyType, EmptyType >.
|
pure virtual |
For some kind of applications, specific data structures will be generated.
| strategy | |
| need_split_edge |
Implemented in grape::cuda::HostFragment< 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 >, grape::ImmutableVertexcutFragment< uint64_t, EmptyType, EmptyType >, and grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >.