Further documentation updates (grmpf)
[senf.git] / PPI / AnnotationRouter.hh
index a186fd5..e8ea799 100644 (file)
@@ -41,15 +41,18 @@ namespace module {
     /** \brief Route packets to destination according to some annotation value
 
         This router takes packet on a single input and directs them to one of it outputs depending
-        on a packet annotation. Each output connected will be associated with a single annotation
-        value. Incoming packets for which no matching output is found are directed to a default
-        output. If this output is left unconnected, those packets will be dropped.
+        on a \link packet_usage_annotation packet annotation\endlink. Each output connected
+        will be associated with a single annotation value. Incoming packets for which no matching
+        output is found are directed to a default output. If this output is left unconnected, those
+        packets will be dropped.
 
         The \a AnnotationType template parameter defines the routing key. This annotation must
         support the following operations:
-        \li Comparison with '<'
-        \li Copy-construction
-        \li Output streaming to an ostream via '<<'
+        \li Comparison with '<' (\c LessThanCompatable concept)
+        \li Copy construction and copy assignment (\c Copyable und \c Assignable concepts)
+            (e.g. via compiler synthesized copy constructor and assignment operator)
+        \li Output streaming to an ostream via '\c <<' (for error description purposes) (\c
+            OutputStreamable concept)
 
         The following annotation can be used to route the packets according to a mac address.
         \code
@@ -100,7 +103,7 @@ namespace module {
 
         struct DuplicateKeyException : public senf::Exception
         { DuplicateKeyException(AnnotationType const & key) 
-              : senf::Exception("Duplicate senf::ppi::module::AnnotationRouter routing key")
+              : senf::Exception("Duplicate senf::ppi::module::AnnotationRouter routing key ")
                 { append(boost::lexical_cast<std::string>(key)); } };
 
     private: