OmniSciDB  c07336695a
Planner::MergeAppend Class Reference

#include <Planner.h>

+ Inheritance diagram for Planner::MergeAppend:
+ Collaboration diagram for Planner::MergeAppend:

Public Member Functions

 MergeAppend (const std::vector< std::shared_ptr< Analyzer::TargetEntry >> &t, const std::list< std::shared_ptr< Analyzer::Expr >> &q, double c, Plan *p, std::list< std::unique_ptr< Plan >> &pl, const std::list< Analyzer::OrderEntry > &oe)
 
const std::list< std::unique_ptr< Plan > > & get_mergeplan_list () const
 
const std::list< Analyzer::OrderEntry > & get_order_entries () const
 
void print () const override
 
- Public Member Functions inherited from Planner::Plan
 Plan (const std::vector< std::shared_ptr< Analyzer::TargetEntry >> &t, const std::list< std::shared_ptr< Analyzer::Expr >> &q, double c, Plan *p)
 
 Plan (const std::vector< std::shared_ptr< Analyzer::TargetEntry >> &t, double c, Plan *p)
 
 Plan ()
 
 Plan (const std::vector< std::shared_ptr< Analyzer::TargetEntry >> &t)
 
virtual ~Plan ()
 
const std::vector< std::shared_ptr< Analyzer::TargetEntry > > & get_targetlist () const
 
const std::list< std::shared_ptr< Analyzer::Expr > > & get_quals () const
 
double get_cost () const
 
const Planget_child_plan () const
 
void add_tle (std::shared_ptr< Analyzer::TargetEntry > tle)
 
void set_targetlist (const std::vector< std::shared_ptr< Analyzer::TargetEntry >> &t)
 

Private Attributes

std::list< std::unique_ptr< Plan > > mergeplan_list
 
std::list< Analyzer::OrderEntryorder_entries
 

Additional Inherited Members

- Protected Attributes inherited from Planner::Plan
std::vector< std::shared_ptr< Analyzer::TargetEntry > > targetlist
 
std::list< std::shared_ptr< Analyzer::Expr > > quals
 
double cost
 
std::unique_ptr< Planchild_plan
 

Detailed Description

Definition at line 218 of file Planner.h.

Constructor & Destructor Documentation

◆ MergeAppend()

Planner::MergeAppend::MergeAppend ( const std::vector< std::shared_ptr< Analyzer::TargetEntry >> &  t,
const std::list< std::shared_ptr< Analyzer::Expr >> &  q,
double  c,
Plan p,
std::list< std::unique_ptr< Plan >> &  pl,
const std::list< Analyzer::OrderEntry > &  oe 
)
inline

Definition at line 220 of file Planner.h.

226  : Plan(t, q, c, p), mergeplan_list(std::move(pl)), order_entries(oe) {}
std::list< Analyzer::OrderEntry > order_entries
Definition: Planner.h:237
void c(const std::string &query_string, const ExecutorDeviceType device_type)
std::list< std::unique_ptr< Plan > > mergeplan_list
Definition: Planner.h:236

Member Function Documentation

◆ get_mergeplan_list()

const std::list<std::unique_ptr<Plan> >& Planner::MergeAppend::get_mergeplan_list ( ) const
inline

Definition at line 227 of file Planner.h.

227  {
228  return mergeplan_list;
229  }
std::list< std::unique_ptr< Plan > > mergeplan_list
Definition: Planner.h:236

◆ get_order_entries()

const std::list<Analyzer::OrderEntry>& Planner::MergeAppend::get_order_entries ( ) const
inline

Definition at line 230 of file Planner.h.

References Planner::Plan::print().

230  {
231  return order_entries;
232  }
std::list< Analyzer::OrderEntry > order_entries
Definition: Planner.h:237
+ Here is the call graph for this function:

◆ print()

void Planner::MergeAppend::print ( ) const
overridevirtual

Reimplemented from Planner::Plan.

Definition at line 431 of file Planner.cpp.

431  {
432  std::cout << "(MergeAppend" << std::endl;
433  for (const auto& p : mergeplan_list) {
434  p->print();
435  }
436  std::cout << ")" << std::endl;
437 }
std::list< std::unique_ptr< Plan > > mergeplan_list
Definition: Planner.h:236

Member Data Documentation

◆ mergeplan_list

std::list<std::unique_ptr<Plan> > Planner::MergeAppend::mergeplan_list
private

Definition at line 236 of file Planner.h.

◆ order_entries

std::list<Analyzer::OrderEntry> Planner::MergeAppend::order_entries
private

Definition at line 237 of file Planner.h.


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