X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Ffilter.hpp;h=b135553f71daa01708663343c3cd9a89d84077a2;hb=cc38849384cc6d7b55c0d785ef44f03708d765ae;hp=b71e85f77123a7f40d0c18f2b400a29dd069dfd2;hpb=7467b072bb64f5c8575daa9917cce7df62d832f1;p=metaproxy-moved-to-github.git diff --git a/src/filter.hpp b/src/filter.hpp index b71e85f..b135553 100644 --- a/src/filter.hpp +++ b/src/filter.hpp @@ -1,4 +1,4 @@ -/* $Id: filter.hpp,v 1.7 2005-10-29 22:23:36 marc Exp $ +/* $Id: filter.hpp,v 1.12 2006-01-09 13:43:59 adam Exp $ Copyright (c) 2005, Index Data. %LICENSE% @@ -7,6 +7,7 @@ #ifndef FILTER_HPP #define FILTER_HPP +#include #include #include @@ -14,6 +15,7 @@ namespace yp2 { class Package; + namespace filter { class Base { public: @@ -22,23 +24,25 @@ namespace yp2 { ///sends Package off to next Filter, returns altered Package virtual void process(Package & package) const = 0; - virtual void configure(const xmlNode * ptr = 0) { }; - - - virtual const std::string type() const = 0; - }; - } - - class FilterException : public std::runtime_error { - public: - FilterException(const std::string message) - : std::runtime_error("FilterException: " + message){ + virtual void configure(const xmlNode * ptr) { }; }; - }; - + class FilterException : public std::runtime_error { + public: + FilterException(const std::string message) + : std::runtime_error("FilterException: " + message){ + }; + }; + + } } +struct yp2_filter_struct { + int ver; + const char *type; + yp2::filter::Base* (*creator)(); +}; + #endif /* * Local variables: