1// Boost.Units - A C++ library for zero-overhead dimensional analysis and
2// unit/quantity manipulation and conversion
3//
4// Copyright (C) 2003-2008 Matthias Christian Schabel
5// Copyright (C) 2008 Steven Watanabe
6//
7// Distributed under the Boost Software License, Version 1.0. (See
8// accompanying file LICENSE_1_0.txt or copy at
9// http://www.boost.org/LICENSE_1_0.txt)
10
11#ifndef BOOST_UNITS_IS_UNIT_OF_DIMENSION_HPP
12#define BOOST_UNITS_IS_UNIT_OF_DIMENSION_HPP
13
14///
15/// \file
16/// \brief Check that a type is a unit of the specified dimension.
17///
18
19#include <boost/mpl/bool.hpp>
20#include <boost/units/units_fwd.hpp>
21
22namespace boost {
23
24namespace units {
25
26/// Check that a type is a unit of the specified dimension.
27template<class T,class Dim>
28struct is_unit_of_dimension :
29 public mpl::false_
30{ };
31
32template<class Dim,class System>
33struct is_unit_of_dimension< unit<Dim,System>,Dim > :
34 public mpl::true_
35{ };
36
37template<class Dim,class System>
38struct is_unit_of_dimension< absolute<unit<Dim,System> >,Dim > :
39 public mpl::true_
40{ };
41
42} // namespace units
43
44} // namespace boost
45
46#endif // BOOST_UNITS_IS_UNIT_OF_DIMENSION_HPP
47

source code of boost/boost/units/is_unit_of_dimension.hpp