A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
HashSet Class Reference

#include <HashSet.h>

+ Inheritance diagram for HashSet:
+ Collaboration diagram for HashSet:

Public Member Functions

 HashSet (PageCachePtr cache, PDBLoggerPtr logger, size_t pageSize, NodeID nodeId, DatabaseID dbId, UserTypeID typeId, SetID setId, string setName)
 
 ~HashSet ()
 
void clear ()
 
DatabaseID getDatabaseID ()
 
UserTypeID getUserTypeID ()
 
SetID getSetID ()
 
string getSetName ()
 
PDBPagePtr addPage ()
 
void unpinPage (PageID pageId)
 
- Public Member Functions inherited from LocalitySet
 LocalitySet (LocalityType localityType, LocalitySetReplacementPolicy replacementPolicy, OperationType operationType, DurabilityType durabilityType, PersistenceType persistenceType)
 
 ~LocalitySet ()
 
void addCachedPage (PDBPagePtr page)
 
void updateCachedPage (PDBPagePtr page)
 
void removeCachedPage (PDBPagePtr page)
 
PDBPagePtr selectPageForReplacement ()
 
vector< PDBPagePtr > * selectPagesForReplacement ()
 
void pin (LocalitySetReplacementPolicy policy, OperationType operationType)
 
void unpin ()
 
LocalityType getLocalityType ()
 
void setLocalityType (LocalityType type)
 
LocalitySetReplacementPolicy getReplacementPolicy ()
 
void setReplacementPolicy (LocalitySetReplacementPolicy policy)
 
OperationType getOperationType ()
 
void setOperationType (OperationType type)
 
DurabilityType getDurabilityType ()
 
void setDurabilityType (DurabilityType type)
 
PersistenceType getPersistenceType ()
 
void setPersistenceType (PersistenceType type)
 
bool isLifetimeEnded ()
 
void setLifetimeEnd (bool lifetimeEnded)
 

Private Attributes

PDBLoggerPtr logger
 
PageCachePtr cache
 
size_t pageSize
 
NodeID nodeId
 
DatabaseID dbId
 
UserTypeID typeId
 
SetID setId
 
PageID pageId
 
string setName
 

Additional Inherited Members

- Protected Attributes inherited from LocalitySet
list< PDBPagePtr > * cachedPages
 
LocalityType localityType
 
LocalitySetReplacementPolicy replacementPolicy
 
OperationType operationType
 
DurabilityType durabilityType
 
PersistenceType persistenceType
 
bool lifetimeEnded
 

Detailed Description

Definition at line 38 of file HashSet.h.

Constructor & Destructor Documentation

HashSet::HashSet ( PageCachePtr  cache,
PDBLoggerPtr  logger,
size_t  pageSize,
NodeID  nodeId,
DatabaseID  dbId,
UserTypeID  typeId,
SetID  setId,
string  setName 
)
inline

Definition at line 40 of file HashSet.h.

HashSet::~HashSet ( )
inline

Definition at line 60 of file HashSet.h.

Member Function Documentation

PDBPagePtr HashSet::addPage ( )
inline

Definition at line 80 of file HashSet.h.

void HashSet::clear ( )
inline

Definition at line 62 of file HashSet.h.

DatabaseID HashSet::getDatabaseID ( )
inline

Definition at line 64 of file HashSet.h.

SetID HashSet::getSetID ( )
inline

Definition at line 72 of file HashSet.h.

string HashSet::getSetName ( )
inline

Definition at line 76 of file HashSet.h.

UserTypeID HashSet::getUserTypeID ( )
inline

Definition at line 68 of file HashSet.h.

void HashSet::unpinPage ( PageID  pageId)
inline

Definition at line 92 of file HashSet.h.

Member Data Documentation

PageCachePtr HashSet::cache
private

Definition at line 103 of file HashSet.h.

DatabaseID HashSet::dbId
private

Definition at line 106 of file HashSet.h.

PDBLoggerPtr HashSet::logger
private

Definition at line 102 of file HashSet.h.

NodeID HashSet::nodeId
private

Definition at line 105 of file HashSet.h.

PageID HashSet::pageId
private

Definition at line 109 of file HashSet.h.

size_t HashSet::pageSize
private

Definition at line 104 of file HashSet.h.

SetID HashSet::setId
private

Definition at line 108 of file HashSet.h.

string HashSet::setName
private

Definition at line 110 of file HashSet.h.

UserTypeID HashSet::typeId
private

Definition at line 107 of file HashSet.h.


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