taco-db  0.1.0
TableBulkLoadIterator.h
Go to the documentation of this file.
1 #ifndef INDEX_TABLEBULKLOADITERATOR_H
2 #define INDEX_TABLEBULKLOADITERATOR_H
3 
4 #include "tdb.h"
5 
6 #include "catalog/IndexDesc.h"
8 #include "storage/Table.h"
9 
10 namespace taco {
11 
13 public:
14  TableBulkLoadIterator(std::shared_ptr<const IndexDesc> idxdesc,
15  Table::Iterator &&iter);
16 
17  bool Next() override;
18 
19  void EndScan() override;
20 
21 private:
22  std::shared_ptr<const IndexDesc> m_idxdesc;
24  std::vector<Datum> m_data;
25 };
26 
27 } // namespace taco
28 
29 #endif // INDEX_TABLEBULKLOADITERATOR_H
BulkLoadIterator is an interface for providing (key, RecordId) pairs for index bulk loading.
Definition: BulkLoadIterator.h:17
Definition: TableBulkLoadIterator.h:12
TableBulkLoadIterator(std::shared_ptr< const IndexDesc > idxdesc, Table::Iterator &&iter)
Definition: TableBulkLoadIterator.cpp:5
Table::Iterator m_iter
Definition: TableBulkLoadIterator.h:23
void EndScan() override
Ends the scan.
Definition: TableBulkLoadIterator.cpp:50
std::vector< Datum > m_data
Definition: TableBulkLoadIterator.h:24
bool Next() override
Subclass should override the Next() function for moving to the next (key, record id) pair.
Definition: TableBulkLoadIterator.cpp:20
std::shared_ptr< const IndexDesc > m_idxdesc
Definition: TableBulkLoadIterator.h:22
The Iterator interface for scanning the heap file.
Definition: Table.h:185
Definition: datum.h:28