{}
prefix_ senf::ppi::connector::Connector::~Connector()
-{}
+{
+ if (peer_)
+ peer_->peer_ = 0;
+}
prefix_ void senf::ppi::connector::Connector::connect(Connector & target)
{
+ BOOST_ASSERT( ! peer_ && ! target.peer_ );
peer_ = & target;
target.peer_ = this;
}
prefix_ void senf::ppi::connector::PassiveConnector::throttle()
{
- if (!throttled())
+ if (!throttled()) {
+ nativeThrottled_ = true;
emitThrottle();
- nativeThrottled_ = true;
+ }
}
prefix_ void senf::ppi::connector::PassiveConnector::unthrottle()
///////////////////////////////////////////////////////////////////////////
// senf::ppi::connector::InputConnector
+prefix_ senf::Packet senf::ppi::connector::InputConnector::read()
+{
+ return operator()();
+}
+
prefix_ senf::ppi::connector::OutputConnector & senf::ppi::connector::InputConnector::peer()
const
{
peer().enqueue(p);
}
+prefix_ void senf::ppi::connector::OutputConnector::write(Packet p)
+{
+ operator()(p);
+}
+
prefix_ senf::ppi::connector::InputConnector & senf::ppi::connector::OutputConnector::peer()
const
{