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::ProjectionQueryProcessor< Output, Input > Class Template Reference

#include <ProjectionQueryProcessor.h>

+ Inheritance diagram for pdb::ProjectionQueryProcessor< Output, Input >:
+ Collaboration diagram for pdb::ProjectionQueryProcessor< Output, Input >:

Public Member Functions

 ProjectionQueryProcessor (Selection< Output, Input > &forMe)
 
 ProjectionQueryProcessor (SimpleLambda< Handle< Output >> projection)
 
void initialize () override
 
void loadInputPage (void *pageToProcess) override
 
void loadOutputPage (void *pageToWriteTo, size_t numBytesInPage) override
 
bool fillNextOutputPage () override
 
void finalize () override
 
void clearOutputPage () override
 
void clearInputPage () override
 
- Public Member Functions inherited from pdb::SimpleSingleTableQueryProcessor
virtual void loadInputObject (Handle< Object > &objectToProcess)
 
virtual bool needsProcessInput ()
 

Private Attributes

UseTemporaryAllocationBlockPtr blockPtr
 
Handle< Input > inputObject
 
Handle< Vector< Handle< Input > > > inputVec
 
size_t posInInput
 
Handle< Vector< Handle< Output > > > outputVec
 
SimpleLambda< Handle< Output > > projection
 
std::function< Handle< Output >)> projectionFunc
 
bool finalized
 

Detailed Description

template<class Output, class Input>
class pdb::ProjectionQueryProcessor< Output, Input >

Definition at line 32 of file ProjectionQueryProcessor.h.

Constructor & Destructor Documentation

template<class Output , class Input >
pdb::ProjectionQueryProcessor< Output, Input >::ProjectionQueryProcessor ( Selection< Output, Input > &  forMe)

Definition at line 30 of file ProjectionQueryProcessor.cc.

template<class Output , class Input >
pdb::ProjectionQueryProcessor< Output, Input >::ProjectionQueryProcessor ( SimpleLambda< Handle< Output >>  projection)

Definition at line 39 of file ProjectionQueryProcessor.cc.

Member Function Documentation

template<class Output , class Input >
void pdb::ProjectionQueryProcessor< Output, Input >::clearInputPage ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 122 of file ProjectionQueryProcessor.cc.

template<class Output , class Input >
void pdb::ProjectionQueryProcessor< Output, Input >::clearOutputPage ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 116 of file ProjectionQueryProcessor.cc.

template<class Output , class Input >
bool pdb::ProjectionQueryProcessor< Output, Input >::fillNextOutputPage ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 78 of file ProjectionQueryProcessor.cc.

+ Here is the call graph for this function:

template<class Output , class Input >
void pdb::ProjectionQueryProcessor< Output, Input >::finalize ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 110 of file ProjectionQueryProcessor.cc.

template<class Output , class Input >
void pdb::ProjectionQueryProcessor< Output, Input >::initialize ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 49 of file ProjectionQueryProcessor.cc.

template<class Output , class Input >
void pdb::ProjectionQueryProcessor< Output, Input >::loadInputPage ( void *  pageToProcess)
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 56 of file ProjectionQueryProcessor.cc.

+ Here is the call graph for this function:

template<class Output , class Input >
void pdb::ProjectionQueryProcessor< Output, Input >::loadOutputPage ( void *  pageToWriteTo,
size_t  numBytesInPage 
)
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 64 of file ProjectionQueryProcessor.cc.

Member Data Documentation

template<class Output , class Input >
UseTemporaryAllocationBlockPtr pdb::ProjectionQueryProcessor< Output, Input >::blockPtr
private

Definition at line 36 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
bool pdb::ProjectionQueryProcessor< Output, Input >::finalized
private

Definition at line 57 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
Handle<Input> pdb::ProjectionQueryProcessor< Output, Input >::inputObject
private

Definition at line 39 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
Handle<Vector<Handle<Input> > > pdb::ProjectionQueryProcessor< Output, Input >::inputVec
private

Definition at line 42 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
Handle<Vector<Handle<Output> > > pdb::ProjectionQueryProcessor< Output, Input >::outputVec
private

Definition at line 48 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
size_t pdb::ProjectionQueryProcessor< Output, Input >::posInInput
private

Definition at line 45 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
SimpleLambda<Handle<Output> > pdb::ProjectionQueryProcessor< Output, Input >::projection
private

Definition at line 51 of file ProjectionQueryProcessor.h.

template<class Output , class Input >
std::function<Handle<Output>)> pdb::ProjectionQueryProcessor< Output, Input >::projectionFunc
private

Definition at line 54 of file ProjectionQueryProcessor.h.


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