Utils/Console: Add short help to 'ls' output
[senf.git] / PPI / Connectors.cci
index 12c14a1..3f24b5d 100644 (file)
@@ -36,6 +36,7 @@
 prefix_ senf::ppi::connector::Connector & senf::ppi::connector::Connector::peer()
     const
 {
+    // The connector is not connected
     SENF_ASSERT(peer_);
     return *peer_;
 }
@@ -43,6 +44,8 @@ prefix_ senf::ppi::connector::Connector & senf::ppi::connector::Connector::peer(
 prefix_ senf::ppi::module::Module & senf::ppi::connector::Connector::module()
     const
 {
+    // The connector is not registered in the module -> probably a route() or noroute() statement is
+    // missing.
     SENF_ASSERT(module_);
     return *module_;
 }
@@ -56,8 +59,11 @@ prefix_ senf::ppi::connector::Connector::Connector()
 
 prefix_ senf::ppi::connector::Connector::~Connector()
 {
-    if (connected())
+    if (connected()) {
+        Connector & peer (*peer_);
         peer_->peer_ = 0;
+        peer.v_init();
+    }
 }
 
 prefix_ bool senf::ppi::connector::Connector::connected()
@@ -74,11 +80,6 @@ prefix_ void senf::ppi::connector::Connector::setModule(module::Module & module)
     module_ = &module;
 }
 
-prefix_ void senf::ppi::connector::Connector::init()
-{
-    v_init();
-}
-
 ///////////////////////////////////////////////////////////////////////////
 // senf::ppi::connector::PassiveConnector
 
@@ -161,6 +162,7 @@ prefix_ senf::ppi::connector::PassiveConnector::PassiveConnector()
 
 prefix_ void senf::ppi::connector::PassiveConnector::emit()
 {
+    // No event callback has been registered (onEvent() call missing)
     SENF_ASSERT(callback_);
     if (!throttled())
         callback_();
@@ -229,6 +231,7 @@ senf::ppi::connector::InputConnector::end()
 prefix_ senf::Packet senf::ppi::connector::InputConnector::peek()
     const
 {
+    // Cannot peek() head of empty queue
     SENF_ASSERT( ! queue_.empty() );
     return queue_.back();
 }
@@ -255,7 +258,7 @@ prefix_ senf::ppi::connector::InputConnector::InputConnector()
 ////////////////////////////////////////
 // private members
 
-prefix_ void senf::ppi::connector::InputConnector::enqueue(Packet p)
+prefix_ void senf::ppi::connector::InputConnector::enqueue(Packet const & p)
 {
     queue_.push_front(p);
     v_enqueueEvent();
@@ -270,13 +273,13 @@ prefix_ senf::ppi::connector::InputConnector & senf::ppi::connector::OutputConne
     return dynamic_cast<InputConnector&>(Connector::peer());
 }
 
-prefix_ void senf::ppi::connector::OutputConnector::operator()(Packet p)
+prefix_ void senf::ppi::connector::OutputConnector::operator()(Packet const & p)
 {
     if (connected())
         peer().enqueue(p);
 }
 
-prefix_ void senf::ppi::connector::OutputConnector::write(Packet p)
+prefix_ void senf::ppi::connector::OutputConnector::write(Packet const & p)
 {
     operator()(p);
 }