X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2FSetup.hh;h=021d52894e50a7ff281ca7f1a161b6faa7b17e93;hb=c7ddbbb0bc014bdfe6daef91e2d1c512d77e9fff;hp=f7b2e8619fd1aa77f5a9d96b68ebdd4579ac4e0b;hpb=f73fa16ed5abdce272ac77f8b8b9ef2b9922c266;p=senf.git diff --git a/PPI/Setup.hh b/PPI/Setup.hh index f7b2e86..021d528 100644 --- a/PPI/Setup.hh +++ b/PPI/Setup.hh @@ -1,8 +1,8 @@ // $Id$ // -// Copyright (C) 2007 -// Fraunhofer Institute for Open Communication Systems (FOKUS) -// Competence Center NETwork research (NET), St. Augustin, GERMANY +// 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 @@ -47,14 +47,21 @@ namespace ppi { as \a source argument. In the same way, if a module has an input connector called \c input, the module may be given directly as \a target argument. This simplifies the most common case of a module with one input and one output connector. + + The connect call will check at runtime, whether the two connectors are type-compatible: + \li Either or both of the connectors are untyped (they accept/send arbitrary senf::Packet's) + \li Both connectors send/accept the exactly same packet type. + + \throws connector::IncompatibleConnectorsException if the two connectors are not type + compatible. \see \ref ppi_connections */ - void connect(connector::ActiveOutput & source, connector::PassiveInput & target); + void connect(connector::GenericActiveOutput & source, connector::GenericPassiveInput & target); /** \brief Connect modules \see connect() */ - void connect(connector::PassiveOutput & source, connector::ActiveInput & target); + void connect(connector::GenericPassiveOutput & source, connector::GenericActiveInput & target); #ifndef DOXYGEN