A collection of thread safe async queues used by Extractor and Transformer to communicate.  
 More...
#include <ExtractionDataPipe.hpp>
|  | 
| using | DataType = std::optional<RawDataType> | 
| using | QueueType = ThreadSafeQueue<DataType> | 
|  | 
|  | ExtractionDataPipe (uint32_t stride, uint32_t startSequence) | 
|  | Create a new instance of the extraction data pipe. 
 | 
| void | push (uint32_t sequence, DataType &&data) | 
|  | Push new data package for the specified sequence. 
 | 
| DataType | popNext (uint32_t sequence) | 
|  | Get data package for the given sequence. 
 | 
| uint32_t | getStride () const | 
| void | finish (uint32_t sequence) | 
|  | Hint the Transformer that the queue is done sending data. 
 | 
| void | cleanup () | 
|  | Unblocks internal queues. 
 | 
|  | 
| static constexpr auto | kTOTAL_MAX_IN_QUEUE = 1000u | 
template<typename RawDataType>
class etl::impl::ExtractionDataPipe< RawDataType >
A collection of thread safe async queues used by Extractor and Transformer to communicate. 
◆ ExtractionDataPipe()
template<typename RawDataType> 
 
Create a new instance of the extraction data pipe. 
- Parameters
- 
  
  
 
 
◆ cleanup()
template<typename RawDataType> 
 
Unblocks internal queues. 
Note: For now this must be called by the ETL when Transformer exits. 
 
 
◆ finish()
template<typename RawDataType> 
 
Hint the Transformer that the queue is done sending data. 
- Parameters
- 
  
    | sequence | The sequence for which the extractor queue is to be hinted |  
 
 
 
◆ getStride()
template<typename RawDataType> 
 
 
◆ popNext()
template<typename RawDataType> 
 
Get data package for the given sequence. 
Note: Potentially blocks until data is available.
- Parameters
- 
  
    | sequence | The sequence for which data is required |  
 
- Returns
- The data wrapped in an optional; nullopt means that there is no more data to expect 
 
 
◆ push()
template<typename RawDataType> 
 
Push new data package for the specified sequence. 
Note: Potentially blocks until the underlying queue can accommodate another entry.
- Parameters
- 
  
    | sequence | The sequence for which to enqueue the data package |  | data | The data to store |  
 
 
 
The documentation for this class was generated from the following file: