}
FactorSet::FactorSet(const std::string& name, double default_value,
- std::function<double(s_smpi_factor_t const&)> const& lambda)
+ std::function<double(s_smpi_factor_t const&, double)> const& lambda)
: name_(name), default_value_(default_value), lambda_(lambda)
{
}
double FactorSet::operator()()
{
- return lambda_(factors_.front());
+ return lambda_(factors_.front(), 0);
}
double FactorSet::operator()(double size)
XBT_DEBUG("%s: %f <= %zu return default %f", name_.c_str(), size, fact.factor, default_value_);
return default_value_;
}
- double val = lambda_(factors_[i - 1]);
+ double val = lambda_(factors_[i - 1], size);
XBT_DEBUG("%s: %f <= %zu return %f", name_.c_str(), size, fact.factor, val);
return val;
}
}
- double val = lambda_(factors_.back());
+ double val = lambda_(factors_.back(), size);
XBT_DEBUG("%s: %f > %zu return %f", name_.c_str(), size, factors_.back().factor, val);
return val;