X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2FRoute.hh;h=fb2930597f6d1f3d5a97950067d8c2c684aa5c22;hb=81f84badf27b66dbadec9890646ca1193e998505;hp=307d3418972fd950d7376276070687c791b8072a;hpb=7231c220a7332754de3d16e4e8aacd5dbd31c501;p=senf.git diff --git a/PPI/Route.hh b/PPI/Route.hh index 307d341..fb29305 100644 --- a/PPI/Route.hh +++ b/PPI/Route.hh @@ -1,6 +1,8 @@ -// Copyright (C) 2007 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) +// $Id$ +// +// 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 @@ -21,8 +23,8 @@ /** \file \brief Route public header */ -#ifndef HH_Route_ -#define HH_Route_ 1 +#ifndef HH_SENF_PPI_Route_ +#define HH_SENF_PPI_Route_ 1 // Custom includes #include @@ -44,6 +46,17 @@ namespace ppi { public: virtual ~RouteBase(); +#ifdef DOXYGEN + Source & source() const; ///< Routing source + /**< \note The real implementation is in the \c + BaseRouteImplementation template in \c Route.ih. This + class is internal and not documented. */ + Target & target() const; ///< Routing target + /**< \note The real implementation is in the \c + BaseRouteImplementation template in \c Route.ih. This + class is internal and not documented. */ +#endif + protected: RouteBase(module::Module & module); @@ -119,9 +132,15 @@ namespace ppi { Route instances are created by Module::route statements. The Route class provides an interface to manipulate the flow processing. - The concrete interface provided depends on the type of route. If the route is a forwarding - route, it will be based on ForwardingRoute otherwise it will be based directly on - RouteBase. + Depending on the type of route, one of the following classes will be a baseclass: + +
ForwardingRoute
If the route is a \e forwarding route. This is a route + which forwards throttling notifications. This is the case, if one of the route endpoints is + a notify source (a connector::ActiveConnector) and the other is a + notify target (a connector::PassiveConnector or an EventDescriptor). + +
RouteBase
If the route is not a forwarding route, it is based directly on the + generic route base class
*/ template class Route