![]() |
mutable
A Database System for Research and Fast Prototyping
|
This is an interface for factories that compute particular DataLayouts for a given sequence of Types, e.g.
More...
#include <DataLayoutFactory.hpp>
Public Member Functions | |
| virtual | ~DataLayoutFactory () |
| virtual std::unique_ptr< DataLayoutFactory > | clone () const =0 |
Creates and returns a deep copy of this. | |
| DataLayout | make (const Schema &schema, std::size_t num_tuples=0) const |
Returns a DataLayout for the given Types contained in schema and length num_tuples. | |
| template<typename It > | |
| DataLayout | make (It begin, It end, std::size_t num_tuples=0) const |
Returns a DataLayout for the given Types in the range from begin to end and length num_tuples. | |
| virtual DataLayout | make (std::vector< const Type * > types, std::size_t num_tuples=0) const =0 |
Returns a DataLayout for the given types and length num_tuples (0 means infinite layout). | |
| void | dump (std::ostream &out) const |
| void | dump () const |
Private Member Functions | |
| virtual void | print (std::ostream &out) const =0 |
Friends | |
| M_EXPORT std::ostream & | operator<< (std::ostream &out, const DataLayoutFactory &factory) |
This is an interface for factories that compute particular DataLayouts for a given sequence of Types, e.g.
row layout or PAX.
Definition at line 16 of file DataLayoutFactory.hpp.
|
inlinevirtual |
Definition at line 18 of file DataLayoutFactory.hpp.
|
pure virtual |
Creates and returns a deep copy of this.
Implemented in m::storage::RowLayoutFactory, and m::storage::PAXLayoutFactory.
Referenced by write_result_set().
| void DataLayoutFactory::dump | ( | ) | const |
| void DataLayoutFactory::dump | ( | std::ostream & | out | ) | const |
Definition at line 18 of file DataLayoutFactory.cpp.
|
inline |
Returns a DataLayout for the given Types contained in schema and length num_tuples.
Definition at line 24 of file DataLayoutFactory.hpp.
References m::Schema::cbegin(), m::Schema::cend(), and make().
Referenced by m::ConcreteTable::layout(), and make().
|
inline |
Returns a DataLayout for the given Types in the range from begin to end and length num_tuples.
Definition at line 31 of file DataLayoutFactory.hpp.
References make().
|
pure virtual |
Returns a DataLayout for the given types and length num_tuples (0 means infinite layout).
Implemented in m::storage::RowLayoutFactory, m::storage::PAXLayoutFactory, m::storage::RowLayoutFactory, and m::storage::PAXLayoutFactory.
|
privatepure virtual |
Implemented in m::storage::RowLayoutFactory, and m::storage::PAXLayoutFactory.
|
friend |