Template Class DefaultEdgeIndexStorage¶
- Defined in File local_edge_index.h
Nested Relationships¶
Class Documentation¶
-
template <typename SrcT, typename DestT, typename NeighborsStorageT = LocalSet<DestT>>
classDefaultEdgeIndexStorage¶ Public Types
-
template<>
usingSrcAttributesT= EmptyAttr¶
-
template<>
usingNeighborListStorageT= NeighborsStorageT¶
-
template<>
usingEdgeListStorageT= LocalHashmap<SrcT, NeighborsStorageT, IDCmp<SrcT>, ElementInserter>¶
Public Functions
-
DefaultEdgeIndexStorage(const size_t numVertices)¶
-
DefaultEdgeIndexStorage(const size_t numVertices, const SrcAttributesT&)¶
-
template <typename ApplyFunT, typename... Args>
voidForEachAttributedVertexNeighbor(const SrcT &src, ApplyFunT &&function, Args... args)¶
-
template <typename ApplyFunT, typename... Args>
voidAsyncForEachAttributedVertexNeighbor(rt::Handle &handle, const SrcT &src, ApplyFunT &&function, Args... args)¶
-
template <typename ApplyFunT, typename... Args>
voidForEachAttributedVertex(ApplyFunT &&function, Args... args)¶
-
template <typename ApplyFunT, typename... Args>
voidAsyncForEachAttributedVertex(rt::Handle &handle, ApplyFunT &&function, Args... args)¶
-
SrcAttributesT *
GetVertexAttributes(const SrcT &src)¶
-
bool
GetVertexAttributes(const SrcT &src, SrcAttributesT *attr)¶
-
template <typename ApplyFunT, typename... Args>
voidVertexAttributesApply(const SrcT &src, ApplyFunT &&function, Args... args)¶
Public Members
-
EdgeListStorageT
edgeList_¶
Public Static Functions
-
template <typename ApplyFunT, typename... Args, std::size_t... is>
static voidCallVertexAttributesApplyFun(DefaultEdgeIndexStorage<SrcT, DestT, NeighborListStorageT> *stPtr, const SrcT &key, ApplyFunT function, std::tuple<Args...> &args, std::index_sequence<is...>)¶
Public Static Attributes
-
constexpr size_t
kEdgeListChunkSize_= 3072 / sizeof(DestT)¶
-
struct
ElementInserter¶ Public Functions
-
template<>
voidoperator()(NeighborsStorageT *const lhs, const NeighborsStorageT&)¶
Public Static Functions
-
template<>
static boolInsert(NeighborsStorageT *const lhs, const DestT value, bool)¶
-
template<>
static boolInsert(NeighborsStorageT *const lhs, const FlatEdgeList values, bool)¶
-
template<>
static boolInsert(NeighborsStorageT *const lhs, const LocalEdgeListChunk &chunk, bool)¶
-
template<>
-
struct
FlatEdgeList¶
-
template<>