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::WriteUserSetBase< OutputClass > Class Template Reference

#include <WriteUserSetBase.h>

+ Inheritance diagram for pdb::WriteUserSetBase< OutputClass >:
+ Collaboration diagram for pdb::WriteUserSetBase< OutputClass >:

Public Member Functions

 WriteUserSetBase ()=default
 
 WriteUserSetBase (std::string dbName, std::string setName)
 
void setUpAndCopyFrom (void *target, void *source) const override
 
void deleteObject (void *deleteMe) override
 
size_t getSize (void *forMe) override
 
ComputeSinkPtr getComputeSink (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan) override
 
void setOutput (std::string dbName, std::string setName) override
 
void setDatabaseName (std::string dbName)
 
std::string getDatabaseName () override
 
void setSetName (std::string setName)
 
std::string getSetName () override
 
std::string getComputationType () override
 
ComputationTypeID getComputationTypeID () override
 
std::string getOutputType () override
 
int getNumInputs () override
 
std::string getIthInputType (int i) override
 
std::string toTCAPString (std::vector< InputTupleSetSpecifier > &inputTupleSets, int computationLabel, std::string &outputTupleSetName, std::vector< std::string > &outputColumnNames, std::string &addedOutputColumnName) override
 
std::string toTCAPString (std::string inputTupleSetName, std::vector< std::string > &inputColumnNames, std::vector< std::string > &inputColumnsToApply, int computationLabel, std::string &outputTupleSetName, std::vector< std::string > &outputColumnNames, std::string &addedOutputColumnName)
 
bool needsMaterializeOutput () override
 
- Public Member Functions inherited from pdb::Computation
virtual void extractLambdas (std::map< std::string, GenericLambdaObjectPtr > &returnVal)
 
virtual ComputeSourcePtr getComputeSource (TupleSpec &produceMe, ComputePlan &plan)
 
virtual ComputeSinkPtr getComputeSink (TupleSpec &consumeMe, TupleSpec &whichAttsToOpOn, TupleSpec &projection, ComputePlan &plan)
 
virtual SinkMergerPtr getSinkMerger (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan)
 
virtual SinkMergerPtr getSinkMerger (TupleSpec &consumeMe, TupleSpec &whichAttsToOpOn, TupleSpec &projection, ComputePlan &plan)
 
virtual SinkShufflerPtr getSinkShuffler (TupleSpec &consumeMe, TupleSpec &projection, ComputePlan &plan)
 JiaNote: add below interface for shuffling multiple join map sinks for hash partitioned join. More...
 
virtual SinkShufflerPtr getSinkShuffler (TupleSpec &consumeMe, TupleSpec &whichAttsToOpOn, TupleSpec &projection, ComputePlan &plan)
 
bool hasInput ()
 
Handle< Computation > & getIthInput (int i) const
 
int getNumConsumers ()
 
void setNumConsumers (int numConsumers)
 
bool setInput (Handle< Computation > toMe)
 
bool setInput (int whichSlot, Handle< Computation > toMe)
 
bool isTraversed ()
 
void setTraversed (bool traversed)
 
std::string getOutputTupleSetName ()
 
void setOutputTupleSetName (std::string outputTupleSetName)
 
std::string getOutputColumnToApply ()
 
void setOutputColumnToApply (std::string outputColumnToApply)
 
virtual void setBatchSize (int batchSize)
 
virtual bool isUsingCombiner ()
 
virtual void setUsingCombiner (bool useCombinerOrNot)
 
void setAllocatorPolicy (AllocatorPolicy myPolicy)
 
void setObjectPolicy (ObjectPolicy myPolicy)
 
AllocatorPolicy getAllocatorPolicy ()
 
ObjectPolicy getObjectPolicy ()
 
virtual void setCollectAsMap (bool collectAsMapOrNot)
 
virtual bool isCollectAsMap ()
 
virtual int getNumNodesToCollect ()
 
virtual void setNumNodesToCollect (int numNodesToCollect)
 
- Public Member Functions inherited from pdb::Object
void setVTablePtr (void *setToMe)
 
void * getVTablePtr ()
 

Protected Attributes

String dbName
 
String setName
 
String outputType = ""
 

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

template<class OutputClass>
class pdb::WriteUserSetBase< OutputClass >

Definition at line 17 of file WriteUserSetBase.h.

Constructor & Destructor Documentation

template<class OutputClass>
pdb::WriteUserSetBase< OutputClass >::WriteUserSetBase ( )
default

Normally these would be defined by the ENABLE_DEEP_COPY macro, but because Array is the one variable-sized type that we allow, we need to manually overridethese methods This constructor is for constructing builtin object

template<class OutputClass>
pdb::WriteUserSetBase< OutputClass >::WriteUserSetBase ( std::string  dbName,
std::string  setName 
)
inline

User should only use following constructor

Parameters
dbName
setName

Definition at line 36 of file WriteUserSetBase.h.

Member Function Documentation

template<class OutputClass>
void pdb::WriteUserSetBase< OutputClass >::deleteObject ( void *  deleteMe)
inlineoverridevirtual

Used for deletion

Parameters
deleteMe

Reimplemented from pdb::Object.

Definition at line 61 of file WriteUserSetBase.h.

+ Here is the call graph for this function:

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::getComputationType ( )
inlineoverridevirtual

Used to return the type of the computation

Returns

Implements pdb::Computation.

Definition at line 131 of file WriteUserSetBase.h.

+ Here is the caller graph for this function:

template<class OutputClass>
ComputationTypeID pdb::WriteUserSetBase< OutputClass >::getComputationTypeID ( )
inlineoverridevirtual

Used to return the type if of this computation

Returns

Implements pdb::Computation.

Definition at line 139 of file WriteUserSetBase.h.

template<class OutputClass>
ComputeSinkPtr pdb::WriteUserSetBase< OutputClass >::getComputeSink ( TupleSpec consumeMe,
TupleSpec projection,
ComputePlan plan 
)
inlineoverridevirtual

Returns a ComputeSink for this computation

Parameters
consumeMe
projection
plan
Returns

Reimplemented from pdb::Computation.

Definition at line 81 of file WriteUserSetBase.h.

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::getDatabaseName ( )
inlineoverridevirtual

Used to get the database name

Returns

Reimplemented from pdb::Computation.

Definition at line 107 of file WriteUserSetBase.h.

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::getIthInputType ( int  i)
inlineoverridevirtual

Used to return the i-th input type

Parameters
i
Returns

Implements pdb::Computation.

Definition at line 167 of file WriteUserSetBase.h.

+ Here is the call graph for this function:

template<class OutputClass>
int pdb::WriteUserSetBase< OutputClass >::getNumInputs ( )
inlineoverridevirtual

Used to return the number of inputs

Returns

Implements pdb::Computation.

Definition at line 158 of file WriteUserSetBase.h.

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::getOutputType ( )
inlineoverridevirtual

Used to return the output type

Returns

Implements pdb::Computation.

Definition at line 147 of file WriteUserSetBase.h.

+ Here is the caller graph for this function:

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::getSetName ( )
inlineoverridevirtual

Used to get the user set name

Returns

Reimplemented from pdb::Computation.

Definition at line 123 of file WriteUserSetBase.h.

template<class OutputClass>
size_t pdb::WriteUserSetBase< OutputClass >::getSize ( void *  forMe)
inlineoverridevirtual

Used for compute size

Parameters
forMe
Returns

Reimplemented from pdb::Object.

Definition at line 70 of file WriteUserSetBase.h.

template<class OutputClass>
bool pdb::WriteUserSetBase< OutputClass >::needsMaterializeOutput ( )
inlineoverridevirtual

this computation always materializes output

Returns

Reimplemented from pdb::Computation.

Definition at line 259 of file WriteUserSetBase.h.

template<class OutputClass>
void pdb::WriteUserSetBase< OutputClass >::setDatabaseName ( std::string  dbName)
inline

Used to set the database name

Parameters
dbName

Definition at line 99 of file WriteUserSetBase.h.

template<class OutputClass>
void pdb::WriteUserSetBase< OutputClass >::setOutput ( std::string  dbName,
std::string  setName 
)
inlineoverridevirtual

Used to set the user set for writing objects to

Parameters
dbName
setName

Reimplemented from pdb::Computation.

Definition at line 90 of file WriteUserSetBase.h.

template<class OutputClass>
void pdb::WriteUserSetBase< OutputClass >::setSetName ( std::string  setName)
inline

Used to set the user set name

Parameters
setName

Definition at line 115 of file WriteUserSetBase.h.

template<class OutputClass>
void pdb::WriteUserSetBase< OutputClass >::setUpAndCopyFrom ( void *  target,
void *  source 
) const
inlineoverridevirtual

for deep copy

Parameters
target
source

Reimplemented from pdb::Object.

Definition at line 47 of file WriteUserSetBase.h.

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::toTCAPString ( std::vector< InputTupleSetSpecifier > &  inputTupleSets,
int  computationLabel,
std::string &  outputTupleSetName,
std::vector< std::string > &  outputColumnNames,
std::string &  addedOutputColumnName 
)
inlineoverridevirtual

below function implements the interface for parsing computation into a TCAP string

Parameters
inputTupleSets
computationLabel
outputTupleSetName
outputColumnNames
addedOutputColumnName
Returns

Implements pdb::Computation.

Definition at line 184 of file WriteUserSetBase.h.

+ Here is the call graph for this function:

template<class OutputClass>
std::string pdb::WriteUserSetBase< OutputClass >::toTCAPString ( std::string  inputTupleSetName,
std::vector< std::string > &  inputColumnNames,
std::vector< std::string > &  inputColumnsToApply,
int  computationLabel,
std::string &  outputTupleSetName,
std::vector< std::string > &  outputColumnNames,
std::string &  addedOutputColumnName 
)
inline

below function returns a TCAP string for this Computation

Parameters
inputTupleSetName
inputColumnNames
inputColumnsToApply
computationLabel
outputTupleSetName
outputColumnNames
addedOutputColumnName
Returns

Definition at line 215 of file WriteUserSetBase.h.

+ Here is the call graph for this function:

Member Data Documentation

template<class OutputClass>
String pdb::WriteUserSetBase< OutputClass >::dbName
protected

Definition at line 265 of file WriteUserSetBase.h.

template<class OutputClass>
String pdb::WriteUserSetBase< OutputClass >::outputType = ""
protected

Definition at line 269 of file WriteUserSetBase.h.

template<class OutputClass>
String pdb::WriteUserSetBase< OutputClass >::setName
protected

Definition at line 267 of file WriteUserSetBase.h.


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