Combination of PassiveConnector and InputConnector. More...
#include <senf/PPI/Connectors.hh>
Inherits senf::ppi::connector::PassiveConnector, senf::ppi::connector::InputConnector, and senf::safe_bool< GenericPassiveInput >.
Inherited by senf::ppi::connector::PassiveInput< EthernetPacket >, senf::ppi::connector::PassiveInput< Packet >, senf::ppi::connector::PassiveInput< RadiotapPacket >, senf::ppi::connector::PassiveInput< senf::EthernetPacket >, senf::ppi::connector::PassiveInput< senf::RadiotapPacket >, senf::ppi::connector::PassiveInput< typename Writer::PacketType >, and senf::ppi::connector::PassiveInput< PacketType >.
Public Member Functions | |
GenericActiveOutput & | peer () const |
bool | boolean_test () const |
true , if ! empty() More... | |
template<class ThrottlingDisc > | |
void | throttlingDisc (ThrottlingDisc const &disc) |
Change the throttling discipline. More... | |
void | throttlingDisc (ThrottlingDiscipline::None_t) |
Disable throttling discipline. More... | |
![]() | |
~PassiveConnector () | |
template<class Handler > | |
void | onRequest (Handler handler) |
Register I/O event handler. More... | |
bool | throttled () const |
Get accumulative throttling state. More... | |
bool | nativeThrottled () const |
Get native throttling state. More... | |
void | throttle () |
Set native throttling. More... | |
void | unthrottle () |
Revoke native throttling. More... | |
ActiveConnector & | peer () const |
![]() | |
Connector & | peer () const |
Get peer connected to this connector. More... | |
module::Module & | module () const |
Get this connectors containing module. More... | |
bool | connected () const |
true , if connector connected, false otherwise More... | |
void | disconnect () |
Disconnect connector from peer. More... | |
console::DirectoryNode & | consoleDir () const |
void | tracingState (TraceState state) |
TraceState | tracingState () const |
![]() | |
Packet const & | operator() () |
Get a packet. More... | |
Packet const & | read () |
Alias for operator()() More... | |
OutputConnector & | peer () const |
size_type | queueSize () const |
Return number of elements in the queue. More... | |
bool | empty () const |
Return queueSize() == 0. More... | |
![]() | |
operator bool_type () const | |
bool | operator! () const |
Protected Member Functions | |
GenericPassiveInput () | |
virtual void | v_disconnected () |
virtual void | v_connected () |
![]() | |
PassiveConnector () | |
void | emit () |
![]() | |
Connector () | |
virtual | ~Connector () |
void | connect (Connector &target) |
void | trace (Packet const &p, char const *label) |
void | throttleTrace (char const *label, char const *type) |
void | unregisterConnector () |
![]() | |
InputConnector () | |
![]() | |
~comparable_safe_bool () | |
![]() | |
void | this_type_does_not_support_comparisons () const |
safe_bool_base () | |
safe_bool_base (const safe_bool_base &) | |
safe_bool_base & | operator= (const safe_bool_base &) |
~safe_bool_base () | |
Additional Inherited Members | |
![]() | |
enum | TraceState { NO_TRACING, TRACE_IDS, TRACE_CONTENTS } |
![]() | |
typedef Queue::const_iterator | queue_iterator |
Iterator type of the embedded queue. More... | |
typedef Queue::size_type | size_type |
Unsigned type for counting queue elements. More... | |
![]() | |
static void | staticTracingState (TraceState state) |
static void | tracingFilter (std::string const &traceFilter) |
![]() | |
typedef void(safe_bool_base::* | bool_type) () const |
Combination of PassiveConnector and InputConnector.
The GenericPassiveInput automatically controls the connectors throttling state using a queueing discipline. The standard queueing discipline is ThresholdThrottling, which throttles the connection whenever the queue length reaches the high threshold and unthrottles the connection when the queue reaches the low threshold. The default queueing discipline is ThresholdThrottling(1,0)
which will throttle the input whenever the queue is non-empty.
Definition at line 478 of file Connectors.hh.
|
protected |
bool senf::ppi::connector::GenericPassiveInput::boolean_test | ( | ) | const |
true
, if ! empty()
GenericActiveOutput& senf::ppi::connector::GenericPassiveInput::peer | ( | ) | const |
void senf::ppi::connector::GenericPassiveInput::throttlingDisc | ( | ThrottlingDisc const & | disc | ) |
Change the throttling discipline.
The throttling discipline is a class which provides the ThrottlingDiscipline interface.
[in] | disc | New throttling discipline |
void senf::ppi::connector::GenericPassiveInput::throttlingDisc | ( | ThrottlingDiscipline::None_t | ) |
Disable throttling discipline.
Definition at line 516 of file Connectors.cc.
|
protectedvirtual |
Reimplemented from senf::ppi::connector::PassiveConnector.
Definition at line 493 of file Connectors.cc.
|
protectedvirtual |
Reimplemented from senf::ppi::connector::PassiveConnector.
Definition at line 486 of file Connectors.cc.