SwatDB
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
IndexNLJ Class Reference

#include <indexNLJ.h>

Inheritance diagram for IndexNLJ:
Inheritance graph
[legend]
Collaboration diagram for IndexNLJ:
Collaboration graph
[legend]

Public Member Functions

 IndexNLJ (FileId outer_id, FileId inner_id, FileId inner_index_id, FileId result_id, std::vector< FieldId > outer_fields, std::vector< FieldId > inner_fields, Catalog *catalog)
 Constructor for Index Nested Loop Join operation.
 
void runOperation ()
 Runs the operation.

 
- Public Member Functions inherited from 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 ()
 Destructor for the Join Operation.
 
- Public Member Functions inherited from Operation
 Operation (FileId result_id, Catalog *catalog)
 Constructor for the Operation class. Because Operation is an abstract class, an object cannot be created, but this constructor is used by derived classes.
 
virtual ~Operation ()
 Destructor for the Operation class. Cleans up dynamic memory in result state.
 

Protected Attributes

HashIndexFileindex_file
 
- Protected Attributes inherited from Join
fileState outer
 
fileState inner
 
std::vector< FieldIdouter_fields
 
std::vector< FieldIdinner_fields
 
- Protected Attributes inherited from Operation
fileState result_state
 
Catalogcatalog
 

Additional Inherited Members

- Protected Member Functions inherited from Operation
void _initState (FileId file_id, std::vector< FieldId > fields, fileState *state)
 Performs the file and temporary record setup for relational operators.
 
void _delState (fileState *file_state)
 Deletes objects created in relop structs.
 

Detailed Description

IndexNLJ: index nested loop join class derived from Join

Constructor & Destructor Documentation

◆ IndexNLJ()

IndexNLJ::IndexNLJ ( FileId  outer_id,
FileId  inner_id,
FileId  inner_index_id,
FileId  result_id,
std::vector< FieldId outer_fields,
std::vector< FieldId inner_fields,
Catalog catalog 
)

Constructor for Index Nested Loop Join operation.

Parameters
outer_id.FileId of the outer relation file.
inner_id.FileId of the inner relation file.
inner_index_id.FileId of the index for the inner relation file.
result_idFileId of the result file.
outer_fields.Vector of FieldIds corresponding to the join fields in outer_rel
inner_fields.Vector of FieldIds corresponding to the join fields in inner_rel

Member Function Documentation

◆ runOperation()

void IndexNLJ::runOperation ( )
virtual

Runs the operation.

Precondition
Valid files and parameters have been passed to the contructor.
Postcondition
Result file has been populated with records that meet the criteria of the operation.

Implements Operation.


The documentation for this class was generated from the following file: