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::ComputePlan Class Reference

#include <ComputePlan.h>

+ Inheritance diagram for pdb::ComputePlan:
+ Collaboration diagram for pdb::ComputePlan:

Public Member Functions

ENABLE_DEEP_COPY ComputePlan ()
 
 ~ComputePlan ()
 
 ComputePlan (String &TCAPComputation, Vector< Handle< Computation >> &allComputations)
 
LogicalPlanPtr getPlan ()
 
std::string getProducingComputationName (std::string sourceTupleSetName)
 
void nullifyPlanPointer ()
 
PipelinePtr buildPipeline (std::string sourceTupleSetName, std::string targetTupleSetName, std::string targetComputationName, std::function< std::pair< void *, size_t >()> getPage, std::function< void(void *)> discardTempPage, std::function< void(void *)> writeBackPage, std::map< std::string, ComputeInfoPtr > &params)
 
PipelinePtr buildPipeline (std::string sourceTupleSetName, std::string targetTupleSetName, std::string targetComputationName, std::function< std::pair< void *, size_t >()> getPage, std::function< void(void *)> discardTempPage, std::function< void(void *)> writeBackPage)
 
PipelinePtr buildPipeline (std::vector< std::string > buildTheseTupleSets, std::string sourceTupleSetName, std::string targetComputationName, std::function< std::pair< void *, size_t >()> getPage, std::function< void(void *)> discardTempPage, std::function< void(void *)> writeBackPage, std::map< std::string, ComputeInfoPtr > &params)
 
PipelinePtr buildPipeline (std::vector< std::string > buildTheseTupleSets, std::string sourceTupleSetName, std::string targetComputationName, std::function< std::pair< void *, size_t >()> getPage, std::function< void(void *)> discardTempPage, std::function< void(void *)> writeBackPage)
 
SinkMergerPtr getMerger (std::string sourceTupleSetName, std::string targetTupleSetName, std::string targetComputationName)
 
SinkShufflerPtr getShuffler (std::string sourceTupleSetName, std::string targetTupleSetName, std::string targetComputationName)
 
- Public Member Functions inherited from pdb::Object
void setVTablePtr (void *setToMe)
 
void * getVTablePtr ()
 
virtual void setUpAndCopyFrom (void *target, void *source) const
 
virtual void deleteObject (void *deleteMe)
 
virtual size_t getSize (void *ofMe)
 

Private Attributes

String TCAPComputation
 
Vector< Handle< Computation > > allComputations
 
LogicalPlanPtr myPlan
 

Additional Inherited Members

- Static Public Member Functions inherited from pdb::Object
static void * operator new (size_t sz, const std::nothrow_t &tag)
 
static void * operator new (size_t sz)
 
static void operator delete (void *me)
 
static void * operator new (std::size_t count, void *ptr)
 

Detailed Description

Definition at line 40 of file ComputePlan.h.

Constructor & Destructor Documentation

pdb::ComputePlan::ComputePlan ( )
inline

Definition at line 37 of file ComputePlan.cc.

pdb::ComputePlan::~ComputePlan ( )
inline

Definition at line 57 of file ComputePlan.h.

pdb::ComputePlan::ComputePlan ( String TCAPComputation,
Vector< Handle< Computation >> &  allComputations 
)
inline

Definition at line 880 of file ComputePlan.cc.

Member Function Documentation

PipelinePtr pdb::ComputePlan::buildPipeline ( std::string  sourceTupleSetName,
std::string  targetTupleSetName,
std::string  targetComputationName,
std::function< std::pair< void *, size_t >()>  getPage,
std::function< void(void *)>  discardTempPage,
std::function< void(void *)>  writeBackPage,
std::map< std::string, ComputeInfoPtr > &  params 
)
inline

Definition at line 580 of file ComputePlan.cc.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

PipelinePtr pdb::ComputePlan::buildPipeline ( std::string  sourceTupleSetName,
std::string  targetTupleSetName,
std::string  targetComputationName,
std::function< std::pair< void *, size_t >()>  getPage,
std::function< void(void *)>  discardTempPage,
std::function< void(void *)>  writeBackPage 
)
inline

Definition at line 283 of file ComputePlan.cc.

+ Here is the call graph for this function:

PipelinePtr pdb::ComputePlan::buildPipeline ( std::vector< std::string >  buildTheseTupleSets,
std::string  sourceTupleSetName,
std::string  targetComputationName,
std::function< std::pair< void *, size_t >()>  getPage,
std::function< void(void *)>  discardTempPage,
std::function< void(void *)>  writeBackPage,
std::map< std::string, ComputeInfoPtr > &  params 
)
inline

Definition at line 302 of file ComputePlan.cc.

+ Here is the call graph for this function:

PipelinePtr pdb::ComputePlan::buildPipeline ( std::vector< std::string >  buildTheseTupleSets,
std::string  sourceTupleSetName,
std::string  targetComputationName,
std::function< std::pair< void *, size_t >()>  getPage,
std::function< void(void *)>  discardTempPage,
std::function< void(void *)>  writeBackPage 
)
inline

Definition at line 265 of file ComputePlan.cc.

+ Here is the call graph for this function:

SinkMergerPtr pdb::ComputePlan::getMerger ( std::string  sourceTupleSetName,
std::string  targetTupleSetName,
std::string  targetComputationName 
)
inline

Definition at line 131 of file ComputePlan.cc.

+ Here is the call graph for this function:

LogicalPlanPtr pdb::ComputePlan::getPlan ( )
inline

Definition at line 39 of file ComputePlan.cc.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::string pdb::ComputePlan::getProducingComputationName ( std::string  sourceTupleSetName)
inline

Definition at line 115 of file ComputePlan.cc.

+ Here is the call graph for this function:

SinkShufflerPtr pdb::ComputePlan::getShuffler ( std::string  sourceTupleSetName,
std::string  targetTupleSetName,
std::string  targetComputationName 
)
inline

Definition at line 198 of file ComputePlan.cc.

+ Here is the call graph for this function:

void pdb::ComputePlan::nullifyPlanPointer ( )
inline

Definition at line 75 of file ComputePlan.cc.

Member Data Documentation

Vector<Handle<Computation> > pdb::ComputePlan::allComputations
private

Definition at line 46 of file ComputePlan.h.

LogicalPlanPtr pdb::ComputePlan::myPlan
private

Definition at line 50 of file ComputePlan.h.

String pdb::ComputePlan::TCAPComputation
private

Definition at line 43 of file ComputePlan.h.


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