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
pdb::HermesExecutionServer Class Reference

#include <HermesExecutionServer.h>

+ Inheritance diagram for pdb::HermesExecutionServer:
+ Collaboration diagram for pdb::HermesExecutionServer:

Public Member Functions

 HermesExecutionServer (SharedMemPtr shm, PDBWorkerQueuePtr workers, PDBLoggerPtr logger, ConfigurationPtr conf)
 
void setConf (ConfigurationPtr conf)
 
ConfigurationPtr getConf ()
 
void setSharedMem (SharedMemPtr shm)
 
SharedMemPtr getSharedMem ()
 
void setNodeID (NodeID nodeId)
 
NodeID getNodeID ()
 
void registerHandlers (PDBServer &forMe) override
 
bool setCurPageScanner (PageScannerPtr curPageScanner)
 
PageScannerPtr getCurPageScanner ()
 
void setLogger (pdb::PDBLoggerPtr logger)
 
pdb::PDBLoggerPtr getLogger ()
 
void setWorkers (PDBWorkerQueuePtr workers)
 
PDBWorkerQueuePtr getWorkers ()
 
 ~HermesExecutionServer ()
 
AbstractHashSetPtr getHashSet (std::string name)
 
bool addHashSet (std::string name, AbstractHashSetPtr hashSet)
 
bool removeHashSet (std::string name)
 
size_t getHashSetsSize ()
 
- Public Member Functions inherited from pdb::ServerFunctionality
virtual void cleanup ()
 
template<class Functionality >
Functionality & getFunctionality ()
 
void recordServer (PDBServer &recordMe)
 
PDBWorkerPtr getWorker ()
 
PDBLoggerPtr getLogger ()
 

Private Attributes

ConfigurationPtr conf
 
SharedMemPtr shm
 
PDBWorkerQueuePtr workers
 
NodeID nodeId
 
PageScannerPtr curScanner
 
pdb::PDBLoggerPtr logger
 
HashSetManager hashSetMgr
 

Detailed Description

Definition at line 51 of file HermesExecutionServer.h.

Constructor & Destructor Documentation

pdb::HermesExecutionServer::HermesExecutionServer ( SharedMemPtr  shm,
PDBWorkerQueuePtr  workers,
PDBLoggerPtr  logger,
ConfigurationPtr  conf 
)
inline

Definition at line 55 of file HermesExecutionServer.h.

pdb::HermesExecutionServer::~HermesExecutionServer ( )
inline

Definition at line 148 of file HermesExecutionServer.h.

Member Function Documentation

bool pdb::HermesExecutionServer::addHashSet ( std::string  name,
AbstractHashSetPtr  hashSet 
)
inline

Definition at line 156 of file HermesExecutionServer.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ConfigurationPtr pdb::HermesExecutionServer::getConf ( )
inline

Definition at line 73 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

PageScannerPtr pdb::HermesExecutionServer::getCurPageScanner ( )
inline

Definition at line 123 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

AbstractHashSetPtr pdb::HermesExecutionServer::getHashSet ( std::string  name)
inline

Definition at line 151 of file HermesExecutionServer.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

size_t pdb::HermesExecutionServer::getHashSetsSize ( )
inline

Definition at line 165 of file HermesExecutionServer.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

pdb::PDBLoggerPtr pdb::HermesExecutionServer::getLogger ( )
inline

Definition at line 133 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

NodeID pdb::HermesExecutionServer::getNodeID ( )
inline

Definition at line 93 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

SharedMemPtr pdb::HermesExecutionServer::getSharedMem ( )
inline

Definition at line 83 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

PDBWorkerQueuePtr pdb::HermesExecutionServer::getWorkers ( )
inline

Definition at line 143 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

void pdb::HermesExecutionServer::registerHandlers ( PDBServer forMe)
overridevirtual

Implements pdb::ServerFunctionality.

Definition at line 59 of file HermesExecutionServer.cc.

+ Here is the call graph for this function:

bool pdb::HermesExecutionServer::removeHashSet ( std::string  name)
inline

Definition at line 161 of file HermesExecutionServer.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void pdb::HermesExecutionServer::setConf ( ConfigurationPtr  conf)
inline

Definition at line 68 of file HermesExecutionServer.h.

bool pdb::HermesExecutionServer::setCurPageScanner ( PageScannerPtr  curPageScanner)
inline

Definition at line 104 of file HermesExecutionServer.h.

+ Here is the caller graph for this function:

void pdb::HermesExecutionServer::setLogger ( pdb::PDBLoggerPtr  logger)
inline

Definition at line 128 of file HermesExecutionServer.h.

void pdb::HermesExecutionServer::setNodeID ( NodeID  nodeId)
inline

Definition at line 88 of file HermesExecutionServer.h.

void pdb::HermesExecutionServer::setSharedMem ( SharedMemPtr  shm)
inline

Definition at line 78 of file HermesExecutionServer.h.

void pdb::HermesExecutionServer::setWorkers ( PDBWorkerQueuePtr  workers)
inline

Definition at line 138 of file HermesExecutionServer.h.

Member Data Documentation

ConfigurationPtr pdb::HermesExecutionServer::conf
private

Definition at line 171 of file HermesExecutionServer.h.

PageScannerPtr pdb::HermesExecutionServer::curScanner
private

Definition at line 175 of file HermesExecutionServer.h.

HashSetManager pdb::HermesExecutionServer::hashSetMgr
private

Definition at line 177 of file HermesExecutionServer.h.

pdb::PDBLoggerPtr pdb::HermesExecutionServer::logger
private

Definition at line 176 of file HermesExecutionServer.h.

NodeID pdb::HermesExecutionServer::nodeId
private

Definition at line 174 of file HermesExecutionServer.h.

SharedMemPtr pdb::HermesExecutionServer::shm
private

Definition at line 172 of file HermesExecutionServer.h.

PDBWorkerQueuePtr pdb::HermesExecutionServer::workers
private

Definition at line 173 of file HermesExecutionServer.h.


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