X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FPPI%2FMainpage.dox;h=cc84acbc6dc328c6d0b5597d19fc7c687d4ba11d;hb=8a6697d11e9a6557d9a5c42b4052666fce32bc10;hp=b0ebe0c76d3309386719a8fd6ca431533a882292;hpb=3fe2ed38b800bcb57afff676698462e763724245;p=senf.git diff --git a/senf/PPI/Mainpage.dox b/senf/PPI/Mainpage.dox index b0ebe0c..cc84acb 100644 --- a/senf/PPI/Mainpage.dox +++ b/senf/PPI/Mainpage.dox @@ -2,23 +2,28 @@ // // Copyright (C) 2007 // Fraunhofer Institute for Open Communication Systems (FOKUS) -// Competence Center NETwork research (NET), St. Augustin, GERMANY -// Stefan Bund // -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; either version 2 of the License, or -// (at your option) any later version. +// The contents of this file are subject to the Fraunhofer FOKUS Public License +// Version 1.0 (the "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// http://senf.berlios.de/license.html // -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. +// The Fraunhofer FOKUS Public License Version 1.0 is based on, +// but modifies the Mozilla Public License Version 1.1. +// See the full license text for the amendments. // -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the -// Free Software Foundation, Inc., -// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +// Software distributed under the License is distributed on an "AS IS" basis, +// WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +// for the specific language governing rights and limitations under the License. +// +// The Original Code is Fraunhofer FOKUS code. +// +// The Initial Developer of the Original Code is Fraunhofer-Gesellschaft e.V. +// (registered association), Hansastraße 27 c, 80686 Munich, Germany. +// +// Contributor(s): +// Stefan Bund + /** \mainpage libPPI : The Packet Processing Infrastructure @@ -44,7 +49,7 @@ modules. \see \ref ppi_overview \n - PPI Example Application: + PPI Example Application: RateStuffer \n \ref senf::ppi::module "Modules" \n \ref senf::ppi::connector "Connectors and Jacks" \n @@ -64,10 +69,10 @@ \section ppi_packets Packets - The PPI processes packets and uses the Packet - 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. + The PPI processes packets and uses the Packet 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 @@ -216,10 +221,10 @@ It is possible to connect two active or passive connectors with each other using a special adaptor module (senf::ppi::module::PassiveQueue or senf::ppi::module::ActiveFeeder respectively). - + Additionally, the connectors must be type-compatible: Either one (or both) of the connectors must be untyped (they accept arbitrary senf::Packet's, the optional tempalte argument is empty), - or they both accept the same type of packet. This check is performed at runtime. + or they both accept the same type of packet. This check is performed at runtime. To complete our simplified example: Lets connect senf::ppi::module::ActiveSocketReader and senf::ppi::module::PassiveSocketWriter to our example module: @@ -324,7 +329,7 @@ The PPI really is not concerned, how the events are called and what information is needed to perform the call. This is handled by the Scheduler, which is wrapped by the event + href="@TOPDIR@/senf/Scheduler/doc/html/index.html">Scheduler, which is wrapped by the event classes. All events are derived from senf::ppi::EventDescriptor. The base class allows to enable and