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::PartitionedJoinMapTupleSetIterator< RHSType > Class Template Reference

#include <JoinTuple.h>

+ Inheritance diagram for pdb::PartitionedJoinMapTupleSetIterator< RHSType >:
+ Collaboration diagram for pdb::PartitionedJoinMapTupleSetIterator< RHSType >:

Public Member Functions

 PartitionedJoinMapTupleSetIterator (size_t myPartitionId, std::function< PDBPagePtr()> getAnotherVector, std::function< void(PDBPagePtr)> doneWithVector, size_t chunkSize, std::vector< int > positions)
 
void setChunkSize (size_t chunkSize) override
 
TupleSetPtr getNextTupleSet () override
 
 ~PartitionedJoinMapTupleSetIterator ()
 
- Public Member Functions inherited from pdb::ComputeSource
virtual ~ComputeSource ()
 

Private Attributes

size_t myPartitionId
 
std::function< PDBPagePtr()> getAnotherVector
 
std::function< void(PDBPagePtr)> doneWithVector
 
Handle< Vector< Handle
< JoinMap< RHSType > > > > 
iterateOverMe
 
Record< Vector< Handle
< JoinMap< RHSType > > > > * 
myRec
 
Record< Vector< Handle
< JoinMap< RHSType > > > > * 
lastRec
 
PDBPagePtr myPage
 
PDBPagePtr lastPage
 
size_t chunkSize
 
size_t pos
 
Handle< JoinMap< RHSType > > curJoinMap
 
JoinMapIterator< RHSType > curJoinMapIter
 
JoinMapIterator< RHSType > joinMapEndIter
 
size_t posInRecordList
 
TupleSetPtr output
 
std::vector< size_t > * hashColumn
 
void ** columns
 
bool isDone
 
JoinRecordList< RHSType > * myList = nullptr
 
size_t myListSize = 0
 
size_t myHash = 0
 
RecordIteratorPtr myIter = nullptr
 

Detailed Description

template<typename RHSType>
class pdb::PartitionedJoinMapTupleSetIterator< RHSType >

Definition at line 476 of file JoinTuple.h.

Constructor & Destructor Documentation

template<typename RHSType >
pdb::PartitionedJoinMapTupleSetIterator< RHSType >::PartitionedJoinMapTupleSetIterator ( size_t  myPartitionId,
std::function< PDBPagePtr()>  getAnotherVector,
std::function< void(PDBPagePtr)>  doneWithVector,
size_t  chunkSize,
std::vector< int >  positions 
)
inline

Definition at line 542 of file JoinTuple.h.

template<typename RHSType >
pdb::PartitionedJoinMapTupleSetIterator< RHSType >::~PartitionedJoinMapTupleSetIterator ( )
inline

Definition at line 750 of file JoinTuple.h.

+ Here is the call graph for this function:

Member Function Documentation

template<typename RHSType >
TupleSetPtr pdb::PartitionedJoinMapTupleSetIterator< RHSType >::getNextTupleSet ( )
inlineoverridevirtual

Implements pdb::ComputeSource.

Definition at line 599 of file JoinTuple.h.

+ Here is the call graph for this function:

template<typename RHSType >
void pdb::PartitionedJoinMapTupleSetIterator< RHSType >::setChunkSize ( size_t  chunkSize)
inlineoverridevirtual

Implements pdb::ComputeSource.

Definition at line 594 of file JoinTuple.h.

Member Data Documentation

template<typename RHSType >
size_t pdb::PartitionedJoinMapTupleSetIterator< RHSType >::chunkSize
private

Definition at line 499 of file JoinTuple.h.

template<typename RHSType >
void** pdb::PartitionedJoinMapTupleSetIterator< RHSType >::columns
private

Definition at line 523 of file JoinTuple.h.

template<typename RHSType >
Handle<JoinMap<RHSType> > pdb::PartitionedJoinMapTupleSetIterator< RHSType >::curJoinMap
private

Definition at line 505 of file JoinTuple.h.

template<typename RHSType >
JoinMapIterator<RHSType> pdb::PartitionedJoinMapTupleSetIterator< RHSType >::curJoinMapIter
private

Definition at line 508 of file JoinTuple.h.

template<typename RHSType >
std::function<void(PDBPagePtr)> pdb::PartitionedJoinMapTupleSetIterator< RHSType >::doneWithVector
private

Definition at line 486 of file JoinTuple.h.

template<typename RHSType >
std::function<PDBPagePtr()> pdb::PartitionedJoinMapTupleSetIterator< RHSType >::getAnotherVector
private

Definition at line 483 of file JoinTuple.h.

template<typename RHSType >
std::vector<size_t>* pdb::PartitionedJoinMapTupleSetIterator< RHSType >::hashColumn
private

Definition at line 520 of file JoinTuple.h.

template<typename RHSType >
bool pdb::PartitionedJoinMapTupleSetIterator< RHSType >::isDone
private

Definition at line 526 of file JoinTuple.h.

template<typename RHSType >
Handle<Vector<Handle<JoinMap<RHSType> > > > pdb::PartitionedJoinMapTupleSetIterator< RHSType >::iterateOverMe
private

Definition at line 489 of file JoinTuple.h.

template<typename RHSType >
JoinMapIterator<RHSType> pdb::PartitionedJoinMapTupleSetIterator< RHSType >::joinMapEndIter
private

Definition at line 511 of file JoinTuple.h.

template<typename RHSType >
PDBPagePtr pdb::PartitionedJoinMapTupleSetIterator< RHSType >::lastPage
private

Definition at line 496 of file JoinTuple.h.

template<typename RHSType >
Record<Vector<Handle<JoinMap<RHSType> > > > * pdb::PartitionedJoinMapTupleSetIterator< RHSType >::lastRec
private

Definition at line 493 of file JoinTuple.h.

template<typename RHSType >
size_t pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myHash = 0
private

Definition at line 530 of file JoinTuple.h.

template<typename RHSType >
RecordIteratorPtr pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myIter = nullptr
private

Definition at line 533 of file JoinTuple.h.

template<typename RHSType >
JoinRecordList<RHSType>* pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myList = nullptr
private

Definition at line 528 of file JoinTuple.h.

template<typename RHSType >
size_t pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myListSize = 0
private

Definition at line 529 of file JoinTuple.h.

template<typename RHSType >
PDBPagePtr pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myPage
private

Definition at line 496 of file JoinTuple.h.

template<typename RHSType >
size_t pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myPartitionId
private

Definition at line 480 of file JoinTuple.h.

template<typename RHSType >
Record<Vector<Handle<JoinMap<RHSType> > > >* pdb::PartitionedJoinMapTupleSetIterator< RHSType >::myRec
private

Definition at line 493 of file JoinTuple.h.

template<typename RHSType >
TupleSetPtr pdb::PartitionedJoinMapTupleSetIterator< RHSType >::output
private

Definition at line 517 of file JoinTuple.h.

template<typename RHSType >
size_t pdb::PartitionedJoinMapTupleSetIterator< RHSType >::pos
private

Definition at line 502 of file JoinTuple.h.

template<typename RHSType >
size_t pdb::PartitionedJoinMapTupleSetIterator< RHSType >::posInRecordList
private

Definition at line 514 of file JoinTuple.h.


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