units_fwd.hpp 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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. #ifndef BOOST_UNITS_UNITS_FWD_HPP
  11. #define BOOST_UNITS_UNITS_FWD_HPP
  12. ///
  13. /// \file
  14. /// \brief Forward declarations of library components.
  15. /// \details Forward declarations of units library - dimensions, systems, quantity and string components.
  16. ///
  17. #ifndef BOOST_UNITS_DOXYGEN
  18. #include <string>
  19. namespace boost {
  20. namespace units {
  21. template<typename T,typename V> struct dim;
  22. template<typename T> struct is_dim;
  23. struct dimensionless_type;
  24. template<class Item,class Next> struct list;
  25. template<typename Seq> struct make_dimension_list;
  26. template<class T> struct is_dimensionless;
  27. template<class S1,class S2> struct is_implicitly_convertible;
  28. template<class T> struct get_dimension;
  29. template<class T> struct get_system;
  30. template<class Y> class absolute;
  31. template<class Dim,class System, class Enable=void> class unit;
  32. template<long Base, class Exponent> struct scale;
  33. template<class BaseUnitTag> struct base_unit_info;
  34. template<class System> struct dimensionless_unit;
  35. template<class T> struct is_unit;
  36. template<class T,class Dim> struct is_unit_of_dimension;
  37. template<class T,class System> struct is_unit_of_system;
  38. template<class Unit,class Y = double> class quantity;
  39. template<class System,class Y> struct dimensionless_quantity;
  40. template<class T> struct is_quantity;
  41. template<class T,class Dim> struct is_quantity_of_dimension;
  42. template<class T,class System> struct is_quantity_of_system;
  43. template<class From,class To> struct conversion_helper;
  44. template<class T> std::string to_string(const T&);
  45. template<class T> std::string name_string(const T&);
  46. template<class T> std::string symbol_string(const T&);
  47. template<class T> std::string raw_string(const T&);
  48. template<class T> std::string typename_string(const T&);
  49. } // namespace units
  50. } // namespace boost
  51. #endif
  52. #endif // BOOST_UNITS_UNITS_FWD_HPP