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

The multithread-supported bucket of StateOfKey. More...

#include <Common/StateOfKey.h>

Collaboration diagram for OoOJoin::StateOfKeyBucket:

Public Types

typedef StateOfKeyBucket_Iterator iterator
 

Public Member Functions

void setCellCount (size_t cnt)
 set how many cells are allowed in one bucket More...
 
void lock ()
 lock this bucket
 
void unlock ()
 unlock this bucket
 
void insert (AbstractStateOfKeyPtr ask)
 Insert a StateOfKey. More...
 
AbstractStateOfKeyPtr getByKey (keyType probeKey)
 probe if we have something with the same key as ask More...
 
iterator begin ()
 
iterator end ()
 

Public Attributes

size_t count = 0
 
std::vector< AbstractStateOfKeyPtrcells
 
StateOfKeyBucketPtr next = nullptr
 

Detailed Description

The multithread-supported bucket of StateOfKey.

Member Function Documentation

◆ getByKey()

AbstractStateOfKeyPtr StateOfKeyBucket::getByKey ( keyType  probeKey)

probe if we have something with the same key as ask

Parameters
probeKeyThe key for probing
Returns
the stored AbstractStateOfKey, nullptr if nothing

◆ insert()

void StateOfKeyBucket::insert ( AbstractStateOfKeyPtr  ask)

Insert a StateOfKey.

Parameters
askThe AbstractStateOfKey

◆ setCellCount()

void OoOJoin::StateOfKeyBucket::setCellCount ( size_t  cnt)
inline

set how many cells are allowed in one bucket

Parameters
cnt
Note
Please set correct number for cache awareness

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