15 #ifndef BORNAGAIN_MVVM_MODEL_MVVM_UTILS_REALLIMITS_H
16 #define BORNAGAIN_MVVM_MODEL_MVVM_UTILS_REALLIMITS_H
18 #include "mvvm/model_export.h"
30 static RealLimits lowerLimited(
double bound_value);
39 static RealLimits upperLimited(
double bound_value);
42 static RealLimits limited(
double left_bound_value,
double right_bound_value);
48 bool hasLowerLimit()
const;
51 double lowerLimit()
const;
54 bool hasUpperLimit()
const;
57 double upperLimit()
const;
60 bool hasLowerAndUpperLimits()
const;
63 bool isInRange(
double value)
const;
69 bool isLimitless()
const;
70 bool isPositive()
const;
71 bool isNonnegative()
const;
72 bool isLowerLimited()
const;
73 bool isUpperLimited()
const;
74 bool isLimited()
const;
77 RealLimits(
bool has_lower_limit,
bool has_upper_limit,
double lower_limit,
double upper_limit);
bool operator<(const CumulativeValue &lhs, const CumulativeValue &rhs)
bool operator!=(const Material &left, const Material &right)
Comparison operator for material wrapper (inequality check)
bool operator==(const Material &left, const Material &right)
Comparison operator for material wrapper (equality check)
double m_lower_limit
parameter has upper bound
bool m_has_upper_limit
parameter has lower bound
double m_upper_limit
minimum allowed value
materialitems.h Collection of materials to populate MaterialModel.