X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2FMainpage.dox;h=f2f29051b024342e0f1d0ac302ebaf499f9f10c1;hb=6ba573a99f93543ee32292f79865751b3e9b89a4;hp=f4d8be7fe4a08703da33695a1f2f4681b5e719bc;hpb=69255c0f1669fc80b0e4a2bf524715f336b127ad;p=senf.git
diff --git a/PPI/Mainpage.dox b/PPI/Mainpage.dox
index f4d8be7..f2f2905 100644
--- a/PPI/Mainpage.dox
+++ b/PPI/Mainpage.dox
@@ -53,20 +53,7 @@
/** \page ppi_overview PPI Overview and Concepts
-
-
Contents
-
- - \ref ppi_design
- - \ref ppi_packets
- - \ref ppi_modules
- - \ref ppi_connectors
- - \ref ppi_connections
- - \ref ppi_throttling
- - \ref ppi_events
- - \ref ppi_run
- - \ref ppi_flows
-
-
+ \autotoc
\section ppi_design Design considerations
@@ -78,8 +65,9 @@
\section ppi_packets Packets
The PPI processes packets and uses the Packet
- library to handle them. All packets are passed around as generic \ref senf::Packet
- references, the PPI does not enforce any packet type restrictions.
+ library to handle them. All packets are internally passed around as generic \ref
+ senf::Packet references, however connectors may optionally be defined as sending or receiving
+ packets of a specific type only.
\section ppi_modules Modules
@@ -212,6 +200,9 @@
To provide this flexibility, all input connectors incorporate a packet queue. This queue is
exposed to the module and allows the module to optionally process packets in batches.
+ Connectors take an optional template argument which allows to specify the type of packet this
+ connector sends or received. This template arguments defaults to \ref senf::Packet.
+
\see \ref senf::ppi::connector
\section ppi_connections Connections
@@ -236,10 +227,10 @@
CopyPacketGenerator generator (stuffingPacket);
senf::UDPv4ClientSocketHandle inputSocket (1111);
- senf::ppi::module::ActiveSocketReader udpInput (inputSocket);
+ senf::ppi::module::ActiveSocketSource<> udpInput (inputSocket);
senf::UDPv4ClientSocketHandle outputSocket ("2.3.4.5:2222");
- senf::ppi::module::PassiveSocketWriter udpOutput (outputSocket);
+ senf::ppi::module::PassiveSocketSink<> udpOutput (outputSocket);
senf::ppi::module::PassiveQueue adaptor;
@@ -470,7 +461,28 @@
\section ppi_classdiagram Class Diagram
- \image html classes.png
+
+ \ref senf::ppi::connector::PassiveConnector
+ \ref senf::ppi::EventManager
+ \ref senf::ppi::connector::ActiveOutput
+ \ref senf::ppi::connector::ActiveInput
+ \ref senf::ppi::RouteBase
+ \ref senf::ppi::Route
+ \ref (some module)
+ \ref senf::ppi::EventImplementation
+ \ref senf::ppi::module::Module
+ \ref senf::ppi::connector::Connector
+ \ref senf::ppi::connector::PassiveOutput
+ \ref senf::ppi::detail::EventBindingBase
+ \ref senf::ppi::connector::InputConnector
+ \ref senf::ppi::detail::RouteImplementation
+ \ref senf::ppi::connector::OutputConnector
+ \ref senf::ppi::connector::ActiveConnector
+ \ref senf::ppi::detail::EventBinding
+ \ref senf::ppi::EventDescriptor
+ \ref senf::ppi::connector::PassiveInput
+
+ \htmlonly \endhtmlonly
*/