Flex  0.17.9
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
gs::BasicFragmentLoader Class Reference

#include <basic_fragment_loader.h>

Collaboration diagram for gs::BasicFragmentLoader:
Collaboration graph
[legend]

Public Member Functions

 BasicFragmentLoader (const Schema &schema, const std::string &prefix)
 
void LoadFragment ()
 
void AddVertexBatch (label_t v_label, const std::vector< vid_t > &vids, const std::vector< std::vector< Any >> &props)
 
void SetVertexProperty (label_t v_label, size_t col_ind, vid_t vid, Any &&prop)
 
template<typename KEY_T >
void FinishAddingVertex (label_t v_label, const IdIndexer< KEY_T, vid_t > &indexer)
 
template<typename EDATA_T >
void AddNoPropEdgeBatch (label_t src_label_id, label_t dst_label_id, label_t edge_label_id)
 
template<typename EDATA_T , typename VECTOR_T >
void PutEdges (label_t src_label_id, label_t dst_label_id, label_t edge_label_id, const std::vector< VECTOR_T > &edges_vec, const std::vector< int32_t > &ie_degree, const std::vector< int32_t > &oe_degree, bool build_csr_in_mem)
 
TableGetVertexTable (size_t ind)
 
const IndexerTypeGetLFIndexer (label_t v_label) const
 
IndexerTypeGetLFIndexer (label_t v_label)
 
const std::string & work_dir () const
 
void set_csr (label_t src_label_id, label_t dst_label_id, label_t edge_label_id, DualCsrBase *dual_csr)
 
DualCsrBaseget_csr (label_t src_label_id, label_t dst_label_id, label_t edge_label_id)
 
void init_edge_table (label_t src_label_id, label_t dst_label_id, label_t edge_label_id)
 

Static Public Member Functions

template<typename EDATA_T >
static decltype(auto) get_casted_dual_csr (DualCsrBase *dual_csr)
 

Private Member Functions

void append_vertex_loading_progress (const std::string &label_name, LoadingStatus status)
 
void append_edge_loading_progress (const std::string &src_label_name, const std::string &dst_label_name, const std::string &edge_label_name, LoadingStatus status)
 
void init_loading_status_file ()
 
void init_vertex_data ()
 

Private Attributes

const Schemaschema_
 
std::string work_dir_
 
size_t vertex_label_num_
 
size_t edge_label_num_
 
std::vector< IndexerTypelf_indexers_
 
std::vector< CsrBase * > ie_
 
std::vector< CsrBase * > oe_
 
std::vector< DualCsrBase * > dual_csr_list_
 
std::vector< Tablevertex_data_
 
std::mutex loading_progress_mutex_
 

Constructor & Destructor Documentation

◆ BasicFragmentLoader()

gs::BasicFragmentLoader::BasicFragmentLoader ( const Schema schema,
const std::string &  prefix 
)

Member Function Documentation

◆ AddNoPropEdgeBatch()

template<typename EDATA_T >
void gs::BasicFragmentLoader::AddNoPropEdgeBatch ( label_t  src_label_id,
label_t  dst_label_id,
label_t  edge_label_id 
)
inline

◆ AddVertexBatch()

void gs::BasicFragmentLoader::AddVertexBatch ( label_t  v_label,
const std::vector< vid_t > &  vids,
const std::vector< std::vector< Any >> &  props 
)

◆ append_edge_loading_progress()

void gs::BasicFragmentLoader::append_edge_loading_progress ( const std::string &  src_label_name,
const std::string &  dst_label_name,
const std::string &  edge_label_name,
LoadingStatus  status 
)
private

◆ append_vertex_loading_progress()

void gs::BasicFragmentLoader::append_vertex_loading_progress ( const std::string &  label_name,
LoadingStatus  status 
)
private

◆ FinishAddingVertex()

template<typename KEY_T >
void gs::BasicFragmentLoader::FinishAddingVertex ( label_t  v_label,
const IdIndexer< KEY_T, vid_t > &  indexer 
)
inline

◆ get_casted_dual_csr()

template<typename EDATA_T >
static decltype(auto) gs::BasicFragmentLoader::get_casted_dual_csr ( DualCsrBase dual_csr)
inlinestatic

◆ get_csr()

DualCsrBase * gs::BasicFragmentLoader::get_csr ( label_t  src_label_id,
label_t  dst_label_id,
label_t  edge_label_id 
)

◆ GetLFIndexer() [1/2]

IndexerType & gs::BasicFragmentLoader::GetLFIndexer ( label_t  v_label)

◆ GetLFIndexer() [2/2]

const IndexerType & gs::BasicFragmentLoader::GetLFIndexer ( label_t  v_label) const

◆ GetVertexTable()

Table& gs::BasicFragmentLoader::GetVertexTable ( size_t  ind)
inline

◆ init_edge_table()

void gs::BasicFragmentLoader::init_edge_table ( label_t  src_label_id,
label_t  dst_label_id,
label_t  edge_label_id 
)

◆ init_loading_status_file()

void gs::BasicFragmentLoader::init_loading_status_file ( )
private

◆ init_vertex_data()

void gs::BasicFragmentLoader::init_vertex_data ( )
private

◆ LoadFragment()

void gs::BasicFragmentLoader::LoadFragment ( )

◆ PutEdges()

template<typename EDATA_T , typename VECTOR_T >
void gs::BasicFragmentLoader::PutEdges ( label_t  src_label_id,
label_t  dst_label_id,
label_t  edge_label_id,
const std::vector< VECTOR_T > &  edges_vec,
const std::vector< int32_t > &  ie_degree,
const std::vector< int32_t > &  oe_degree,
bool  build_csr_in_mem 
)
inline

◆ set_csr()

void gs::BasicFragmentLoader::set_csr ( label_t  src_label_id,
label_t  dst_label_id,
label_t  edge_label_id,
DualCsrBase dual_csr 
)

◆ SetVertexProperty()

void gs::BasicFragmentLoader::SetVertexProperty ( label_t  v_label,
size_t  col_ind,
vid_t  vid,
Any &&  prop 
)
inline

◆ work_dir()

const std::string& gs::BasicFragmentLoader::work_dir ( ) const
inline

Member Data Documentation

◆ dual_csr_list_

std::vector<DualCsrBase*> gs::BasicFragmentLoader::dual_csr_list_
private

◆ edge_label_num_

size_t gs::BasicFragmentLoader::edge_label_num_
private

◆ ie_

std::vector<CsrBase*> gs::BasicFragmentLoader::ie_
private

◆ lf_indexers_

std::vector<IndexerType> gs::BasicFragmentLoader::lf_indexers_
private

◆ loading_progress_mutex_

std::mutex gs::BasicFragmentLoader::loading_progress_mutex_
private

◆ oe_

std::vector<CsrBase*> gs::BasicFragmentLoader::oe_
private

◆ schema_

const Schema& gs::BasicFragmentLoader::schema_
private

◆ vertex_data_

std::vector<Table> gs::BasicFragmentLoader::vertex_data_
private

◆ vertex_label_num_

size_t gs::BasicFragmentLoader::vertex_label_num_
private

◆ work_dir_

std::string gs::BasicFragmentLoader::work_dir_
private

The documentation for this class was generated from the following files: