SwatDB
Loading...
Searching...
No Matches
include
join.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 Swarthmore College Computer Science Department
7
* Swarthmore PA, Professors Tia Newhall, Ameet Soni
8
*/
9
10
#ifndef _SWATDB_JOIN_H_
11
#define _SWATDB_JOIN_H_
12
18
#include <string>
19
#include <vector>
20
#include "
swatdb_types.h
"
21
#include "
operation.h
"
22
23
24
class
Catalog
;
25
class
Schema
;
26
class
File
;
27
class
RelationFile
;
28
class
HeapFile
;
29
class
HeapFileScanner
;
30
class
Record
;
31
class
Data
;
32
class
Key
;
33
34
35
// @@@@ SWATDB_ASSIGNMENT: NOTEMSG Do not modify this definition
36
37
class
Join
:
public
Operation
{
38
39
public
:
40
54
Join
(
FileId
outer_id,
FileId
inner_id,
FileId
result_id,
55
std::vector<FieldId>
outer_fields
, std::vector<FieldId>
inner_fields
,
56
Catalog
*catalog);
57
61
~Join
();
62
63
64
protected
:
65
/*
66
* FileState struct for the outer relation
67
*/
68
fileState
outer;
69
70
/*
71
* FileState struct for the inner relation
72
*/
73
fileState
inner;
74
78
std::vector<FieldId>
outer_fields
;
79
83
std::vector<FieldId>
inner_fields
;
84
85
};
86
87
#endif
Catalog
Definition
catalog.h:161
Data
Definition
data.h:26
File
Definition
file.h:45
HeapFileScanner
Definition
heapfilescanner.h:39
HeapFile
Definition
heapfile.h:76
Join
Definition
join.h:37
Join::~Join
~Join()
Destructor for the Join Operation.
Join::Join
Join(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.
Join::inner_fields
std::vector< FieldId > inner_fields
Definition
join.h:83
Join::outer_fields
std::vector< FieldId > outer_fields
Definition
join.h:78
Key
Definition
key.h:38
Operation
Definition
operation.h:74
Record
Definition
record.h:34
RelationFile
Definition
relationfile.h:32
Schema
Definition
schema.h:37
operation.h
fileState
Definition
operation.h:40
swatdb_types.h
FileId
std::uint32_t FileId
Definition
swatdb_types.h:33
Generated by
1.9.8