X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Scheduler%2FReadHelper.ih;h=5df61647e56c756303d51091e4a86fd28cc96183;hb=2d51a34f79dd18b23c54172444b2cc7433b8f5f0;hp=e174b5f640671f22e89585bb5f5d99445539f35a;hpb=c5ab87643518405aa5171ed4602f7234873a4900;p=senf.git diff --git a/Scheduler/ReadHelper.ih b/Scheduler/ReadHelper.ih index e174b5f..5df6164 100644 --- a/Scheduler/ReadHelper.ih +++ b/Scheduler/ReadHelper.ih @@ -1,7 +1,26 @@ // $Id$ // +// Copyright (C) 2006 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. +// +// 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. +// +// 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. // Copyright (C) 2006 +/** \file + \brief ReadHelper internal header */ + #ifndef IH_ReadHelper_ #define IH_ReadHelper_ 1 @@ -9,13 +28,27 @@ ///////////////////////////////ih.p//////////////////////////////////////// -namespace satcom { -namespace lib { +namespace senf { + + /** \brief Abstract predicate interface + \internal + */ template struct ReadHelper::InternalPredicate { virtual ~InternalPredicate() {} + + /** \brief template to runtime polymorphic barrier for the predicate interface + \internal + + \implementation This class will provide a polymorphic + wrapper around the non-polymorphic ReadHelper + predicate. This is used, so the predicate can be + specified as an arbitrary callable object (even a + boost::function or a Boost.Lambda expression) without + imposing any inheritance relationship on the predicate + */ template struct Dispatcher : public ReadHelper::InternalPredicate @@ -28,7 +61,7 @@ namespace lib { virtual std::string::size_type operator()(std::string const & data) = 0; }; -}} +} ///////////////////////////////ih.e////////////////////////////////////////