Join multiple packet streams with passive inputs. More...
#include <senf/PPI/Joins.hh>

Public Member Functions | |
| PassiveJoin () | |
Public Member Functions inherited from senf::ppi::module::Module | |
| virtual | ~Module () |
Public Attributes | |
| connector::ActiveOutput< PacketType > | output |
Additional Inherited Members | |
Public Types inherited from senf::ppi::module::MultiConnectorMixin< Self_, ConnectorType_, KeyType_, ContainerType_ > | |
| typedef ConnectorType_ | ConnectorType |
| Type of MultiConnector connector. More... | |
Protected Types inherited from senf::ppi::module::MultiConnectorMixin< Self_, ConnectorType_, KeyType_, ContainerType_ > | |
| typedef ContainerType_ | ContainerType |
| Type of connector container. More... | |
Protected Member Functions inherited from senf::ppi::module::Module | |
| Module () | |
| Route< connector::InputConnector, connector::OutputConnector > & | route (connector::InputConnector &input, connector::OutputConnector &output) |
| Define flow information. More... | |
| Route< connector::InputConnector, EventDescriptor > & | route (connector::InputConnector &input, EventDescriptor &output) |
| Define flow information. More... | |
| Route< EventDescriptor, connector::OutputConnector > & | route (EventDescriptor &input, connector::OutputConnector &output) |
| Define flow information. More... | |
| void | noroute (connector::Connector &connector) |
| Define terminal connectors. More... | |
| template<class Target > | |
| void | registerEvent (EventDescriptor &descriptor, Target target) |
| Register an external event. More... | |
| ClockService::clock_type const & | time () const |
| Time-stamp of the currently processing event. More... | |
| ClockService::clock_type const & | now () const |
| Current time of the currently processing event. More... | |
| virtual void | v_init () |
| Called after module setup. More... | |
| console::DirectoryNode & | sysConsoleDir () const |
| void | destroy () |
Protected Member Functions inherited from senf::ppi::module::MultiConnectorMixin< Self_, ConnectorType_, KeyType_, ContainerType_ > | |
| ContainerType_ & | connectors () |
| Get connector container. More... | |
| ContainerType_ const & | connectors () const |
| Get connectors container (const) More... | |
| void | connectorDestroy (ConnectorType const &) |
Related Functions inherited from senf::ppi::module::MultiConnectorMixin< Self_, ConnectorType_, KeyType_, ContainerType_ > | |
| template<class MultiConnectorSource , class Target , class A1 > | |
| MultiConnectorSource::ConnectorType & | connect (MultiConnectorSource &source, A1 const &a1, Target &target) |
| Connect MultiConnector source to arbitrary target. More... | |
| template<class Source , class MultiConnectorTarget , class A1 > | |
| MultiConnectorTarget::ConnectorType & | connect (Source &source, MultiConnectorTarget &target, A1 const &a1) |
| Connect arbitrary source to MultiConnector target. More... | |
Join multiple packet streams with passive inputs.
The PassiveJoin will combine any number of packet streams. You may connect any number of ActiveOutput<>'s to the PassiveJoin instance. The combined stream is then provided on the ActiveOutput<> output.
Since PassiveJoin allows any number of incoming packet streams, the input connectors are dynamically managed. A special senf::ppi::connect() overload is used to dynamically create the needed input connectors. This hides this extra functionality from the user.
| senf::ppi::module::PassiveJoin< PacketType >::PassiveJoin | ( | ) |
| connector::ActiveOutput<PacketType> senf::ppi::module::PassiveJoin< PacketType >::output |