diff --git a/PPI/Connectors.cc b/PPI/Connectors.cc
index 5c4ceff4e3a4553f49049e74250cb31ca89218b7..e11e5e23307733c50042d1524458d40c59dfab36 100644
--- a/PPI/Connectors.cc
+++ b/PPI/Connectors.cc
@@ -53,6 +53,11 @@ prefix_ void senf::ppi::connector::Connector::connect(Connector & target)
     target.peer_ = this;
 }
 
+prefix_ std::type_info const & senf::ppi::connector::Connector::packetTypeID()
+{
+    return typeid(void);
+}
+
 ///////////////////////////////////////////////////////////////////////////
 // senf::ppi::connector::PassiveConnector
 
diff --git a/PPI/Connectors.hh b/PPI/Connectors.hh
index be55849db43207ae9ee86a73b5f43eaaa4acc6f6..60b1f719d8ba476b4a5ada017886a8970153cc38 100644
--- a/PPI/Connectors.hh
+++ b/PPI/Connectors.hh
@@ -123,7 +123,7 @@ namespace connector {
         void connect(Connector & target);
 
     private:
-        virtual std::type_info const & packetTypeID() = 0;
+        virtual std::type_info const & packetTypeID();
 
         void setModule(module::Module & module);
 
@@ -456,27 +456,24 @@ namespace connector {
 
 #   define TypedConnector_Input read
 #   define TypedConnector_Output write
-#   define TypedConnector(pType, dir)                                                              \
+#   define TypedConnector(pType, dir)                                                             \
         template <class PacketType>                                                               \
-        class pType ## dir                                                                         \
-            : public Generic ## pType ## dir,                                                      \
-              private detail::Typed ## dir ## Mixin<pType ## dir <PacketType>, PacketType>         \
+        class pType ## dir                                                                        \
+            : public Generic ## pType ## dir,                                                     \
+              private detail::Typed ## dir ## Mixin<pType ## dir <PacketType>, PacketType>        \
         {                                                                                         \
-            typedef detail::Typed ## dir ## Mixin<pType ## dir <PacketType>, PacketType> mixin;    \
+            typedef detail::Typed ## dir ## Mixin<pType ## dir <PacketType>, PacketType> mixin;   \
         public:                                                                                   \
             using mixin::operator();                                                              \
             using mixin::TypedConnector_ ## dir ;                                                 \
         private:                                                                                  \
             virtual std::type_info const & packetTypeID()                                         \
                 { return typeid(typename PacketType::type); }                                     \
-            friend class detail::Typed ## dir ## Mixin<pType ## dir <PacketType>, PacketType>;     \
+            friend class detail::Typed ## dir ## Mixin<pType ## dir <PacketType>, PacketType>;    \
         };                                                                                        \
         template <>                                                                               \
-        class pType ## dir <Packet> : public Generic ## pType ## dir                                \
-        {                                                                                         \
-        private:                                                                                  \
-            virtual std::type_info const & packetTypeID() { return typeid(void); }                \
-        }
+        class pType ## dir <Packet> : public Generic ## pType ## dir                              \
+        {}
 
     TypedConnector( Passive, Input  );
     TypedConnector( Passive, Output );
diff --git a/PPI/Route.ih b/PPI/Route.ih
index 01836c9d63bc98e3568178983c3c215442312bdc..76125e3ba05268794d1de9ca4ad1125ad1ee035c 100644
--- a/PPI/Route.ih
+++ b/PPI/Route.ih
@@ -47,6 +47,8 @@ namespace detail {
     struct RoutingTraitsImplementation
     {
         BOOST_STATIC_ASSERT((boost::is_base_of<connector::Connector, Connector>::value));
+        
+        static bool const event = false;
 
         static bool const notifySource = boost::is_base_of<
             connector::ActiveConnector, Connector>::value;
@@ -66,6 +68,8 @@ namespace detail {
     template <class Event>
     struct RoutingTraitsImplementation<Event,true>
     {
+        static bool const event = true;
+
         static bool const notifySource = false;
         static bool const notifyTarget = true;
 
diff --git a/Packets/ParseHelpers.hh b/Packets/ParseHelpers.hh
index f79e956801de9636fd6b16fbc2f18cbd407f1451..a8d5fbda1ed7671f56b94f9f201c47332bbdc29e 100644
--- a/Packets/ParseHelpers.hh
+++ b/Packets/ParseHelpers.hh
@@ -278,7 +278,7 @@
 
     \ingroup packetparser
  */
-///\ingroup packetparsermacros
+///\addtogroup packetparsermacros
 ///\{
 
 ///\name Control information