OoOJoin  0.0.1
The next generation of out-of-order join operator
OoOJoin::AbstractJoinAlgo Class Reference

The abstraction to describe a join algorithm, providing virtual function of join. More...

#include <JoinAlgos/AbstractJoinAlgo.h>

Inheritance diagram for OoOJoin::AbstractJoinAlgo:
Collaboration diagram for OoOJoin::AbstractJoinAlgo:

Public Member Functions

virtual bool setConfig (ConfigMapPtr cfg)
 Set the config map related to this Algorithm. More...
 
virtual size_t join (C20Buffer< OoOJoin::TrackTuplePtr > windS, C20Buffer< OoOJoin::TrackTuplePtr > windR, int threads=1)
 The function to execute join,. More...
 
void setAlgoName (std::string name)
 set the name of algorithm More...
 
std::string getAlgoName ()
 get the name of algorithm More...
 
void syncTimeStruct (struct timeval tv)
 Synchronize the time structure with outside setting. More...
 

Public Attributes

ConfigMapPtr config
 

Protected Attributes

std::string nameTag
 
struct timeval timeBaseStruct
 

Detailed Description

The abstraction to describe a join algorithm, providing virtual function of join.

Member Function Documentation

◆ getAlgoName()

std::string OoOJoin::AbstractJoinAlgo::getAlgoName ( )
inline

get the name of algorithm

Returns
The name

◆ join()

size_t OoOJoin::AbstractJoinAlgo::join ( C20Buffer< OoOJoin::TrackTuplePtr windS,
C20Buffer< OoOJoin::TrackTuplePtr windR,
int  threads = 1 
)
virtual

The function to execute join,.

Parameters
windSThe window of S tuples
windRThe window of R tuples
threadsThe threads for executing this join
Returns
The joined tuples
Note
Please at least mark the final processed time at rTuples

Reimplemented in OoOJoin::NPJSingle, OoOJoin::NPJ, and OoOJoin::NestedLoopJoin.

◆ setAlgoName()

void OoOJoin::AbstractJoinAlgo::setAlgoName ( std::string  name)
inline

set the name of algorithm

Parameters
nameAlgorithm name

◆ setConfig()

bool OoOJoin::AbstractJoinAlgo::setConfig ( INTELLI::ConfigMapPtr  cfg)
virtual

Set the config map related to this Algorithm.

Parameters
cfgThe config map
Returns
bool whether the config is successfully set

◆ syncTimeStruct()

void OoOJoin::AbstractJoinAlgo::syncTimeStruct ( struct timeval  tv)
inline

Synchronize the time structure with outside setting.

Parameters
tvThe outside time structure

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