diff options
Diffstat (limited to 'project2/cache.cpp')
-rw-r--r-- | project2/cache.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/project2/cache.cpp b/project2/cache.cpp index bdf012b..32dc3c5 100644 --- a/project2/cache.cpp +++ b/project2/cache.cpp @@ -2,6 +2,7 @@ #include "rowSet.h" #include "rowProcessor.h" #include "logger.h" +#include <boost/foreach.hpp> Cache::Cache(const xmlpp::Element * p) : IHaveParameters(p), @@ -26,3 +27,16 @@ bool Cache::checkAndExecute(const Glib::ustring & n, const Glib::ustring & f, co return false; } +void +Cache::applyKeys(const boost::function2<void, const std::string &, const VariableType &> & f, const IHaveParameters * ps) const +{ + BOOST_FOREACH(const IHaveParameters::Parameters::value_type & p, allParameters()) { + f(p.first, p.second->value()); + } + if (inherit) { + BOOST_FOREACH(const IHaveParameters::Parameters::value_type & p, ps->allParameters()) { + f(p.first, p.second->value()); + } + } +} + |