SwatDB
Loading...
Searching...
No Matches
tupleNLJ.h
Go to the documentation of this file.
1/*
2 * SwatDB
3 *
4 * @authors: See Contributors.doc for code contributors
5 *
6 * Copyright (c) 2020, 2025 Swarthmore College Computer Science Department
7 * Swarthmore PA, Professors Tia Newhall, Ameet Soni
8 */
9
10// @@@@ SWATDB_ASSIGNMENT: ADDTODODATE
11
12#ifndef _SWATDB_TUPLENLJJOIN_H_
13#define _SWATDB_TUPLENLJJOIN_H_
14
15
16
21#include <string>
22#include <vector>
23#include "swatdb_types.h"
24#include "join.h"
25
26class FileManager;
27class Catalog;
28class Schema;
29class File;
30class RelationFile;
31class HeapFile;
32class HeapFileScanner;
33class Record;
34class Data;
35class Key;
36class SearchKeyFormat;
37
38
39// @@@@ SWATDB_ASSIGNMENT: NOTEMSG Do not modify this definition, you may add private helper methods only
40
44class TupleNLJ : public Join {
45
46 public:
47
61 TupleNLJ(FileId outer_id, FileId inner_id, FileId result_id,
62 std::vector<FieldId> outer_fields, std::vector<FieldId> inner_fields,
63 Catalog *catalog);
64
69
77 void runOperation();
78
79};
80
81#endif
Definition catalog.h:161
Definition data.h:26
Definition filemgr.h:32
Definition file.h:45
Definition heapfilescanner.h:39
Definition heapfile.h:76
Definition join.h:37
std::vector< FieldId > inner_fields
Definition join.h:83
std::vector< FieldId > outer_fields
Definition join.h:78
Definition key.h:38
Definition record.h:34
Definition relationfile.h:32
Definition schema.h:37
Definition searchkeyformat.h:32
Definition tupleNLJ.h:44
~TupleNLJ()
Destructor for TupleNLJ. Deletes dynamic member variables.
TupleNLJ(FileId outer_id, FileId inner_id, FileId result_id, std::vector< FieldId > outer_fields, std::vector< FieldId > inner_fields, Catalog *catalog)
Constructor for Join operation. Join subclasses use this constructor.
void runOperation()
Runs the operation.
std::uint32_t FileId
Definition swatdb_types.h:33