NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
NES::TextExecutablePipeline Class Reference
Collaboration diagram for NES::TextExecutablePipeline:
[legend]

Public Member Functions

virtual ~TextExecutablePipeline ()=default
 
ExecutionResult execute (TupleBuffer &inputTupleBuffer, PipelineExecutionContext &pipelineExecutionContext, WorkerContext &wctx) override
 Is called once per input buffer and performs the computation of each operator. It can access the state in the PipelineExecutionContext and uns the WorkerContext to identify the current worker thread. More...
 
- Public Member Functions inherited from NES::Runtime::Execution::ExecutablePipelineStage
virtual ~ExecutablePipelineStage ()=default
 
 ExecutablePipelineStage (PipelineStageArity arity=PipelineStageArity::Unary)
 
PipelineStageArity getArity () const
 Returns the arity of this pipeline. More...
 
virtual uint32_t setup (PipelineExecutionContext &pipelineExecutionContext)
 Must be called only once per executable pipeline and initializes the pipeline execution context. e.g, creates the individual operator states -> window handler. More...
 
virtual uint32_t start (PipelineExecutionContext &pipelineExecutionContext)
 Must be called only once per executable pipeline and starts the executable pipeline. e.g. starts the threads for the window handler. More...
 
virtual uint32_t open (PipelineExecutionContext &pipelineExecutionContext, WorkerContext &workerContext)
 Must be called exactly once per worker thread and initializes worker local state. For instance a worker local aggregation state. More...
 
virtual uint32_t close (PipelineExecutionContext &pipelineExecutionContext, WorkerContext &workerContext)
 Must be called exactly once per worker thread to remove worker local state. More...
 
virtual uint32_t stop (PipelineExecutionContext &pipelineExecutionContext)
 Must be called exactly once per executable pipeline to remove operator state. More...
 
virtual std::string getCodeAsString ()
 return the code of the pipeline More...
 

Public Attributes

std::atomic< uint64_t > count = 0
 
std::atomic< uint64_t > sum = 0
 
std::promise< bool > completedPromise
 

Constructor & Destructor Documentation

◆ ~TextExecutablePipeline()

virtual NES::TextExecutablePipeline::~TextExecutablePipeline ( )
virtualdefault

Member Function Documentation

◆ execute()

ExecutionResult NES::TextExecutablePipeline::execute ( TupleBuffer inputTupleBuffer,
PipelineExecutionContext pipelineExecutionContext,
WorkerContext workerContext 
)
inlineoverridevirtual

Is called once per input buffer and performs the computation of each operator. It can access the state in the PipelineExecutionContext and uns the WorkerContext to identify the current worker thread.

Parameters
inputTupleBuffer
pipelineExecutionContext
workerContext
Returns
0 if an error occurred.

Implements NES::Runtime::Execution::ExecutablePipelineStage.

References NES::Runtime::WorkerContext::allocateTupleBuffer(), NES::Runtime::Execution::PipelineExecutionContext::emitBuffer(), NES::Runtime::TupleBuffer::getBuffer(), NES::Runtime::TupleBuffer::getNumberOfTuples(), NES_DEBUG, NES_INFO, and NES::Runtime::TupleBuffer::setNumberOfTuples().

Here is the call graph for this function:

Member Data Documentation

◆ completedPromise

std::promise<bool> NES::TextExecutablePipeline::completedPromise

◆ count

std::atomic<uint64_t> NES::TextExecutablePipeline::count = 0

◆ sum

std::atomic<uint64_t> NES::TextExecutablePipeline::sum = 0

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