Pipeline element.
More...
#include <DataProviderPipeline.qc.dox.h>
|
Condition | cond () |
| Queue condition variable.
|
|
| constructor (DataProviderPipeline parent, Mutex lck, Counter cnt, int id, int size) |
| Creates the object.
|
|
list< auto > | elems () |
| Pipeline elements. More...
|
|
Condition | flush_cond () |
| Flush condition variable.
|
|
int | getId () |
| Returns the pipeline ID.
|
|
| run (Counter run_cnt) |
| Processing thread.
|
|
| submit (auto qdata) |
| Submits data for processing. More...
|
|
| waitDone () |
| Wait for the queue to be empty, then wait for all terminating pipelines to be empty. More...
|
|
|
Counter | cnt |
| Parent counter.
|
|
bool | data_flushed |
| Data flushed confirmation.
|
|
int | data_waiting = 0 |
| Number of threads waiting on data.
|
|
bool | do_flush |
| Flush pipeline flag.
|
|
int | flush_waiting = 0 |
| Number of threads waiting on the flush cond.
|
|
int | id |
| Queue ID.
|
|
Mutex | lck |
| Parent lock.
|
|
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.
|
|
◆ elems()
list< auto > DataProvider::PipelineQueue::elems |
( |
| ) |
|
Pipeline elements.
elements are either:
◆ runIntern()
DataProvider::PipelineQueue::runIntern |
( |
| ) |
|
|
private |
- Note
- Called in the pipeline lock
◆ submit()
DataProvider::PipelineQueue::submit |
( |
auto |
qdata | ) |
|
Submits data for processing.
- Parameters
-
- Exceptions
-
PIPELINE-SUBMISSION-ABORTED | cannot 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