/** \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 \link packet_usage_annotation packet annotation\endlink. Each output connected
+ on a \ref packet_usage_annotation "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.
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