//#include "Joins.mpp"
#define prefix_
-///////////////////////////////cc.p////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
// senf::ppi::module::PassiveJoin
-////////////////////////////////////////
+prefix_ senf::ppi::module::PassiveJoin::PassiveJoin()
+{
+ noroute(output);
+ output.onThrottle(&PassiveJoin::onThrottle);
+ output.onUnthrottle(&PassiveJoin::onUnthrottle);
+}
+
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
// private members
prefix_ void senf::ppi::module::PassiveJoin::connectorSetup(connector::PassiveInput<> & conn)
{
noroute(conn);
conn.onRequest(boost::bind(&PassiveJoin::request,this,boost::ref(conn)));
-}
-
-prefix_ void senf::ppi::module::PassiveJoin::request(connector::GenericPassiveInput & input)
-{
- output(input());
+ conn.qdisc( QueueingDiscipline::NONE);
}
prefix_ void senf::ppi::module::PassiveJoin::onThrottle()
bind(&connector::GenericPassiveInput::unthrottle, _1));
}
-///////////////////////////////////////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
// senf::ppi::module::PriorityJoin
-////////////////////////////////////////
+prefix_ senf::ppi::module::PriorityJoin::PriorityJoin()
+{
+ noroute(output);
+ output.onRequest(&PriorityJoin::request);
+}
+
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
// private members
prefix_ void
if (priority < 0) {
priority = connectors().size() + priority;
- if (priority < 0)
+ if (priority < 0)
priority = 0;
}
if (priority >= int(connectors().size())-1)
return;
-
+
connectors().insert(connectors().begin()+priority, connectors().pop_back().release());
}
output.unthrottle();
}
-///////////////////////////////cc.e////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
#undef prefix_
//#include "Joins.mpp"