C++ Actor Framework 0.18
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
caf::detail::stream_stage_driver_impl< Input, DownstreamManager, Process, Finalize > Class Template Referencefinal

Default implementation for a stream_stage_driver that hardwires message as result type and implements process and finalize using user-provided function objects (usually lambdas). More...

#include <stream_stage_driver_impl.hpp>

Inheritance diagram for caf::detail::stream_stage_driver_impl< Input, DownstreamManager, Process, Finalize >:
caf::stream_stage_driver< Input, DownstreamManager >

Public Types

using super = stream_stage_driver< Input, DownstreamManager >
 
using trait = stream_stage_trait_t< Process >
 
using state_type = typename trait::state
 
using input_type = Input
 Element type of the input stream.
 
using output_type = typename downstream_manager_type::output_type
 Element type of the output stream.
 
using stream_type = stream< output_type >
 Type of the output stream.
 
- Public Types inherited from caf::stream_stage_driver< Input, DownstreamManager >
using input_type = Input
 Element type of the input stream.
 
using downstream_manager_type = DownstreamManager
 Policy for distributing data to outbound paths.
 
using output_type = typename downstream_manager_type::output_type
 Element type of the output stream.
 
using stream_type = stream< output_type >
 Type of the output stream.
 
using stage_type = stream_stage< input_type, DownstreamManager >
 Implemented stream_stage interface.
 
using stage_ptr_type = intrusive_ptr< stage_type >
 Smart pointer to the interface type.
 

Public Member Functions

template<class Init >
 stream_stage_driver_impl (DownstreamManager &out, Init init, Process f, Finalize fin)
 
void process (downstream< output_type > &out, std::vector< input_type > &batch) override
 Processes a single batch.
 
void finalize (const error &err) override
 Cleans up any state.
 
- Public Member Functions inherited from caf::stream_stage_driver< Input, DownstreamManager >
 stream_stage_driver (DownstreamManager &out)
 
virtual void process (downstream< output_type > &out, std::vector< input_type > &batch)=0
 Processes a single batch.
 
virtual void finalize (const error &)
 Cleans up any state.
 
virtual int32_t acquire_credit (inbound_path *path, int32_t desired)
 Acquires credit on an inbound path.
 

Additional Inherited Members

- Protected Attributes inherited from caf::stream_stage_driver< Input, DownstreamManager >
DownstreamManager & out_
 

Detailed Description

template<class Input, class DownstreamManager, class Process, class Finalize>
class caf::detail::stream_stage_driver_impl< Input, DownstreamManager, Process, Finalize >

Default implementation for a stream_stage_driver that hardwires message as result type and implements process and finalize using user-provided function objects (usually lambdas).

Member Function Documentation

◆ finalize()

template<class Input , class DownstreamManager , class Process , class Finalize >
void caf::detail::stream_stage_driver_impl< Input, DownstreamManager, Process, Finalize >::finalize ( const error )
overridevirtual

Cleans up any state.

Reimplemented from caf::stream_stage_driver< Input, DownstreamManager >.

◆ process()

template<class Input , class DownstreamManager , class Process , class Finalize >
void caf::detail::stream_stage_driver_impl< Input, DownstreamManager, Process, Finalize >::process ( downstream< output_type > &  out,
std::vector< input_type > &  batch 
)
overridevirtual

Processes a single batch.

Implements caf::stream_stage_driver< Input, DownstreamManager >.


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