...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Relatively complete SI and CGS unit systems are provided in boost/units/systems/si.hpp
and boost/units/systems/cgs.hpp
,
respectively.
template<long N> struct ordinal<N>; template<typename T,typename V> struct get_tag< dim<T,V> >; template<typename T,typename V> struct get_value< dim<T,V> >; template<class S,class DT> struct get_system_tag_of_dim<S,DT>; template<typename Seq> struct make_dimension_list<Seq>; template<class DT> struct fundamental_dimension<DT>; template<class DT1,int E1,...> struct composite_dimension<DT1,E1,...>; template<class Dim,class System> struct get_dimension< unit<Dim,System> >; template<class Unit,class Y> struct get_dimension< quantity<Unit,Y> >; template<class Dim,class System> struct get_system< unit<Dim,System> >; template<class Unit,class Y> struct get_system quantity<Unit,Y> >; struct dimensionless_type; template<class System> struct dimensionless_unit<System>; template<class System,class Y> struct dimensionless_quantity<System,Y>; struct implicitly_convertible; struct trivial_conversion; template<class T,class S1,class S2> struct base_unit_converter<T,S1,S2>; template<class Q1,class Q2> class conversion_helper<Q1,Q2>;
template<typename T,typename V> struct is_dim< dim<T,V> >; template<typename T,typename V> struct is_empty_dim< dim<T,V> >; template<typename Seq> struct is_dimension_list<Seq>; template<class S> struct is_system< homogeneous_system<S> >; template<class S> struct is_system< heterogeneous_system<S> >; template<class S> struct is_homogeneous_system< homogeneous_system<S> >; template<class S> struct is_heterogeneous_system< heterogeneous_system<S> >; template<class Dim,class System> struct is_unit< unit<Dim,System> >; template<class Dim,class System> struct is_unit_of_system< unit<Dim,System>,System >; template<class Dim,class System> struct is_unit_of_dimension< unit<Dim,System>,Dim >; template<class Unit,class Y> struct is_quantity< quantity<Unit,Y> >; template<class Dim,class System,class Y> struct is_quantity_of_system< quantity<unit<Dim,System>,Y>,System >; template<class Dim,class System,class Y> struct is_quantity_of_dimension< quantity<unit<Dim,System>,Y>,Dim >; template<class System> struct is_dimensionless< unit<dimensionless_type,System> >; template<class System> struct is_dimensionless_unit< unit<dimensionless_type,System> >; template<class System,class Y> struct is_dimensionless< quantity<unit<dimensionless_type,System>,Y> >; template<class System,class Y> struct is_dimensionless_quantity< quantity<unit<dimensionless_type,System>,Y> >;