TypeSI
Units of 'Système international' Blended for C++
Loading...
Searching...
No Matches
Namespaces | Typedefs
Si::Derived Namespace Reference

Derived SI units. More...

Namespaces

namespace  Literals
 Use this namespace to enable literals for base units.
 

Typedefs

template<typename T >
using Hertz = decltype(std::declval< Internal::Dimensionless< T > >()/std::declval< Base::Second< T > >())
 
template<typename T >
using Newton = decltype(std::declval< Base::Kilogram< T > >() *std::declval< Base::Meter< T > >()/(std::declval< Base::Second< T > >() *std::declval< Base::Second< T > >()))
 
template<typename T >
using Pascal = decltype(std::declval< Newton< T > >()/(std::declval< Base::Meter< T > >() *std::declval< Base::Meter< T > >()))
 
template<typename T >
using Joule = decltype(std::declval< Base::Meter< T > >() *std::declval< Newton< T > >())
 
template<typename T >
using Watt = decltype(std::declval< Joule< T > >()/std::declval< Base::Second< T > >())
 
template<typename T >
using Coulomb = decltype(std::declval< Base::Second< T > >() *std::declval< Base::Ampere< T > >())
 
template<typename T >
using Volt = decltype(std::declval< Watt< T > >()/std::declval< Base::Ampere< T > >())
 
template<typename T >
using Farad = decltype(std::declval< Coulomb< T > >()/std::declval< Volt< T > >())
 
template<typename T >
using Ohm = decltype(std::declval< Volt< T > >()/std::declval< Base::Ampere< T > >())
 
template<typename T >
using Siemens = decltype(std::declval< Base::Ampere< T > >()/std::declval< Volt< T > >())
 
template<typename T >
using Weber = decltype(std::declval< Joule< T > >()/std::declval< Base::Ampere< T > >())
 
template<typename T >
using Tesla = decltype(std::declval< Newton< T > >()/(std::declval< Base::Ampere< T > >() *std::declval< Base::Meter< T > >()))
 
template<typename T >
using Henry = decltype(std::declval< Weber< T > >()/std::declval< Base::Ampere< T > >())
 
template<typename T >
using Lumen = Base::Candela< T >
 
template<typename T >
using Lux = decltype(std::declval< Lumen< T > >()/(std::declval< Base::Meter< T > >() *std::declval< Base::Meter< T > >()))
 
template<typename T >
using Becquerel = Hertz< T >
 
template<typename T >
using Gray = decltype(std::declval< Joule< T > >()/std::declval< Base::Kilogram< T > >())
 
template<typename T >
using Sievert = Gray< T >
 
template<typename T >
using Katal = decltype(std::declval< Base::Mole< T > >()/std::declval< Base::Second< T > >())
 

Detailed Description

Derived SI units.

Typedef Documentation

◆ Becquerel

template<typename T >
using Si::Derived::Becquerel = typedef Hertz<T>
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Coulomb

template<typename T >
using Si::Derived::Coulomb = typedef decltype(std::declval<Base::Second<T> >() * std::declval<Base::Ampere<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Farad

template<typename T >
using Si::Derived::Farad = typedef decltype(std::declval<Coulomb<T> >() / std::declval<Volt<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Gray

template<typename T >
using Si::Derived::Gray = typedef decltype(std::declval<Joule<T> >() / std::declval<Base::Kilogram<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Henry

template<typename T >
using Si::Derived::Henry = typedef decltype(std::declval<Weber<T> >() / std::declval<Base::Ampere<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Hertz

template<typename T >
using Si::Derived::Hertz = typedef decltype(std::declval<Internal::Dimensionless<T> >() / std::declval<Base::Second<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Joule

template<typename T >
using Si::Derived::Joule = typedef decltype(std::declval<Base::Meter<T> >() * std::declval<Newton<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Katal

template<typename T >
using Si::Derived::Katal = typedef decltype(std::declval<Base::Mole<T> >() / std::declval<Base::Second<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Lumen

template<typename T >
using Si::Derived::Lumen = typedef Base::Candela<T>
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Lux

template<typename T >
using Si::Derived::Lux = typedef decltype(std::declval<Lumen<T> >() / (std::declval<Base::Meter<T> >() * std::declval<Base::Meter<T> >()))
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Newton

template<typename T >
using Si::Derived::Newton = typedef decltype( std::declval<Base::Kilogram<T> >() * std::declval<Base::Meter<T> >() / (std::declval<Base::Second<T> >() * std::declval<Base::Second<T> >()))
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Ohm

template<typename T >
using Si::Derived::Ohm = typedef decltype(std::declval<Volt<T> >() / std::declval<Base::Ampere<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Pascal

template<typename T >
using Si::Derived::Pascal = typedef decltype(std::declval<Newton<T> >() / (std::declval<Base::Meter<T> >() * std::declval<Base::Meter<T> >()))
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Siemens

template<typename T >
using Si::Derived::Siemens = typedef decltype(std::declval<Base::Ampere<T> >() / std::declval<Volt<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Sievert

template<typename T >
using Si::Derived::Sievert = typedef Gray<T>
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Tesla

template<typename T >
using Si::Derived::Tesla = typedef decltype(std::declval<Newton<T> >() / (std::declval<Base::Ampere<T> >() * std::declval<Base::Meter<T> >()))
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Volt

template<typename T >
using Si::Derived::Volt = typedef decltype(std::declval<Watt<T> >() / std::declval<Base::Ampere<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Watt

template<typename T >
using Si::Derived::Watt = typedef decltype(std::declval<Joule<T> >() / std::declval<Base::Second<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container

◆ Weber

template<typename T >
using Si::Derived::Weber = typedef decltype(std::declval<Joule<T> >() / std::declval<Base::Ampere<T> >())
Template Parameters
TAny number type such as float, double or long double used as a container