Utils/Termlib: New karmic fix
[senf.git] / senf / PPI / Connectors.hh
index e6b8c07..0dfe9cf 100644 (file)
@@ -30,9 +30,9 @@
 #include <deque>
 #include <boost/utility.hpp>
 #include <boost/scoped_ptr.hpp>
-#include "../Utils/safe_bool.hh"
-#include "../Utils/Exception.hh"
-#include "../Packets/Packets.hh"
+#include <senf/Utils/safe_bool.hh>
+#include <senf/Utils/Exception.hh>
+#include <senf/Packets/Packets.hh>
 #include "predecl.hh"
 #include "detail/Callback.hh"
 #include "Queueing.hh"
@@ -184,9 +184,13 @@ namespace connector {
 
         void trace(Packet const & p, char const * label);
         void throttleTrace(char const * label, char const * type);
+
+        void unregisterConnector();
         
     private:
         virtual std::type_info const & packetTypeID();
+        
+        virtual void v_disconnected() const;
 
         void setModule(module::Module & module);
 
@@ -218,6 +222,8 @@ namespace connector {
         : public virtual Connector
     {
     public:
+        ~PassiveConnector();
+
         template <class Handler>
         void onRequest(Handler handler);///< Register I/O event handler
                                         /**< The registered handler will be called, whenever packets
@@ -261,6 +267,7 @@ namespace connector {
 
         // called by ForwardingRoute to register a new route
         void registerRoute(ForwardingRoute & route);
+        void unregisterRoute(ForwardingRoute & route);
 
         typedef ppi::detail::Callback<>::type Callback;
         Callback callback_;
@@ -289,6 +296,8 @@ namespace connector {
     {
         typedef ppi::detail::Callback<>::type Callback;
     public:
+        ~ActiveConnector();
+
         template <class Handler>
         void onThrottle(Handler handler); ///< Register throttle notification handler
                                         /**< The handler register here will be called, whenever a
@@ -331,6 +340,7 @@ namespace connector {
 
         // called by ForwardingRoute to register a new route
         void registerRoute(ForwardingRoute & route);
+        void unregisterRoute(ForwardingRoute & route);
 
         Callback throttleCallback_;
         Callback unthrottleCallback_;