// 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_SYSTEM_HPP #define BOOST_UNITS_GET_SYSTEM_HPP /// \file /// \brief Get the system of a unit, absolute unit or quantity. #include namespace boost { namespace units { template struct get_system {}; /// Get the system of a unit. template struct get_system< unit > { typedef System type; }; /// Get the system of an absolute unit. template struct get_system< absolute > { typedef typename get_system::type type; }; /// Get the system of a quantity. template struct get_system< quantity > { typedef typename get_system::type type; }; } // namespace units } // namespace boost #endif // BOOST_UNITS_GET_SYSTEM_HPP