X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=PPI%2Fpredecl.hh;h=e5b1091badfe87b0db829992ac56b9360bc6a42e;hb=b89e3166f7680755683dccee5e48cb3a820185c0;hp=92dd00044fc919c64f9fed2958e4529a6aeb3b58;hpb=81ffa1c459b96dd44472bcef37e1e373934ee138;p=senf.git diff --git a/PPI/predecl.hh b/PPI/predecl.hh index 92dd000..e5b1091 100644 --- a/PPI/predecl.hh +++ b/PPI/predecl.hh @@ -1,8 +1,8 @@ // $Id$ // -// Copyright (C) 2007 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) +// 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 @@ -23,37 +23,56 @@ /** \file \brief predecl public header */ -#ifndef HH_predecl_ -#define HH_predecl_ 1 +#ifndef HH_SENF_PPI_predecl_ +#define HH_SENF_PPI_predecl_ 1 // Custom includes -#include //#include "predecl.mpp" ///////////////////////////////hh.p//////////////////////////////////////// namespace senf { + + class Packet; + namespace ppi { class EventDescriptor; template class EventImplementation; class EventManager; class RouteBase; + class ForwardingRoute; template class Route; class QueueingDiscipline; + class ModuleManager; + +#ifndef DOXYGEN namespace detail { class EventBindingBase; template class EventBinding; template struct EventArgType; - template class RouteImplementation; + class NonForwardingRouteImplementation; + class NonForwardingRouteToEventImplementation; + class NonForwardingRouteFromEventImplementation; + class ForwardForwardingRouteImplementation; + class BackwardForwardingRouteImplementation; + class ForwardForwardingRouteToEventImplementation; + class BackwardForwardingRouteFromEventImplementation; + template + class RouteImplementation; } +#endif + namespace module { class Module; namespace detail { template class RouteHelper; } + class PassiveJoin; + class PriorityJoin; + class ActiveDuplicator; } namespace connector { @@ -62,10 +81,26 @@ namespace ppi { class PassiveConnector; class InputConnector; class OutputConnector; - class ActiveInput; - class ActiveOutput; - class PassiveInput; - class PassiveOutput; + class GenericActiveInput; + class GenericActiveOutput; + class GenericPassiveInput; + class GenericPassiveOutput; + template class PassiveInput; + template class PassiveOutput; + template class ActiveInput; + template class ActiveOutput; + + class Jack; + +#ifndef DOXYGEN + + namespace detail { + template class TypedInputMixin; + template class TypedOutputMixin; + } + +#endif + } }}