units
Use physical dimensions at compile-time or run-time.
Classes | Functions
vnix::units::impl Namespace Reference

Template structs that user would use only to extend the library. More...

Classes

struct  amperes
 Template used to construct a number of amperes. More...
 
struct  centimeters
 Template used to construct a number of centimeters. More...
 
struct  coulombs
 Template used to construct a number of coulombs. More...
 
struct  dynes
 Template used to construct a number of dynes. More...
 
struct  ergs
 Template used to construct a number of ergs. More...
 
struct  feet
 Template used to construct a number of feet. More...
 
struct  femtometers
 Template used to construct a number of femtometers. More...
 
struct  femtoseconds
 Template used to construct a number of femtoseconds. More...
 
struct  gigajoules
 Template used to construct a number of gigajoules. More...
 
struct  gigawatts
 Template used to construct a number of gigawatts. More...
 
struct  grams
 Template used to construct a number of grams. More...
 
struct  inches
 Template used to construct a number of inches. More...
 
struct  joules
 Template used to construct a number of joules. More...
 
struct  kelvins
 Template used to construct a number of kelvins. More...
 
struct  kilofeet
 Template used to construct a number of kilofeet. More...
 
struct  kilograms
 Template used to construct a number of kilograms. More...
 
struct  kilojoules
 Template used to construct a number of kilojoules. More...
 
struct  kilometers
 Template used to construct a number of kilometers. More...
 
struct  kilonewtons
 Template used to construct a number of kilonewtons. More...
 
struct  kilowatts
 Template used to construct a number of kilowatts. More...
 
struct  megagrams
 Template used to construct a number of megagrams. More...
 
struct  megajoules
 Template used to construct a number of megajoules. More...
 
struct  megameters
 Template used to construct a number of megameters. More...
 
struct  meganewtons
 Template used to construct a number of meganewtons. More...
 
struct  megawatts
 Template used to construct a number of megawatts. More...
 
struct  meters
 Template used to construct a number of meters. More...
 
struct  microamperes
 Template used to construct a number of microamperes. More...
 
struct  microcoulombs
 Template used to construct a number of microcoulombs. More...
 
struct  micrograms
 Template used to construct a number of micrograms. More...
 
struct  microjoules
 Template used to construct a number of microjoules. More...
 
struct  microkelvins
 Template used to construct a number of microkelvins. More...
 
struct  micrometers
 Template used to construct a number of micrometers. More...
 
struct  micronewtons
 Template used to construct a number of micronewtons. More...
 
struct  microseconds
 Template used to construct a number of microseconds. More...
 
struct  microwatts
 Template used to construct a number of microwatts. More...
 
struct  miles
 Template used to construct a number of miles. More...
 
struct  milliamperes
 Template used to construct a number of milliamperes. More...
 
struct  millicoulombs
 Template used to construct a number of millicoulombs. More...
 
struct  milligrams
 Template used to construct a number of milligrams. More...
 
struct  millijoules
 Template used to construct a number of millijoules. More...
 
struct  millikelvins
 Template used to construct a number of millikelvins. More...
 
struct  millimeters
 Template used to construct a number of millimeters. More...
 
struct  millinewtons
 Template used to construct a number of millinewtons. More...
 
struct  milliseconds
 Template used to construct a number of milliseconds. More...
 
struct  milliwatts
 Template used to construct a number of milliwatts. More...
 
struct  nanocoulombs
 Template used to construct a number of nanocoulombs. More...
 
struct  nanograms
 Template used to construct a number of nanograms. More...
 
struct  nanokelvins
 Template used to construct a number of nanokelvins. More...
 
struct  nanometers
 Template used to construct a number of nanometers. More...
 
struct  nanoseconds
 Template used to construct a number of nanoseconds. More...
 
struct  newtons
 Template used to construct a number of newtons. More...
 
struct  picocoulombs
 Template used to construct a number of picocoulombs. More...
 
struct  picograms
 Template used to construct a number of picograms. More...
 
struct  picometers
 Template used to construct a number of picometers. More...
 
struct  picoseconds
 Template used to construct a number of picoseconds. More...
 
struct  seconds
 Template used to construct a number of seconds. More...
 
struct  watts
 Template used to construct a number of watts. More...
 
struct  yards
 Template used to construct a number of yards. More...
 

Functions

template<typename T >
constexpr meters< T > m (T(1))
 Template-variable for symbol for meters. More...
 
template<typename T >
constexpr centimeters< T > cm (T(1))
 Template-variable for symbol for centimeters. More...
 
template<typename T >
constexpr millimeters< T > mm (T(1))
 Template-variable for symbol for millimeters. More...
 
template<typename T >
constexpr micrometers< T > mum (T(1))
 Template-variable for symbol for micrometers. More...
 
template<typename T >
constexpr nanometers< T > nm (T(1))
 Template-variable for symbol for nanometers. More...
 
template<typename T >
constexpr picometers< T > pm (T(1))
 Template-variable for symbol for picometers. More...
 
template<typename T >
constexpr femtometers< T > fm (T(1))
 Template-variable for symbol for femtometers. More...
 
template<typename T >
constexpr kilometers< T > km (T(1))
 Template-variable for symbol for kilometers. More...
 
template<typename T >
constexpr megameters< T > Mm (T(1))
 Template-variable for symbol for megameters. More...
 
template<typename T >
constexpr grams< T > g (T(1))
 Template-variable for symbol for grams. More...
 
template<typename T >
constexpr milligrams< T > mg (T(1))
 Template-variable for symbol for milligrams. More...
 
template<typename T >
constexpr micrograms< T > mug (T(1))
 Template-variable for symbol for micrograms. More...
 
template<typename T >
constexpr nanograms< T > ng (T(1))
 Template-variable for symbol for nanograms. More...
 
template<typename T >
constexpr picograms< T > pg (T(1))
 Template-variable for symbol for picograms. More...
 
template<typename T >
constexpr kilograms< T > kg (T(1))
 Template-variable for symbol for kilograms. More...
 
template<typename T >
constexpr megagrams< T > Mg (T(1))
 Template-variable for symbol for megagrams. More...
 
template<typename T >
constexpr seconds< T > s (T(1))
 Template-variable for symbol for seconds. More...
 
template<typename T >
constexpr milliseconds< T > ms (T(1))
 Template-variable for symbol for milliseconds. More...
 
template<typename T >
constexpr microseconds< T > mus (T(1))
 Template-variable for symbol for microseconds. More...
 
template<typename T >
constexpr nanoseconds< T > ns (T(1))
 Template-variable for symbol for nanoseconds. More...
 
template<typename T >
constexpr picoseconds< T > ps (T(1))
 Template-variable for symbol for picoseconds. More...
 
template<typename T >
constexpr femtoseconds< T > fs (T(1))
 Template-variable for symbol for femtoseconds. More...
 
template<typename T >
constexpr coulombs< T > C (T(1))
 Template-variable for symbol for coulombs. More...
 
template<typename T >
constexpr millicoulombs< T > mC (T(1))
 Template-variable for symbol for millicoulombs. More...
 
template<typename T >
constexpr microcoulombs< T > muC (T(1))
 Template-variable for symbol for microcoulombs. More...
 
template<typename T >
constexpr nanocoulombs< T > nC (T(1))
 Template-variable for symbol for nanocoulombs. More...
 
template<typename T >
constexpr picocoulombs< T > pC (T(1))
 Template-variable for symbol for picocoulombs. More...
 
template<typename T >
constexpr kelvins< T > K (T(1))
 Template-variable for symbol for kelvins. More...
 
template<typename T >
constexpr millikelvins< T > mK (T(1))
 Template-variable for symbol for millikelvins. More...
 
template<typename T >
constexpr microkelvins< T > muK (T(1))
 Template-variable for symbol for microkelvins. More...
 
template<typename T >
constexpr nanokelvins< T > nK (T(1))
 Template-variable for symbol for nanokelvins. More...
 
template<typename T >
constexpr feet< T > ft (T(1))
 Template-variable for symbol for feet. More...
 
template<typename T >
constexpr kilofeet< T > kft (T(1))
 Template-variable for symbol for kilofeet. More...
 
template<typename T >
constexpr inches< T > in (T(1))
 Template-variable for symbol for inches. More...
 
template<typename T >
constexpr yards< T > yd (T(1))
 Template-variable for symbol for yards. More...
 
template<typename T >
constexpr miles< T > mi (T(1))
 Template-variable for symbol for miles. More...
 
template<typename T >
constexpr newtons< T > N (T(1))
 Template-variable for symbol for newtons. More...
 
template<typename T >
constexpr millinewtons< T > mN (T(1))
 Template-variable for symbol for millinewtons. More...
 
template<typename T >
constexpr micronewtons< T > muN (T(1))
 Template-variable for symbol for micronewtons. More...
 
template<typename T >
constexpr kilonewtons< T > kN (T(1))
 Template-variable for symbol for kilonewtons. More...
 
template<typename T >
constexpr meganewtons< T > MN (T(1))
 Template-variable for symbol for meganewtons. More...
 
template<typename T >
constexpr dynes< T > dyn (T(1))
 Template-variable for symbol for dynes. More...
 
template<typename T >
constexpr joules< T > J (T(1))
 Template-variable for symbol for joules. More...
 
template<typename T >
constexpr millijoules< T > mJ (T(1))
 Template-variable for symbol for millijoules. More...
 
template<typename T >
constexpr microjoules< T > muJ (T(1))
 Template-variable for symbol for microjoules. More...
 
template<typename T >
constexpr kilojoules< T > kJ (T(1))
 Template-variable for symbol for kilojoules. More...
 
template<typename T >
constexpr megajoules< T > MJ (T(1))
 Template-variable for symbol for megajoules. More...
 
template<typename T >
constexpr gigajoules< T > GJ (T(1))
 Template-variable for symbol for gigajoules. More...
 
template<typename T >
constexpr ergs< T > erg (T(1))
 Template-variable for symbol for ergs. More...
 
template<typename T >
constexpr watts< T > W (T(1))
 Template-variable for symbol for watts. More...
 
template<typename T >
constexpr milliwatts< T > mW (T(1))
 Template-variable for symbol for milliwatts. More...
 
template<typename T >
constexpr microwatts< T > muW (T(1))
 Template-variable for symbol for microwatts. More...
 
template<typename T >
constexpr kilowatts< T > kW (T(1))
 Template-variable for symbol for kilowatts. More...
 
template<typename T >
constexpr megawatts< T > MW (T(1))
 Template-variable for symbol for megawatts. More...
 
template<typename T >
constexpr gigawatts< T > GW (T(1))
 Template-variable for symbol for gigawatts. More...
 
template<typename T >
constexpr amperes< T > A (T(1))
 Template-variable for symbol for amperes. More...
 
template<typename T >
constexpr milliamperes< T > mA (T(1))
 Template-variable for symbol for milliamperes. More...
 
template<typename T >
constexpr microamperes< T > muA (T(1))
 Template-variable for symbol for microamperes. More...
 

Detailed Description

Template structs that user would use only to extend the library.

Each template struct defined in impl is called by a vnix::units function whose name is the same as the struct.

Function Documentation

template<typename T >
constexpr amperes<T> vnix::units::impl::A ( T(1)  )

Template-variable for symbol for amperes.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr coulombs<T> vnix::units::impl::C ( T(1)  )

Template-variable for symbol for coulombs.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr centimeters<T> vnix::units::impl::cm ( T(1)  )

Template-variable for symbol for centimeters.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr dynes<T> vnix::units::impl::dyn ( T(1)  )

Template-variable for symbol for dynes.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr ergs<T> vnix::units::impl::erg ( T(1)  )

Template-variable for symbol for ergs.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr femtometers<T> vnix::units::impl::fm ( T(1)  )

Template-variable for symbol for femtometers.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr femtoseconds<T> vnix::units::impl::fs ( T(1)  )

Template-variable for symbol for femtoseconds.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr feet<T> vnix::units::impl::ft ( T(1)  )

Template-variable for symbol for feet.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr grams<T> vnix::units::impl::g ( T(1)  )

Template-variable for symbol for grams.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr gigajoules<T> vnix::units::impl::GJ ( T(1)  )

Template-variable for symbol for gigajoules.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr gigawatts<T> vnix::units::impl::GW ( T(1)  )

Template-variable for symbol for gigawatts.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr inches<T> vnix::units::impl::in ( T(1)  )

Template-variable for symbol for inches.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr joules<T> vnix::units::impl::J ( T(1)  )

Template-variable for symbol for joules.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kelvins<T> vnix::units::impl::K ( T(1)  )

Template-variable for symbol for kelvins.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kilofeet<T> vnix::units::impl::kft ( T(1)  )

Template-variable for symbol for kilofeet.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kilograms<T> vnix::units::impl::kg ( T(1)  )

Template-variable for symbol for kilograms.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kilojoules<T> vnix::units::impl::kJ ( T(1)  )

Template-variable for symbol for kilojoules.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kilometers<T> vnix::units::impl::km ( T(1)  )

Template-variable for symbol for kilometers.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kilonewtons<T> vnix::units::impl::kN ( T(1)  )

Template-variable for symbol for kilonewtons.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr kilowatts<T> vnix::units::impl::kW ( T(1)  )

Template-variable for symbol for kilowatts.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr meters<T> vnix::units::impl::m ( T(1)  )

Template-variable for symbol for meters.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr milliamperes<T> vnix::units::impl::mA ( T(1)  )

Template-variable for symbol for milliamperes.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr millicoulombs<T> vnix::units::impl::mC ( T(1)  )

Template-variable for symbol for millicoulombs.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr milligrams<T> vnix::units::impl::mg ( T(1)  )

Template-variable for symbol for milligrams.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr megagrams<T> vnix::units::impl::Mg ( T(1)  )

Template-variable for symbol for megagrams.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr miles<T> vnix::units::impl::mi ( T(1)  )

Template-variable for symbol for miles.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr millijoules<T> vnix::units::impl::mJ ( T(1)  )

Template-variable for symbol for millijoules.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr megajoules<T> vnix::units::impl::MJ ( T(1)  )

Template-variable for symbol for megajoules.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr millikelvins<T> vnix::units::impl::mK ( T(1)  )

Template-variable for symbol for millikelvins.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr millimeters<T> vnix::units::impl::mm ( T(1)  )

Template-variable for symbol for millimeters.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr megameters<T> vnix::units::impl::Mm ( T(1)  )

Template-variable for symbol for megameters.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr millinewtons<T> vnix::units::impl::mN ( T(1)  )

Template-variable for symbol for millinewtons.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr meganewtons<T> vnix::units::impl::MN ( T(1)  )

Template-variable for symbol for meganewtons.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr milliseconds<T> vnix::units::impl::ms ( T(1)  )

Template-variable for symbol for milliseconds.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr microamperes<T> vnix::units::impl::muA ( T(1)  )

Template-variable for symbol for microamperes.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr microcoulombs<T> vnix::units::impl::muC ( T(1)  )

Template-variable for symbol for microcoulombs.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr micrograms<T> vnix::units::impl::mug ( T(1)  )

Template-variable for symbol for micrograms.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr microjoules<T> vnix::units::impl::muJ ( T(1)  )

Template-variable for symbol for microjoules.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr microkelvins<T> vnix::units::impl::muK ( T(1)  )

Template-variable for symbol for microkelvins.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr micrometers<T> vnix::units::impl::mum ( T(1)  )

Template-variable for symbol for micrometers.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr micronewtons<T> vnix::units::impl::muN ( T(1)  )

Template-variable for symbol for micronewtons.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr microseconds<T> vnix::units::impl::mus ( T(1)  )

Template-variable for symbol for microseconds.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr microwatts<T> vnix::units::impl::muW ( T(1)  )

Template-variable for symbol for microwatts.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr milliwatts<T> vnix::units::impl::mW ( T(1)  )

Template-variable for symbol for milliwatts.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr megawatts<T> vnix::units::impl::MW ( T(1)  )

Template-variable for symbol for megawatts.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr newtons<T> vnix::units::impl::N ( T(1)  )

Template-variable for symbol for newtons.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr nanocoulombs<T> vnix::units::impl::nC ( T(1)  )

Template-variable for symbol for nanocoulombs.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr nanograms<T> vnix::units::impl::ng ( T(1)  )

Template-variable for symbol for nanograms.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr nanokelvins<T> vnix::units::impl::nK ( T(1)  )

Template-variable for symbol for nanokelvins.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr nanometers<T> vnix::units::impl::nm ( T(1)  )

Template-variable for symbol for nanometers.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr nanoseconds<T> vnix::units::impl::ns ( T(1)  )

Template-variable for symbol for nanoseconds.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr picocoulombs<T> vnix::units::impl::pC ( T(1)  )

Template-variable for symbol for picocoulombs.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr picograms<T> vnix::units::impl::pg ( T(1)  )

Template-variable for symbol for picograms.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr picometers<T> vnix::units::impl::pm ( T(1)  )

Template-variable for symbol for picometers.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr picoseconds<T> vnix::units::impl::ps ( T(1)  )

Template-variable for symbol for picoseconds.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr seconds<T> vnix::units::impl::s ( T(1)  )

Template-variable for symbol for seconds.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr watts<T> vnix::units::impl::W ( T(1)  )

Template-variable for symbol for watts.

Template Parameters
TNumeric type (float, double, etc.).
template<typename T >
constexpr yards<T> vnix::units::impl::yd ( T(1)  )

Template-variable for symbol for yards.

Template Parameters
TNumeric type (float, double, etc.).