Column-oriented GPU-accelerated Database Management System
CoGaDB
|
#include <binary_operator.hpp>
Public Types | |
typedef OperatorMapper_Helper_Template < OperatorOutputType > ::TypedOperatorPtr | TypedOperatorPtr |
typedef OperatorMapper_Helper_Template < OperatorOutputType > ::TypedNodePtr | TypedNodePtr |
Public Member Functions | |
BinaryOperator (const hype::SchedulingDecision &sched_dec, boost::shared_ptr< TypedOperator< OperatorInputTypeLeftChild > > left_child, boost::shared_ptr< TypedOperator< OperatorInputTypeRightChild > > right_child) | |
virtual | ~BinaryOperator () |
OperatorInputTypeLeftChild | getInputDataLeftChild () |
OperatorInputTypeRightChild | getInputDataRightChild () |
virtual bool | run () |
virtual void | print (unsigned int tree_level) const |
virtual void | printResult (unsigned int tree_level) const |
virtual double | getRecursiveExecutionTimeInNanoseconds () |
Private Attributes | |
double | timeNeeded |
double | timeEstimated |
boost::shared_ptr < TypedOperator < OperatorInputTypeLeftChild > > | left_child_ |
boost::shared_ptr < TypedOperator < OperatorInputTypeRightChild > > | right_child_ |
typedef OperatorMapper_Helper_Template<OperatorOutputType>::TypedNodePtr hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::TypedNodePtr |
typedef OperatorMapper_Helper_Template<OperatorOutputType>::TypedOperatorPtr hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::TypedOperatorPtr |
Reimplemented in CoGaDB::query_processing::physical_operator::GPU_Join_Operator, CoGaDB::query_processing::physical_operator::CPU_HashJoin_Operator, CoGaDB::query_processing::physical_operator::CPU_SortMergeJoin_Operator, CoGaDB::query_processing::physical_operator::ColumnComparatorOperation, CoGaDB::query_processing::physical_operator::CPU_PositionList_Operator, CoGaDB::query_processing::physical_operator::CPU_ColumnAlgebraOperation, CoGaDB::query_processing::physical_operator::CPU_CrossJoin_Operator, and CoGaDB::query_processing::physical_operator::CPU_NestedLoopJoin_Operator.
hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::BinaryOperator | ( | const hype::SchedulingDecision & | sched_dec, |
boost::shared_ptr< TypedOperator< OperatorInputTypeLeftChild > > | left_child, | ||
boost::shared_ptr< TypedOperator< OperatorInputTypeRightChild > > | right_child | ||
) | [inline] |
virtual hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::~BinaryOperator | ( | ) | [inline, virtual] |
OperatorInputTypeLeftChild hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::getInputDataLeftChild | ( | ) | [inline] |
OperatorInputTypeRightChild hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::getInputDataRightChild | ( | ) | [inline] |
virtual double hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::getRecursiveExecutionTimeInNanoseconds | ( | ) | [inline, virtual] |
Implements hype::queryprocessing::Operator.
virtual void hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::print | ( | unsigned int | tree_level | ) | const [inline, virtual] |
virtual void hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::printResult | ( | unsigned int | tree_level | ) | const [inline, virtual] |
virtual bool hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::run | ( | ) | [inline, virtual] |
boost::shared_ptr<TypedOperator<OperatorInputTypeLeftChild> > hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::left_child_ [private] |
Referenced by hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::getInputDataLeftChild(), hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::getRecursiveExecutionTimeInNanoseconds(), hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::print(), hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::printResult(), and hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::run().
boost::shared_ptr<TypedOperator<OperatorInputTypeRightChild> > hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::right_child_ [private] |
Referenced by hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::getInputDataRightChild(), hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::getRecursiveExecutionTimeInNanoseconds(), hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::print(), hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::printResult(), and hype::queryprocessing::BinaryOperator< TablePtr, TablePtr, TablePtr >::run().
double hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::timeEstimated [private] |
double hype::queryprocessing::BinaryOperator< OperatorInputTypeLeftChild, OperatorInputTypeRightChild, OperatorOutputType >::timeNeeded [private] |