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

The class to describe a simplest window. More...

#include <Common/Window.h>

Collaboration diagram for OoOJoin::Window:

Public Member Functions

 Window ()
 default creator
 
 Window (tsType ts, tsType te)
 vreator with range, call setRange More...
 
void setRange (tsType ts, tsType te)
 To set the range of this window. More...
 
void init (size_t sLen, size_t rLen, size_t _sysId)
 init window with buffer/queue length and id More...
 
bool feedTupleS (TrackTuplePtr ts)
 feed a tuple s into the window More...
 
bool feedTupleR (TrackTuplePtr tr)
 feed a tuple R into the window More...
 
bool reset (void)
 reset the window, clear all tuples More...
 
tsType getStart ()
 get the start time of window More...
 
tsType getEnd ()
 get the end time of window More...
 

Public Attributes

INTELLI::C20Buffer< OoOJoin::TrackTuplePtrwindowS
 
INTELLI::C20Buffer< OoOJoin::TrackTuplePtrwindowR
 

Protected Attributes

size_t windowID = 0
 The unique ID in system, used only for multiple window case.
 
tsType startTime = 0
 The start time (event) of this window.
 
tsType endTime = 0
 The end time (event) of this window.
 

Detailed Description

The class to describe a simplest window.

Note
Must init before feed

Constructor & Destructor Documentation

◆ Window()

OoOJoin::Window::Window ( OoOJoin::tsType  ts,
OoOJoin::tsType  te 
)

vreator with range, call setRange

Parameters
tsThe start time
teThe end time

Member Function Documentation

◆ feedTupleR()

bool OoOJoin::Window::feedTupleR ( OoOJoin::TrackTuplePtr  tr)

feed a tuple R into the window

Parameters
trThe tuple
Warning
The current version is simplified and assuming only used in SINGLE THREAD!
Returns
bool, whether tuple is fed.

◆ feedTupleS()

bool OoOJoin::Window::feedTupleS ( OoOJoin::TrackTuplePtr  ts)

feed a tuple s into the window

Parameters
tsThe tuple
Warning
The current version is simplified and assuming only used in SINGLE THREAD!
Returns
bool, whether tuple is fed.

◆ getEnd()

tsType OoOJoin::Window::getEnd ( )
inline

get the end time of window

Returns
the end time

◆ getStart()

tsType OoOJoin::Window::getStart ( )
inline

get the start time of window

Returns
the start time

◆ init()

void OoOJoin::Window::init ( size_t  sLen,
size_t  rLen,
size_t  _sysId 
)

init window with buffer/queue length and id

Parameters
sLenThe length of S queue and/or buffer
rLenThe length of S queue and/or buffer
_sysIdThe system id

◆ reset()

bool OoOJoin::Window::reset ( void  )

reset the window, clear all tuples

Returns
bool, whether reset is done

◆ setRange()

void OoOJoin::Window::setRange ( OoOJoin::tsType  ts,
OoOJoin::tsType  te 
)

To set the range of this window.

Parameters
tsThe start time
teThe end time

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