Qore DataProvider Module Reference  1.0.2
DataProvider::PipelineQueue Class Reference

Pipeline element. More...

Public Member Functions

Condition cond ()
 Queue condition variable.
 
 constructor (DataProviderPipeline parent, int id, int size)
 Creates the object.
 
list< auto > elems ()
 Pipeline elements. More...
 
int getId ()
 Returns the pipeline ID.
 
 run (Counter run_cnt)
 Processing thread.
 
 submit (auto record)
 Submits data for processing. More...
 
 waitDone ()
 Wait for the queue to be empty, then wait for all terminating pipelines to be empty. More...
 

Public Attributes

int data_waiting = 0
 Number of threads waiting on data.
 
int id
 Pipeline ID.
 
DataProviderPipeline parent
 Parent object.
 
list< auto > queue
 Data queue.
 
int queue_waiting = 0
 Number of threads waiting data to be removed from the queue.
 
int size
 Maximum queue size.
 
int tid
 TID of the background thread.
 

Detailed Description

Pipeline element.

Member Function Documentation

◆ elems()

list<auto> DataProvider::PipelineQueue::elems ( )

Pipeline elements.

elements are either:

◆ submit()

DataProvider::PipelineQueue::submit ( auto  record)

Submits data for processing.

Parameters
recordthe record to process
Exceptions
PIPELINE-SUBMISSION-ABORTEDcannot submit data; the pipeline is shutting down or has aborted

◆ waitDone()

DataProvider::PipelineQueue::waitDone ( )

Wait for the queue to be empty, then wait for all terminating pipelines to be empty.

Note
Called in the pipeline lock