Hybrid Query Processing Engine for Coprocessing in Database Systems
HyPE
hype::queryprocessing::LogicalQueryPlan< Type > Class Template Reference

#include <logical_query_plan.hpp>

List of all members.

Public Types

typedef Type NodeElementType
typedef
OperatorMapper_Helper_Template
< Type >
::Physical_Operator_Map 
Physical_Operator_Map
typedef
OperatorMapper_Helper_Template
< Type >::TypedOperatorPtr 
TypedOperatorPtr
typedef
OperatorMapper_Helper_Template
< Type >::TypedNodePtr 
TypedNodePtr
typedef
OperatorMapper_Helper_Template
< Type >::PhysicalQueryPlanPtr 
PhysicalQueryPlanPtr

Public Member Functions

 LogicalQueryPlan (TypedNodePtr root)
const PhysicalQueryPlanPtr convertToPhysicalQueryPlan ()
const PhysicalQueryPlanPtr runChoppedPlan ()
template<class UnaryFunction >
UnaryFunction traverse (UnaryFunction f)
template<class UnaryFunction >
UnaryFunction query_chopping_traversal (UnaryFunction f)
template<class UnaryFunction >
UnaryFunction reverse_traverse (UnaryFunction f)
template<class UnaryFunction >
UnaryFunction traverse_inorder (UnaryFunction f, TypedNodePtr node)
template<class UnaryFunction >
UnaryFunction traverse_inorder (UnaryFunction f)
std::list< TypedNodePtrgetLevelOrder ()
template<class UnaryFunction >
UnaryFunction traverse_preorder (UnaryFunction f)
void print ()

Static Public Member Functions

template<class UnaryFunction >
static void chop (UnaryFunction *f, TypedNodePtr nodePtr)

Private Attributes

TypedNodePtr root_

Detailed Description

template<typename Type>
class hype::queryprocessing::LogicalQueryPlan< Type >

Definition at line 121 of file logical_query_plan.hpp.


Member Typedef Documentation

template<typename Type >
typedef Type hype::queryprocessing::LogicalQueryPlan< Type >::NodeElementType

Definition at line 123 of file logical_query_plan.hpp.

Definition at line 126 of file logical_query_plan.hpp.

Definition at line 125 of file logical_query_plan.hpp.


Constructor & Destructor Documentation

template<typename Type >
hype::queryprocessing::LogicalQueryPlan< Type >::LogicalQueryPlan ( TypedNodePtr  root) [inline]

Definition at line 129 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::root_, and hype::queryprocessing::LogicalQueryPlan< Type >::traverse().

Here is the call graph for this function:


Member Function Documentation

template<typename Type >
template<class UnaryFunction >
static void hype::queryprocessing::LogicalQueryPlan< Type >::chop ( UnaryFunction *  f,
TypedNodePtr  nodePtr 
) [inline, static]

Definition at line 193 of file logical_query_plan.hpp.

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::query_chopping_traversal().

Here is the caller graph for this function:

template<typename Type >
std::list<TypedNodePtr> hype::queryprocessing::LogicalQueryPlan< Type >::getLevelOrder ( ) [inline]

Definition at line 236 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::root_.

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::reverse_traverse().

Here is the caller graph for this function:

template<typename Type >
void hype::queryprocessing::LogicalQueryPlan< Type >::print ( ) [inline]

Definition at line 292 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::traverse_preorder().

Here is the call graph for this function:

template<typename Type >
template<class UnaryFunction >
UnaryFunction hype::queryprocessing::LogicalQueryPlan< Type >::query_chopping_traversal ( UnaryFunction  f) [inline]

Definition at line 187 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::chop(), and hype::queryprocessing::LogicalQueryPlan< Type >::root_.

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::runChoppedPlan().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Type >
template<class UnaryFunction >
UnaryFunction hype::queryprocessing::LogicalQueryPlan< Type >::reverse_traverse ( UnaryFunction  f) [inline]

Definition at line 208 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::getLevelOrder().

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::convertToPhysicalQueryPlan().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename Type >
template<class UnaryFunction >
UnaryFunction hype::queryprocessing::LogicalQueryPlan< Type >::traverse ( UnaryFunction  f) [inline]

Definition at line 154 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::root_.

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::LogicalQueryPlan().

Here is the caller graph for this function:

template<typename Type >
template<class UnaryFunction >
UnaryFunction hype::queryprocessing::LogicalQueryPlan< Type >::traverse_inorder ( UnaryFunction  f,
TypedNodePtr  node 
) [inline]

Definition at line 222 of file logical_query_plan.hpp.

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::traverse_inorder().

Here is the caller graph for this function:

template<typename Type >
template<class UnaryFunction >
UnaryFunction hype::queryprocessing::LogicalQueryPlan< Type >::traverse_inorder ( UnaryFunction  f) [inline]
template<typename Type >
template<class UnaryFunction >
UnaryFunction hype::queryprocessing::LogicalQueryPlan< Type >::traverse_preorder ( UnaryFunction  f) [inline]

Definition at line 270 of file logical_query_plan.hpp.

References hype::queryprocessing::LogicalQueryPlan< Type >::root_.

Referenced by hype::queryprocessing::LogicalQueryPlan< Type >::print().

Here is the caller graph for this function:


Member Data Documentation


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines