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

#include <table.h>

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

Public Member Functions

 Table ()
 
 ~Table ()
 
void init (const std::string &name, const std::string &work_dir, const std::vector< std::string > &col_name, const std::vector< PropertyType > &types, const std::vector< StorageStrategy > &strategies_)
 
void open (const std::string &name, const std::string &snapshot_dir, const std::string &work_dir, const std::vector< std::string > &col_name, const std::vector< PropertyType > &property_types, const std::vector< StorageStrategy > &strategies_)
 
void open_in_memory (const std::string &name, const std::string &snapshot_dir, const std::vector< std::string > &col_name, const std::vector< PropertyType > &property_types, const std::vector< StorageStrategy > &strategies_)
 
void open_with_hugepages (const std::string &name, const std::string &snapshot_dir, const std::vector< std::string > &col_name, const std::vector< PropertyType > &property_types, const std::vector< StorageStrategy > &strategies_, bool force)
 
void touch (const std::string &name, const std::string &work_dir)
 
void copy_to_tmp (const std::string &name, const std::string &snapshot_dir, const std::string &work_dir)
 
void dump (const std::string &name, const std::string &snapshot_dir)
 
void reset_header (const std::vector< std::string > &col_name)
 
std::vector< std::string > column_names () const
 
std::string column_name (size_t index) const
 
int get_column_id_by_name (const std::string &name) const
 
std::vector< PropertyTypecolumn_types () const
 
std::shared_ptr< ColumnBaseget_column (const std::string &name)
 
const std::shared_ptr< ColumnBaseget_column (const std::string &name) const
 
std::vector< Anyget_row (size_t row_id) const
 
std::shared_ptr< ColumnBaseget_column_by_id (size_t index)
 
const std::shared_ptr< ColumnBaseget_column_by_id (size_t index) const
 
size_t col_num () const
 
size_t row_num () const
 
std::vector< std::shared_ptr< ColumnBase > > & columns ()
 
std::vector< ColumnBase * > & column_ptrs ()
 
void insert (size_t index, const std::vector< Any > &values)
 
void insert (size_t index, const std::vector< Any > &values, const std::vector< int32_t > &col_ind_mapping)
 
void resize (size_t row_num)
 
Any at (size_t row_id, size_t col_id)
 
Any at (size_t row_id, size_t col_id) const
 
void ingest (uint32_t index, grape::OutArchive &arc)
 
void close ()
 

Private Member Functions

void buildColumnPtrs ()
 
void initColumns (const std::vector< std::string > &col_name, const std::vector< PropertyType > &types, const std::vector< StorageStrategy > &strategies_)
 

Private Attributes

IdIndexer< std::string, int > col_id_indexer_
 
std::vector< std::shared_ptr< ColumnBase > > columns_
 
std::vector< ColumnBase * > column_ptrs_
 
bool touched_
 

Constructor & Destructor Documentation

◆ Table()

gs::Table::Table ( )

◆ ~Table()

gs::Table::~Table ( )

Member Function Documentation

◆ at() [1/2]

Any gs::Table::at ( size_t  row_id,
size_t  col_id 
)

◆ at() [2/2]

Any gs::Table::at ( size_t  row_id,
size_t  col_id 
) const

◆ buildColumnPtrs()

void gs::Table::buildColumnPtrs ( )
private

◆ close()

void gs::Table::close ( )

◆ col_num()

size_t gs::Table::col_num ( ) const

◆ column_name()

std::string gs::Table::column_name ( size_t  index) const

◆ column_names()

std::vector< std::string > gs::Table::column_names ( ) const

◆ column_ptrs()

std::vector< ColumnBase * > & gs::Table::column_ptrs ( )

◆ column_types()

std::vector< PropertyType > gs::Table::column_types ( ) const

◆ columns()

std::vector< std::shared_ptr< ColumnBase > > & gs::Table::columns ( )

◆ copy_to_tmp()

void gs::Table::copy_to_tmp ( const std::string &  name,
const std::string &  snapshot_dir,
const std::string &  work_dir 
)

◆ dump()

void gs::Table::dump ( const std::string &  name,
const std::string &  snapshot_dir 
)

◆ get_column() [1/2]

std::shared_ptr< ColumnBase > gs::Table::get_column ( const std::string &  name)

◆ get_column() [2/2]

const std::shared_ptr< ColumnBase > gs::Table::get_column ( const std::string &  name) const

◆ get_column_by_id() [1/2]

std::shared_ptr< ColumnBase > gs::Table::get_column_by_id ( size_t  index)

◆ get_column_by_id() [2/2]

const std::shared_ptr< ColumnBase > gs::Table::get_column_by_id ( size_t  index) const

◆ get_column_id_by_name()

int gs::Table::get_column_id_by_name ( const std::string &  name) const

◆ get_row()

std::vector< Any > gs::Table::get_row ( size_t  row_id) const

◆ ingest()

void gs::Table::ingest ( uint32_t  index,
grape::OutArchive &  arc 
)

◆ init()

void gs::Table::init ( const std::string &  name,
const std::string &  work_dir,
const std::vector< std::string > &  col_name,
const std::vector< PropertyType > &  types,
const std::vector< StorageStrategy > &  strategies_ 
)

◆ initColumns()

void gs::Table::initColumns ( const std::vector< std::string > &  col_name,
const std::vector< PropertyType > &  types,
const std::vector< StorageStrategy > &  strategies_ 
)
private

◆ insert() [1/2]

void gs::Table::insert ( size_t  index,
const std::vector< Any > &  values 
)

◆ insert() [2/2]

void gs::Table::insert ( size_t  index,
const std::vector< Any > &  values,
const std::vector< int32_t > &  col_ind_mapping 
)

◆ open()

void gs::Table::open ( const std::string &  name,
const std::string &  snapshot_dir,
const std::string &  work_dir,
const std::vector< std::string > &  col_name,
const std::vector< PropertyType > &  property_types,
const std::vector< StorageStrategy > &  strategies_ 
)

◆ open_in_memory()

void gs::Table::open_in_memory ( const std::string &  name,
const std::string &  snapshot_dir,
const std::vector< std::string > &  col_name,
const std::vector< PropertyType > &  property_types,
const std::vector< StorageStrategy > &  strategies_ 
)

◆ open_with_hugepages()

void gs::Table::open_with_hugepages ( const std::string &  name,
const std::string &  snapshot_dir,
const std::vector< std::string > &  col_name,
const std::vector< PropertyType > &  property_types,
const std::vector< StorageStrategy > &  strategies_,
bool  force 
)

◆ reset_header()

void gs::Table::reset_header ( const std::vector< std::string > &  col_name)

◆ resize()

void gs::Table::resize ( size_t  row_num)

◆ row_num()

size_t gs::Table::row_num ( ) const

◆ touch()

void gs::Table::touch ( const std::string &  name,
const std::string &  work_dir 
)

Member Data Documentation

◆ col_id_indexer_

IdIndexer<std::string, int> gs::Table::col_id_indexer_
private

◆ column_ptrs_

std::vector<ColumnBase*> gs::Table::column_ptrs_
private

◆ columns_

std::vector<std::shared_ptr<ColumnBase> > gs::Table::columns_
private

◆ touched_

bool gs::Table::touched_
private

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