|
typedef base_unit | units::category::scalar_unit |
| Represents a quantity with no dimension. More...
|
|
typedef base_unit | units::category::dimensionless_unit |
| Represents a quantity with no dimension. More...
|
|
typedef base_unit< detail::meter_ratio< 1 > > | units::category::length_unit |
| Represents an SI base unit of length. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 1 > > | units::category::mass_unit |
| Represents an SI base unit of mass. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::time_unit |
| Represents an SI base unit of time. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::angle_unit |
| Represents an SI base unit of angle. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::current_unit |
| Represents an SI base unit of current. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::temperature_unit |
| Represents an SI base unit of temperature. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::substance_unit |
| Represents an SI base unit of amount of substance. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::luminous_intensity_unit |
| Represents an SI base unit of luminous intensity. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 2 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 > > | units::category::solid_angle_unit |
| Represents an SI derived unit of solid angle. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio<-1 > > | units::category::frequency_unit |
| Represents an SI derived unit of frequency. More...
|
|
typedef base_unit< detail::meter_ratio< 1 >, std::ratio< 0 >, std::ratio<-1 > > | units::category::velocity_unit |
| Represents an SI derived unit of velocity. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio<-1 >, std::ratio< 1 > > | units::category::angular_velocity_unit |
| Represents an SI derived unit of angular velocity. More...
|
|
typedef base_unit< detail::meter_ratio< 1 >, std::ratio< 0 >, std::ratio<-2 > > | units::category::acceleration_unit |
| Represents an SI derived unit of acceleration. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio<-2 >, std::ratio< 1 > > | units::category::angular_acceleration_unit |
| Represents an SI derived unit of angular acceleration. More...
|
|
typedef base_unit< detail::meter_ratio< 1 >, std::ratio< 1 >, std::ratio<-2 > > | units::category::force_unit |
| Represents an SI derived unit of force. More...
|
|
typedef base_unit< detail::meter_ratio<-1 >, std::ratio< 1 >, std::ratio<-2 > > | units::category::pressure_unit |
| Represents an SI derived unit of pressure. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 1 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::charge_unit |
| Represents an SI derived unit of charge. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-2 > > | units::category::energy_unit |
| Represents an SI derived unit of energy. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-3 > > | units::category::power_unit |
| Represents an SI derived unit of power. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-3 >, std::ratio< 0 >, std::ratio<-1 > > | units::category::voltage_unit |
| Represents an SI derived unit of voltage. More...
|
|
typedef base_unit< detail::meter_ratio<-2 >, std::ratio<-1 >, std::ratio< 4 >, std::ratio< 0 >, std::ratio< 2 > > | units::category::capacitance_unit |
| Represents an SI derived unit of capacitance. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-3 >, std::ratio< 0 >, std::ratio<-2 > > | units::category::impedance_unit |
| Represents an SI derived unit of impedance. More...
|
|
typedef base_unit< detail::meter_ratio<-2 >, std::ratio<-1 >, std::ratio< 3 >, std::ratio< 0 >, std::ratio< 2 > > | units::category::conductance_unit |
| Represents an SI derived unit of conductance. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-2 >, std::ratio< 0 >, std::ratio<-1 > > | units::category::magnetic_flux_unit |
| Represents an SI derived unit of magnetic flux. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 1 >, std::ratio<-2 >, std::ratio< 0 >, std::ratio<-1 > > | units::category::magnetic_field_strength_unit |
| Represents an SI derived unit of magnetic field strength. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-2 >, std::ratio< 0 >, std::ratio<-2 > > | units::category::inductance_unit |
| Represents an SI derived unit of inductance. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 2 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::luminous_flux_unit |
| Represents an SI derived unit of luminous flux. More...
|
|
typedef base_unit< detail::meter_ratio<-2 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 2 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::illuminance_unit |
| Represents an SI derived unit of illuminance. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio<-1 > > | units::category::radioactivity_unit |
| Represents an SI derived unit of radioactivity. More...
|
|
typedef base_unit< detail::meter_ratio< 2 >, std::ratio< 1 >, std::ratio<-2 > > | units::category::torque_unit |
| Represents an SI derived unit of torque. More...
|
|
typedef base_unit< detail::meter_ratio< 2 > > | units::category::area_unit |
| Represents an SI derived unit of area. More...
|
|
typedef base_unit< detail::meter_ratio< 3 > > | units::category::volume_unit |
| Represents an SI derived unit of volume. More...
|
|
typedef base_unit< detail::meter_ratio<-3 >, std::ratio< 1 > > | units::category::density_unit |
| Represents an SI derived unit of density. More...
|
|
typedef base_unit | units::category::concentration_unit |
| Represents a unit of concentration. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::data_unit |
| Represents a unit of data size. More...
|
|
typedef base_unit< detail::meter_ratio< 0 >, std::ratio< 0 >, std::ratio<-1 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 0 >, std::ratio< 1 > > | units::category::data_transfer_rate_unit |
| Represents a unit of data transfer rate. More...
|
|
template<class U > |
using | units::traits::base_unit_of = typename units::detail::base_unit_of_impl< U >::type |
| Trait which returns the base_unit type that a unit is originally derived from. More...
|
|
template<class U > |
using | units::inverse = typename units::detail::inverse_impl< U >::type |
| represents the inverse unit type of class U . More...
|
|
template<class U > |
using | units::squared = typename units::detail::squared_impl< U >::type |
| represents the unit type of class U squared More...
|
|
template<class U > |
using | units::cubed = typename units::detail::cubed_impl< U >::type |
| represents the type of class U cubed. More...
|
|
template<typename Ratio , std::intmax_t Eps = 10000000000> |
using | units::ratio_sqrt = typename units::detail::Sqrt< Ratio, std::ratio< 1, Eps > >::type |
| Calculate square root of a ratio at compile-time. More...
|
|
template<class U , std::intmax_t Eps = 10000000000> |
using | units::square_root = typename units::detail::sqrt_impl< U, Eps >::type |
| represents the square root of type class U . More...
|
|
template<class U , class... Us> |
using | units::compound_unit = typename units::detail::compound_impl< U, Us... >::type |
| Represents a unit type made up from other units. More...
|
|
typedef unit< std::ratio< 1 >, units::category::scalar_unit > | units::dimensionless::scalar |
|
typedef unit< std::ratio< 1 >, units::category::dimensionless_unit > | units::dimensionless::dimensionless |
|
typedef unit_t< scalar > | units::dimensionless::scalar_t |
|
typedef scalar_t | units::dimensionless::dimensionless_t |
|
typedef unit_t< scalar, UNIT_LIB_DEFAULT_TYPE, decibel_scale > | units::dimensionless::dB_t |
|
typedef dB_t | units::dimensionless::dBi_t |
|
|
template<class U > |
using | units::atto = typename units::detail::prefix< std::atto, U >::type |
| Represents the type of class U with the metric 'atto' prefix appended. More...
|
|
template<class U > |
using | units::femto = typename units::detail::prefix< std::femto, U >::type |
| Represents the type of class U with the metric 'femto' prefix appended. More...
|
|
template<class U > |
using | units::pico = typename units::detail::prefix< std::pico, U >::type |
| Represents the type of class U with the metric 'pico' prefix appended. More...
|
|
template<class U > |
using | units::nano = typename units::detail::prefix< std::nano, U >::type |
| Represents the type of class U with the metric 'nano' prefix appended. More...
|
|
template<class U > |
using | units::micro = typename units::detail::prefix< std::micro, U >::type |
| Represents the type of class U with the metric 'micro' prefix appended. More...
|
|
template<class U > |
using | units::milli = typename units::detail::prefix< std::milli, U >::type |
| Represents the type of class U with the metric 'milli' prefix appended. More...
|
|
template<class U > |
using | units::centi = typename units::detail::prefix< std::centi, U >::type |
| Represents the type of class U with the metric 'centi' prefix appended. More...
|
|
template<class U > |
using | units::deci = typename units::detail::prefix< std::deci, U >::type |
| Represents the type of class U with the metric 'deci' prefix appended. More...
|
|
template<class U > |
using | units::deca = typename units::detail::prefix< std::deca, U >::type |
| Represents the type of class U with the metric 'deca' prefix appended. More...
|
|
template<class U > |
using | units::hecto = typename units::detail::prefix< std::hecto, U >::type |
| Represents the type of class U with the metric 'hecto' prefix appended. More...
|
|
template<class U > |
using | units::kilo = typename units::detail::prefix< std::kilo, U >::type |
| Represents the type of class U with the metric 'kilo' prefix appended. More...
|
|
template<class U > |
using | units::mega = typename units::detail::prefix< std::mega, U >::type |
| Represents the type of class U with the metric 'mega' prefix appended. More...
|
|
template<class U > |
using | units::giga = typename units::detail::prefix< std::giga, U >::type |
| Represents the type of class U with the metric 'giga' prefix appended. More...
|
|
template<class U > |
using | units::tera = typename units::detail::prefix< std::tera, U >::type |
| Represents the type of class U with the metric 'tera' prefix appended. More...
|
|
template<class U > |
using | units::peta = typename units::detail::prefix< std::peta, U >::type |
| Represents the type of class U with the metric 'peta' prefix appended. More...
|
|
template<class U > |
using | units::exa = typename units::detail::prefix< std::exa, U >::type |
| Represents the type of class U with the metric 'exa' prefix appended. More...
|
|
|
template<class U > |
using | units::kibi = typename units::detail::prefix< std::ratio< 1024 >, U >::type |
| Represents the type of class U with the binary 'kibi' prefix appended. More...
|
|
template<class U > |
using | units::mebi = typename units::detail::prefix< std::ratio< 1048576 >, U >::type |
| Represents the type of class U with the binary 'mibi' prefix appended. More...
|
|
template<class U > |
using | units::gibi = typename units::detail::prefix< std::ratio< 1073741824 >, U >::type |
| Represents the type of class U with the binary 'gibi' prefix appended. More...
|
|
template<class U > |
using | units::tebi = typename units::detail::prefix< std::ratio< 1099511627776 >, U >::type |
| Represents the type of class U with the binary 'tebi' prefix appended. More...
|
|
template<class U > |
using | units::pebi = typename units::detail::prefix< std::ratio< 1125899906842624 >, U >::type |
| Represents the type of class U with the binary 'pebi' prefix appended. More...
|
|
template<class U > |
using | units::exbi = typename units::detail::prefix< std::ratio< 1152921504606846976 >, U >::type |
| Represents the type of class U with the binary 'exbi' prefix appended. More...
|
|
|
template<typename T > |
std::string | units::detail::to_string (const T &t) |
|
template<typename T > |
constexpr const char * | units::name (const T &) |
|
template<typename T > |
constexpr const char * | units::abbreviation (const T &) |
|
template<class UnitFrom , class UnitTo , typename T = UNIT_LIB_DEFAULT_TYPE> |
static constexpr T | units::convert (const T &value) noexcept |
| converts a value from one type to another. More...
|
|
template<class UnitType , typename T , class = std::enable_if_t<std::is_arithmetic<T>::value>> |
constexpr UnitType | units::make_unit (const T value) noexcept |
| Constructs a unit container from an arithmetic type. More...
|
|
template<class Units , typename T , template< typename > class NonLinearScale, typename RhsType > |
unit_t< Units, T, NonLinearScale > & | units::operator+= (unit_t< Units, T, NonLinearScale > &lhs, const RhsType &rhs) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale, typename RhsType > |
unit_t< Units, T, NonLinearScale > & | units::operator-= (unit_t< Units, T, NonLinearScale > &lhs, const RhsType &rhs) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale, typename RhsType > |
unit_t< Units, T, NonLinearScale > & | units::operator*= (unit_t< Units, T, NonLinearScale > &lhs, const RhsType &rhs) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale, typename RhsType > |
unit_t< Units, T, NonLinearScale > & | units::operator/= (unit_t< Units, T, NonLinearScale > &lhs, const RhsType &rhs) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale> |
constexpr unit_t< Units, T, NonLinearScale > | units::operator+ (const unit_t< Units, T, NonLinearScale > &u) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale> |
unit_t< Units, T, NonLinearScale > & | units::operator++ (unit_t< Units, T, NonLinearScale > &u) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale> |
unit_t< Units, T, NonLinearScale > | units::operator++ (unit_t< Units, T, NonLinearScale > &u, int) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale> |
constexpr unit_t< Units, T, NonLinearScale > | units::operator- (const unit_t< Units, T, NonLinearScale > &u) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale> |
unit_t< Units, T, NonLinearScale > & | units::operator-- (unit_t< Units, T, NonLinearScale > &u) noexcept |
|
template<class Units , typename T , template< typename > class NonLinearScale> |
unit_t< Units, T, NonLinearScale > | units::operator-- (unit_t< Units, T, NonLinearScale > &u, int) noexcept |
|
template<typename T , typename Units , class = std::enable_if_t<std::is_arithmetic<T>::value && traits::is_unit_t<Units>::value>> |
constexpr T | units::unit_cast (const Units &value) noexcept |
| Casts a unit container to an arithmetic type. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t<!traits::is_same_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr int | units::operator+ (const UnitTypeLhs &, const UnitTypeRhs &) noexcept |
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator+ (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept |
| Addition operator for unit_t types with a linear_scale. More...
|
|
template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0> |
constexpr dimensionless::scalar_t | units::operator+ (const dimensionless::scalar_t &lhs, T rhs) noexcept |
| Addition operator for scalar unit_t types with a linear_scale. Scalar types can be implicitly converted to built-in types. More...
|
|
template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0> |
constexpr dimensionless::scalar_t | units::operator+ (T lhs, const dimensionless::scalar_t &rhs) noexcept |
| Addition operator for scalar unit_t types with a linear_scale. Scalar types can be implicitly converted to built-in types. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator- (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept |
| Subtraction operator for unit_t types with a linear_scale. More...
|
|
template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0> |
constexpr dimensionless::scalar_t | units::operator- (const dimensionless::scalar_t &lhs, T rhs) noexcept |
| Subtraction operator for scalar unit_t types with a linear_scale. Scalar types can be implicitly converted to built-in types. More...
|
|
template<typename T , std::enable_if_t< std::is_arithmetic< T >::value, int > = 0> |
constexpr dimensionless::scalar_t | units::operator- (T lhs, const dimensionless::scalar_t &rhs) noexcept |
| Subtraction operator for scalar unit_t types with a linear_scale. Scalar types can be implicitly converted to built-in types. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::is_convertible_unit_t< UnitTypeLhs, UnitTypeRhs >::value &&traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr auto | units::operator* (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept -> unit_t< compound_unit< squared< typename units::traits::unit_t_traits< UnitTypeLhs >::unit_type > > > |
| Multiplication type for convertible unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , typename UnitTypeRhs , std::enable_if_t< traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value &&!traits::is_dimensionless_unit< UnitTypeLhs >::value &&traits::is_dimensionless_unit< UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator* (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept |
| Multiplication by a dimensionless unit for unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , typename UnitTypeRhs , std::enable_if_t< traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value &&traits::is_dimensionless_unit< UnitTypeLhs >::value &&!traits::is_dimensionless_unit< UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeRhs | units::operator* (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept |
| Multiplication by a dimensionless unit for unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , typename T , std::enable_if_t< std::is_arithmetic< T >::value &&traits::has_linear_scale< UnitTypeLhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator* (const UnitTypeLhs &lhs, T rhs) noexcept |
| Multiplication by a scalar for unit_t types with a linear scale. More...
|
|
template<class UnitTypeRhs , typename T , std::enable_if_t< std::is_arithmetic< T >::value &&traits::has_linear_scale< UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeRhs | units::operator* (T lhs, const UnitTypeRhs &rhs) noexcept |
| Multiplication by a scalar for unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::is_convertible_unit_t< UnitTypeLhs, UnitTypeRhs >::value &&traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr dimensionless::scalar_t | units::operator/ (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept |
| Division for convertible unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t<!traits::is_convertible_unit_t< UnitTypeLhs, UnitTypeRhs >::value &&traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value &&!traits::is_dimensionless_unit< UnitTypeLhs >::value &&!traits::is_dimensionless_unit< UnitTypeRhs >::value, int > = 0> |
constexpr auto | units::operator/ (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept -> unit_t< compound_unit< typename units::traits::unit_t_traits< UnitTypeLhs >::unit_type, inverse< typename units::traits::unit_t_traits< UnitTypeRhs >::unit_type > > > |
| Division for non-convertible unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::has_linear_scale< UnitTypeLhs, UnitTypeRhs >::value &&!traits::is_dimensionless_unit< UnitTypeLhs >::value &&traits::is_dimensionless_unit< UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator/ (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept |
| Division by a dimensionless unit for unit_t types with a linear scale. More...
|
|
template<class UnitTypeLhs , typename T , std::enable_if_t< std::is_arithmetic< T >::value &&traits::has_linear_scale< UnitTypeLhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator/ (const UnitTypeLhs &lhs, T rhs) noexcept |
| Division by a scalar for unit_t types with a linear scale. More...
|
|
template<class UnitTypeRhs , typename T , std::enable_if_t< std::is_arithmetic< T >::value &&traits::has_linear_scale< UnitTypeRhs >::value, int > = 0> |
constexpr auto | units::operator/ (T lhs, const UnitTypeRhs &rhs) noexcept -> unit_t< inverse< typename units::traits::unit_t_traits< UnitTypeRhs >::unit_type > > |
| Division of a scalar by a unit_t type with a linear scale. More...
|
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator== (const UNIT_LIB_DEFAULT_TYPE lhs, const Units &rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator== (const Units &lhs, const UNIT_LIB_DEFAULT_TYPE rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator!= (const UNIT_LIB_DEFAULT_TYPE lhs, const Units &rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator!= (const Units &lhs, const UNIT_LIB_DEFAULT_TYPE rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator>= (const UNIT_LIB_DEFAULT_TYPE lhs, const Units &rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator>= (const Units &lhs, const UNIT_LIB_DEFAULT_TYPE rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator> (const UNIT_LIB_DEFAULT_TYPE lhs, const Units &rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator> (const Units &lhs, const UNIT_LIB_DEFAULT_TYPE rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator<= (const UNIT_LIB_DEFAULT_TYPE lhs, const Units &rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator<= (const Units &lhs, const UNIT_LIB_DEFAULT_TYPE rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator< (const UNIT_LIB_DEFAULT_TYPE lhs, const Units &rhs) noexcept |
|
template<typename Units , class = std::enable_if_t<units::traits::is_dimensionless_unit<Units>::value>> |
constexpr bool | units::operator< (const Units &lhs, const UNIT_LIB_DEFAULT_TYPE rhs) noexcept |
|
template<int power, class UnitType , class = typename std::enable_if<traits::has_linear_scale<UnitType>::value, int>> |
auto | units::math::pow (const UnitType &value) noexcept -> unit_t< typename units::detail::power_of_unit< power, typename units::traits::unit_t_traits< UnitType >::unit_type >::type, typename units::traits::unit_t_traits< UnitType >::underlying_type, linear_scale > |
| computes the value of value raised to the power More...
|
|
template<int power, class UnitType , class = typename std::enable_if<traits::has_linear_scale<UnitType>::value, int>> |
constexpr auto | units::math::cpow (const UnitType &value) noexcept -> unit_t< typename units::detail::power_of_unit< power, typename units::traits::unit_t_traits< UnitType >::unit_type >::type, typename units::traits::unit_t_traits< UnitType >::underlying_type, linear_scale > |
| computes the value of value raised to the power as a constexpr More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::has_decibel_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr auto | units::operator+ (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept -> unit_t< compound_unit< squared< typename units::traits::unit_t_traits< UnitTypeLhs >::unit_type > >, typename units::traits::unit_t_traits< UnitTypeLhs >::underlying_type, decibel_scale > |
| Addition for convertible unit_t types with a decibel_scale. More...
|
|
template<class UnitTypeLhs , std::enable_if_t< traits::has_decibel_scale< UnitTypeLhs >::value &&!traits::is_dimensionless_unit< UnitTypeLhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator+ (const UnitTypeLhs &lhs, const dimensionless::dB_t &rhs) noexcept |
| Addition between unit_t types with a decibel_scale and dimensionless dB units. More...
|
|
template<class UnitTypeRhs , std::enable_if_t< traits::has_decibel_scale< UnitTypeRhs >::value &&!traits::is_dimensionless_unit< UnitTypeRhs >::value, int > = 0> |
constexpr UnitTypeRhs | units::operator+ (const dimensionless::dB_t &lhs, const UnitTypeRhs &rhs) noexcept |
| Addition between unit_t types with a decibel_scale and dimensionless dB units. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs , std::enable_if_t< traits::has_decibel_scale< UnitTypeLhs, UnitTypeRhs >::value, int > = 0> |
constexpr auto | units::operator- (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) noexcept -> unit_t< compound_unit< typename units::traits::unit_t_traits< UnitTypeLhs >::unit_type, inverse< typename units::traits::unit_t_traits< UnitTypeRhs >::unit_type > >, typename units::traits::unit_t_traits< UnitTypeLhs >::underlying_type, decibel_scale > |
| Subtraction for convertible unit_t types with a decibel_scale. More...
|
|
template<class UnitTypeLhs , std::enable_if_t< traits::has_decibel_scale< UnitTypeLhs >::value &&!traits::is_dimensionless_unit< UnitTypeLhs >::value, int > = 0> |
constexpr UnitTypeLhs | units::operator- (const UnitTypeLhs &lhs, const dimensionless::dB_t &rhs) noexcept |
| Subtraction between unit_t types with a decibel_scale and dimensionless dB units. More...
|
|
template<class UnitTypeRhs , std::enable_if_t< traits::has_decibel_scale< UnitTypeRhs >::value &&!traits::is_dimensionless_unit< UnitTypeRhs >::value, int > = 0> |
constexpr auto | units::operator- (const dimensionless::dB_t &lhs, const UnitTypeRhs &rhs) noexcept -> unit_t< inverse< typename units::traits::unit_t_traits< UnitTypeRhs >::unit_type >, typename units::traits::unit_t_traits< UnitTypeRhs >::underlying_type, decibel_scale > |
| Subtraction between unit_t types with a decibel_scale and dimensionless dB units. More...
|
|
template<class UnitTypeLhs , class UnitTypeRhs > |
UnitTypeLhs() | units::math::min (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) |
|
template<class UnitTypeLhs , class UnitTypeRhs > |
UnitTypeLhs() | units::math::max (const UnitTypeLhs &lhs, const UnitTypeRhs &rhs) |
|