9 #ifndef _JOINALGO_JOINALGOTABLE_H_ 
   10 #define _JOINALGO_JOINALGOTABLE_H_ 
   21   vector<AbstractJoinAlgoPtr> algos;
 
   33     if (idx < algos.size()) {
 
   44     size_t maxIdx = algos.size();
 
   45     for (
size_t i = 0; i < maxIdx; i++) {
 
   46       if (algos[i]->getAlgoName() == name) {
 
   58     algos.push_back(anew);
 
   59     return algos.size() - 1;
 
   63 typedef std::shared_ptr<JoinAlgoTable> JoinAlgoTablePtr;
 
   64 #define  newJoinAlgoTable() make_shared<JoinAlgoTable>() 
The table contains all supported algos.
Definition: JoinAlgoTable.h:19
 
AbstractJoinAlgoPtr findAlgo(string name)
find a algorithm in the table according to its index
Definition: JoinAlgoTable.h:43
 
size_t registerNewAlgo(AbstractJoinAlgoPtr anew)
To register a new algorithm.
Definition: JoinAlgoTable.h:57
 
AbstractJoinAlgoPtr findAlgo(size_t idx)
find a algorithm in the table according to its index
Definition: JoinAlgoTable.h:32
 
join_algo_index_t
The system default index for join algorithms.
Definition: JoinAlgoTable.h:70
 
Definition: DatasetTool.h:10
 
@ JOINALGO_NESTEDLOOP
Definition: JoinAlgoTable.h:78
 
@ JOINALGO_NULL
Definition: JoinAlgoTable.h:74
 
@ JOINALGO_NPJ
Definition: JoinAlgoTable.h:82
 
@ JOINALGO_NPJ_SINGLE
Definition: JoinAlgoTable.h:86