Unit Conversion and Dimensional Analysis Library 3.6.1
A compile-time, header-only C++23 dimensional-analysis library
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
 NstdSTL namespace
  Ccommon_type< chrono::duration< Rep, Period >, units::unit< ConversionFactor, T, NumericalScale > >
  Ccommon_type< Lhs, Rhs >
  Ccommon_type< Named, Scalar >
  Ccommon_type< Scalar, Named >
  Ccommon_type< Ty, units::unit< ConversionFactor, Tx, NumericalScale > >
  Ccommon_type< units::unit< ConversionFactor, Tx, NumericalScale >, Ty >
  Ccommon_type< units::unit< ConversionFactorLhs, Tx, NumericalScale >, units::unit< ConversionFactorRhs, Ty, NumericalScale > >Common type of units
  Ccommon_type< units::unit< UnitConversionT, T, NonLinearScale >, units::unit< UnitConversionT, T, NonLinearScale > >
  Ccommon_type< units::unit< units::detail::time_conversion_factor< Ratio >, T, NumericalScale >, chrono::duration< Rep, Period > >
  Chash< Named >
  Chash< units::affine::absolute< U > >Hash a point by the hash of its wrapped quantity (two equal points hash equally)
  Chash< units::affine::basic_kind< Tag, U > >Hash a kind by the hash of its wrapped quantity (the tag does not participate — equal values hash equally)
  Chash< units::affine::delta< U > >Hash an amount by the hash of its wrapped quantity
  Chash< units::any_unit >Hashes an erased quantity by its dimension signature and SI-base magnitude, so any_unit is usable as an unordered-container key
  Chash< units::unit< ConversionFactor, T, NumericalScale > >
  Cnumeric_limits< Named >
  Cnumeric_limits< units::affine::absolute< U > >Numeric limits of a point: the wrapped unit's limits, re-wrapped as points
  Cnumeric_limits< units::affine::basic_kind< Tag, U > >Numeric limits of a kind: the wrapped unit's limits, re-wrapped as the same kind (tag preserved)
  Cnumeric_limits< units::affine::delta< U > >Numeric limits of an amount: the wrapped unit's limits, re-wrapped as amounts
  Cnumeric_limits< units::unit< ConversionFactor, T, NonLinearScale > >
 NunitsUnit Conversion Library namespace
  Naffine
   CabsoluteA point on a (possibly affine) scale — carries the unit's datum
   CdeltaAn amount of a quantity — offset-free (no datum)
   Cfixed_stringA compile-time string usable as a non-type template parameter (the tag of a kind/of)
   Cbasic_kindA quantity distinguished by a string TAG — a "kind of quantity" that shares a unit and a dimension with others but is semantically distinct (radial vs
  Ndetail
   C_unitHelper type to identify units
   Cfloating_point_promotion< Unit >
   Cis_completeWhether T is a complete type, decided by SFINAE on sizeof(T) without instantiating any other trait
   Cis_complete< T, std::void_t< decltype(sizeof(T))> >
   Cis_named_unit_impl
   Cis_named_unit_impl< T, true >
   Cis_unit_implis_unit implementation: an incomplete or non-class type is never a unit, decided WITHOUT instantiating is_base_of (which is ill-formed on an incomplete non-same class type)
   Cis_unit_impl< T, true >
   CPI
   Crewrap_named
   Crewrap_named< Base, Named, std::enable_if_t< is_named_unit_v< Named > &&!std::is_same_v< typename Base::conversion_factor, typename Named::conversion_factor > &&is_raw_conversion_factor_v< typename Base::conversion_factor > &&is_equivalent_conversion_factor_v< typename Base::conversion_factor, typename Named::conversion_factor > > >
   Crewrap_named< Base, Named, std::enable_if_t< is_named_unit_v< Named > &&std::is_same_v< typename Base::conversion_factor, typename Named::conversion_factor > > >
   Crewrap_to_named
   Crewrap_to_named< U, std::enable_if_t< traits::is_unit< U >::value &&!std::is_void_v< decltype(named_class_of(static_cast< typename U::conversion_factor * >(nullptr), static_cast< typename U::numerical_scale_type * >(nullptr)))> > >
   CsignatureCompile-time signature of a unit as a fixed-size, sorted array of terms
  NdimensionNamespace representing the implemented base and derived unit types
   Clength_tag
   Cmass_tag
   Ctime_tag
   Ccurrent_tag
   Ctemperature_tag
   Csubstance_tag
   Cluminous_intensity_tag
   Cangle_tag
   Cdata_tag
  NtraitsNamespace representing type traits which can access the properties of types provided by the units library
   Chas_decibel_scaleTrait which tests whether a type is inherited from a decibel scale
   Chas_linear_scaleTrait which tests whether a type is inherited from a linear scale
   Cis_absoluteTrait which tests whether T is an absolute<U> point wrapper
   Cis_deltaTrait which tests whether T is a delta<U> amount wrapper
   Cis_dimensionless_unit
   Cis_kindTrait which tests whether T is a string-tagged kind<Tag, U>
   Cis_ratio_dimensionless_cf
   Cis_ratio_dimensionless_cf< ConversionFactor, std::void_t< typename ConversionFactor::dimension_type, typename ConversionFactor::conversion_ratio > >
   Cis_same_dimension_conversion_factorBinaryTypeTrait for querying whether Cf1 and Cf2 are conversion factors to the same dimension
   Cis_same_dimension_unitBinaryTypeTrait for querying whether U1 and U2 are units of the same dimension
   Cis_unitTraits which tests if a class is a unit
   Creplace_underlyingSFINAE-able trait which replaces the underlying type of Unit with Underlying
   Creplace_underlying< Unit, Underlying >
   Creplace_underlying< unit< Cf, T, Ns >, Underlying >
   CstrongSFINAE-able trait that maps a conversion_factor to its strengthened type
  CabsoluteA point on a (possibly affine) scale — carries the unit's datum
  Cany_unit
  Cappend
  Cappend< dimension_t< T... >, dimension_t< U... > >
  Cbasic_kindA quantity distinguished by a string TAG — a "kind of quantity" that shares a unit and a dimension with others but is semantically distinct (radial vs
  Cconversion_factorType representing an arbitrary conversion factor between units
  Cdecibel_scaleNumerical scale which is decibel
  CdecibelsDimensionless unit with decibel scale
  CdeltaAn amount of a quantity — offset-free (no datum)
  Cdim
  Cdimension_pow_impl
  Cdimension_pow_impl< dimension_t< dim< T, E >... >, R >
  Cdimension_t
  Cdimension_t< D0, D... >
  Cdimension_t<>
  Cdimension_termOne base-dimension term of a signature: which base dimension (by name-hash), and its rational exponent
  Cfixed_stringA compile-time string usable as a non-type template parameter (the tag of a kind/of)
  Clinear_scaleNumerical scale which is linear
  Clinearized_value_tTag for unit constructors
  Cmake_dimension_list
  Cmake_dimension_list< dimension_t< T... >, N0, Rest... >
  Cmake_dimension_list<>
  Cmerge_dimensions_combine_impl
  Cmerge_dimensions_combine_impl< false >
  Cmerge_dimensions_combine_impl< true >
  Cmerge_dimensions_impl
  Cmerge_dimensions_impl< 0 >
  Cmerge_dimensions_impl< 1 >
  Cmerge_dimensions_impl<-1 >
  Cmerge_dimensions_recurse_impl
  Cmerge_dimensions_recurse_impl< false, false >
  Cmerge_dimensions_recurse_impl< false, true >
  Cmerge_dimensions_recurse_impl< true, false >
  Cmerge_dimensions_recurse_impl< true, true >
  Cunit
  Cunit_abbreviation
  Cunit_abbreviation< decibels< Underlying > >
  Cunit_identityRuntime identity of a quantity's dimension — the set of nonzero base-dimension terms
  Cunit_name
  Cunit_name< decibels< Underlying > >