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::AggregationProcessor< KeyType, ValueType > Class Template Reference

#include <AggregationProcessor.h>

+ Inheritance diagram for pdb::AggregationProcessor< KeyType, ValueType >:
+ Collaboration diagram for pdb::AggregationProcessor< KeyType, ValueType >:

Public Member Functions

 ~AggregationProcessor ()
 
 AggregationProcessor ()
 
 AggregationProcessor (HashPartitionID id)
 
void initialize () override
 
void loadInputPage (void *pageToProcess) override
 
void loadInputObject (Handle< Object > &objectToProcess) override
 
void loadOutputPage (void *pageToWriteTo, size_t numBytesInPage) override
 
bool fillNextOutputPage () override
 
void finalize () override
 
void clearOutputPage () override
 
void clearInputPage () override
 
bool needsProcessInput () override
 

Private Attributes

UseTemporaryAllocationBlockPtr blockPtr
 
Handle< Vector< Handle
< AggregationMap< KeyType,
ValueType > > > > 
inputData
 
Handle< Map< KeyType, ValueType > > outputData
 
bool finalized
 
Handle< AggregationMap
< KeyType, ValueType > > 
curMap
 
int id
 
PDBMapIterator< KeyType,
ValueType > * 
begin
 
PDBMapIterator< KeyType,
ValueType > * 
end
 
int count
 

Detailed Description

template<class KeyType, class ValueType>
class pdb::AggregationProcessor< KeyType, ValueType >

Definition at line 33 of file AggregationProcessor.h.

Constructor & Destructor Documentation

template<class KeyType , class ValueType >
pdb::AggregationProcessor< KeyType, ValueType >::~AggregationProcessor ( )
inline

Definition at line 36 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
pdb::AggregationProcessor< KeyType, ValueType >::AggregationProcessor ( )
inline

Definition at line 37 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
pdb::AggregationProcessor< KeyType, ValueType >::AggregationProcessor ( HashPartitionID  id)

Definition at line 27 of file AggregationProcessor.cc.

Member Function Documentation

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::clearInputPage ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 191 of file AggregationProcessor.cc.

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::clearOutputPage ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 185 of file AggregationProcessor.cc.

template<class KeyType , class ValueType >
bool pdb::AggregationProcessor< KeyType, ValueType >::fillNextOutputPage ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 110 of file AggregationProcessor.cc.

+ Here is the call graph for this function:

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::finalize ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 180 of file AggregationProcessor.cc.

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::initialize ( )
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 38 of file AggregationProcessor.cc.

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::loadInputObject ( Handle< Object > &  objectToProcess)
overridevirtual

Reimplemented from pdb::SimpleSingleTableQueryProcessor.

Definition at line 43 of file AggregationProcessor.cc.

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::loadInputPage ( void *  pageToProcess)
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 66 of file AggregationProcessor.cc.

+ Here is the call graph for this function:

template<class KeyType , class ValueType >
void pdb::AggregationProcessor< KeyType, ValueType >::loadOutputPage ( void *  pageToWriteTo,
size_t  numBytesInPage 
)
overridevirtual

Implements pdb::SimpleSingleTableQueryProcessor.

Definition at line 101 of file AggregationProcessor.cc.

template<class KeyType , class ValueType >
bool pdb::AggregationProcessor< KeyType, ValueType >::needsProcessInput ( )
overridevirtual

Reimplemented from pdb::SimpleSingleTableQueryProcessor.

Definition at line 197 of file AggregationProcessor.cc.

Member Data Documentation

template<class KeyType , class ValueType >
PDBMapIterator<KeyType, ValueType>* pdb::AggregationProcessor< KeyType, ValueType >::begin
private

Definition at line 58 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
UseTemporaryAllocationBlockPtr pdb::AggregationProcessor< KeyType, ValueType >::blockPtr
private

Definition at line 50 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
int pdb::AggregationProcessor< KeyType, ValueType >::count
private

Definition at line 61 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
Handle<AggregationMap<KeyType, ValueType> > pdb::AggregationProcessor< KeyType, ValueType >::curMap
private

Definition at line 54 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
PDBMapIterator<KeyType, ValueType>* pdb::AggregationProcessor< KeyType, ValueType >::end
private

Definition at line 59 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
bool pdb::AggregationProcessor< KeyType, ValueType >::finalized
private

Definition at line 53 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
int pdb::AggregationProcessor< KeyType, ValueType >::id
private

Definition at line 55 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
Handle<Vector<Handle<AggregationMap<KeyType, ValueType> > > > pdb::AggregationProcessor< KeyType, ValueType >::inputData
private

Definition at line 51 of file AggregationProcessor.h.

template<class KeyType , class ValueType >
Handle<Map<KeyType, ValueType> > pdb::AggregationProcessor< KeyType, ValueType >::outputData
private

Definition at line 52 of file AggregationProcessor.h.


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