20#include <xrpl/basics/Number.h> 
   21#include <xrpl/basics/contract.h> 
   22#include <xrpl/beast/utility/Zero.h> 
   23#include <xrpl/protocol/Quality.h> 
   24#include <xrpl/protocol/QualityFunction.h> 
   32    Quality 
const& quality,
 
   34    : m_(0), b_(0), quality_(quality)
 
   36    if (
quality.rate() <= beast::zero)
 
   37        Throw<std::runtime_error>(
"QualityFunction quality rate is 0.");
 
 
   53    if (
m_ != 0 && 
quality.rate() != beast::zero)
 
 
static rounding_mode setround(rounding_mode mode)
 
Average quality of a path as a function of out: q(out) = m * out + b, where m = -1 / poolGets,...
 
QualityFunction(Quality const &quality, CLOBLikeTag)
 
void combine(QualityFunction const &qf)
Combines QF with the next step QF.
 
std::optional< Number > outFromAvgQ(Quality const &quality)
Find output to produce the requested average quality.
 
std::optional< Quality > const & quality() const
 
std::optional< Quality > quality_
 
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.