// Boost.Units - A C++ library for zero-overhead dimensional analysis and // unit/quantity manipulation and conversion // // Copyright (C) 2003-2008 Matthias Christian Schabel // Copyright (C) 2008 Steven Watanabe // // Distributed under the Boost Software License, Version 1.0. (See // accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #ifndef BOOST_UNITS_GET_DIMENSION_HPP #define BOOST_UNITS_GET_DIMENSION_HPP /// /// \file /// \brief Get the dimension of a unit, absolute unit and quantity. /// \details /// #include namespace boost { namespace units { template struct get_dimension {}; /// Get the dimension of a unit. template struct get_dimension< unit > { typedef Dim type; }; /// Get the dimension of an absolute unit. template struct get_dimension< absolute > { typedef typename get_dimension::type type; }; /// Get the dimension of a quantity. template struct get_dimension< quantity > { typedef typename get_dimension::type type; }; } // namespace units } // namespace boost #endif // BOOST_UNITS_GET_DIMENSION_HPP