/****************************************************************************** * * swfiltermgr.h - definition of class SWFilterMgr used as an interface to * manage filters on a module * * $Id$ * * Copyright 2001-2013 CrossWire Bible Society (http://www.crosswire.org) * CrossWire Bible Society * P. O. Box 2528 * Tempe, AZ 85280-2528 * * 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 version 2. * * 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. * */ #ifndef SWFILTERMGR_H #define SWFILTERMGR_H #include #include SWORD_NAMESPACE_START class SWModule; class SWMgr; /** Class to manage different kinds of filters. */ class SWDLLEXPORT SWFilterMgr { private: SWMgr *parentMgr; public: SWFilterMgr(); virtual ~SWFilterMgr(); virtual void setParentMgr(SWMgr *parentMgr); virtual SWMgr *getParentMgr(); virtual void AddGlobalOptions(SWModule *module, ConfigEntMap §ion, ConfigEntMap::iterator start, ConfigEntMap::iterator end); virtual void AddLocalOptions(SWModule *module, ConfigEntMap §ion, ConfigEntMap::iterator start, ConfigEntMap::iterator end); /** * Adds the encoding filters which are defined in "section" to the SWModule object "module". * @param module To this module the encoding filter(s) are added * @param section We use this section to get a list of filters we should apply to the module */ virtual void AddEncodingFilters(SWModule *module, ConfigEntMap §ion); /** * Adds the render filters which are defined in "section" to the SWModule object "module". * @param module To this module the render filter(s) are added * @param section We use this section to get a list of filters we should apply to the module */ virtual void AddRenderFilters(SWModule *module, ConfigEntMap §ion); /** * Adds the strip filters which are defined in "section" to the SWModule object "module". * @param module To this module the strip filter(s) are added * @param section We use this section to get a list of filters we should apply to the module */ virtual void AddStripFilters(SWModule *module, ConfigEntMap §ion); /** * Adds the raw filters which are defined in "section" to the SWModule object "module". * @param module To this module the raw filter(s) are added * @param section We use this section to get a list of filters we should apply to the module */ virtual void AddRawFilters(SWModule *module, ConfigEntMap §ion); }; SWORD_NAMESPACE_END #endif