OoOJoin  0.0.1
The next generation of out-of-order join operator
DataLoaderTable.h
Go to the documentation of this file.
1 
2 //
3 // Created by tony on 29/12/22.
4 //
5 
6 #ifndef _INCLUDE_TESTBENCH_DATALOADERTABLE_H_
7 #define _INCLUDE_TESTBENCH_DATALOADERTABLE_H_
8 #include <map>
10 using namespace INTELLI;
11 namespace OoOJoin {
12 
13 
30  protected:
31  std::map<std::string, AbstractDataLoaderPtr> loaderMap;
32  public:
38  ~DataLoaderTable() {
39  }
45  void registerNewDataLoader(AbstractDataLoaderPtr dnew, std::string tag) {
46  loaderMap[tag] = dnew;
47  }
54  if (loaderMap.count(name)) {
55  return loaderMap[name];
56  }
57  return nullptr;
58  }
59 };
60 
66 typedef std::shared_ptr<class DataLoaderTable> DataLoaderTablePtr;
72 #define newDataLoaderTable std::make_shared<OoOJoin::DataLoaderTable>
76 }
77 #endif //INTELLISTREAM_INCLUDE_TESTBENCH_DATALOADERTABLE_H_
The entity of DataLoaderTable, can used for searching all available DataLoaders.
Definition: DataLoaderTable.h:29
AbstractDataLoaderPtr findDataLoader(std::string name)
find a dataloader in the table according to its name
Definition: DataLoaderTable.h:53
void registerNewDataLoader(AbstractDataLoaderPtr dnew, std::string tag)
To register a new loader.
Definition: DataLoaderTable.h:45
std::shared_ptr< class AbstractDataLoader > AbstractDataLoaderPtr
The class to describe a shared pointer to AbstractDataLoader.
Definition: AbstractDataLoader.h:88
Definition: OperatorTable.cpp:7