diff options
author | Anas Nashif <anas.nashif@intel.com> | 2012-10-30 12:57:26 -0700 |
---|---|---|
committer | Anas Nashif <anas.nashif@intel.com> | 2012-10-30 12:57:26 -0700 |
commit | 1a78a62555be32868418fe52f8e330c9d0f95d5a (patch) | |
tree | d3765a80e7d3b9640ec2e930743630cd6b9fce2b /boost/units/base_units/temperature | |
download | boost-1a78a62555be32868418fe52f8e330c9d0f95d5a.tar.gz boost-1a78a62555be32868418fe52f8e330c9d0f95d5a.tar.bz2 boost-1a78a62555be32868418fe52f8e330c9d0f95d5a.zip |
Imported Upstream version 1.49.0upstream/1.49.0
Diffstat (limited to 'boost/units/base_units/temperature')
-rw-r--r-- | boost/units/base_units/temperature/celsius.hpp | 48 | ||||
-rw-r--r-- | boost/units/base_units/temperature/conversions.hpp | 42 | ||||
-rw-r--r-- | boost/units/base_units/temperature/fahrenheit.hpp | 48 |
3 files changed, 138 insertions, 0 deletions
diff --git a/boost/units/base_units/temperature/celsius.hpp b/boost/units/base_units/temperature/celsius.hpp new file mode 100644 index 0000000000..dff70a1cd1 --- /dev/null +++ b/boost/units/base_units/temperature/celsius.hpp @@ -0,0 +1,48 @@ +// 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) 2007-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_TEMPERATURE_CELSIUS_BASE_UNIT_HPP +#define BOOST_UNITS_TEMPERATURE_CELSIUS_BASE_UNIT_HPP + +#include <string> + +#include <boost/units/config.hpp> +#include <boost/units/base_unit.hpp> +#include <boost/units/physical_dimensions/temperature.hpp> + +namespace boost { + +namespace units { + +namespace temperature { + +struct celsius_base_unit : public base_unit<celsius_base_unit, temperature_dimension, -1008> +{ + static std::string name() { return("celsius"); } + static std::string symbol() { return("C"); } +}; + +} // namespace temperature + +} // namespace units + +} // namespace boost + +#if BOOST_UNITS_HAS_BOOST_TYPEOF + +#include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP() + +BOOST_TYPEOF_REGISTER_TYPE(boost::units::temperature::celsius_base_unit) + +#endif + +#include <boost/units/base_units/temperature/conversions.hpp> + +#endif // BOOST_UNITS_TEMPERATURE_CELSIUS_BASE_UNIT_HPP diff --git a/boost/units/base_units/temperature/conversions.hpp b/boost/units/base_units/temperature/conversions.hpp new file mode 100644 index 0000000000..e4e45de99f --- /dev/null +++ b/boost/units/base_units/temperature/conversions.hpp @@ -0,0 +1,42 @@ +// 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) 2007-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) + +// No include guards. This header is intended to be included +// multiple times. + +// units of temperature + +#if defined(BOOST_UNITS_SI_KELVIN_BASE_UNIT_HPP) && defined(BOOST_UNITS_TEMPERATURE_CELSIUS_BASE_UNIT_HPP) &&\ + !defined(BOOST_UNITS_SYSTEMS_KELVIN_TO_CELSIUS_CONVERSION_DEFINED) + #define BOOST_UNITS_SYSTEMS_KELVIN_TO_CELSIUS_CONVERSION_DEFINED + #include <boost/units/conversion.hpp> + #include <boost/units/absolute.hpp> + BOOST_UNITS_DEFINE_CONVERSION_FACTOR(boost::units::si::kelvin_base_unit, boost::units::temperature::celsius_base_unit, one, make_one()); + BOOST_UNITS_DEFINE_CONVERSION_OFFSET(boost::units::si::kelvin_base_unit, boost::units::temperature::celsius_base_unit, double, -273.15); +#endif + +#if defined(BOOST_UNITS_SI_KELVIN_BASE_UNIT_HPP) && defined(BOOST_UNITS_TEMPERATURE_FAHRENHEIT_BASE_UNIT_HPP) &&\ + !defined(BOOST_UNITS_SYSTEMS_KELVIN_TO_FAHRENHEIT_CONVERSION_DEFINED) + #define BOOST_UNITS_SYSTEMS_KELVIN_TO_FAHRENHEIT_CONVERSION_DEFINED + #include <boost/units/conversion.hpp> + #include <boost/units/absolute.hpp> + BOOST_UNITS_DEFINE_CONVERSION_FACTOR(boost::units::si::kelvin_base_unit, boost::units::temperature::fahrenheit_base_unit, double, 9.0/5.0); + BOOST_UNITS_DEFINE_CONVERSION_OFFSET(boost::units::si::kelvin_base_unit, boost::units::temperature::fahrenheit_base_unit, double, -273.15 * 9.0 / 5.0 + 32.0); +#endif + +#if defined(BOOST_UNITS_TEMPERATURE_CELSIUS_BASE_UNIT_HPP) && defined(BOOST_UNITS_TEMPERATURE_FAHRENHEIT_BASE_UNIT_HPP) &&\ + !defined(BOOST_UNITS_SYSTEMS_CELSUIS_TO_FAHRENHEIT_CONVERSION_DEFINED) + #define BOOST_UNITS_SYSTEMS_CELSUIS_TO_FAHRENHEIT_CONVERSION_DEFINED + #include <boost/units/conversion.hpp> + #include <boost/units/absolute.hpp> + BOOST_UNITS_DEFINE_CONVERSION_FACTOR(boost::units::temperature::celsius_base_unit, boost::units::temperature::fahrenheit_base_unit, double, 9.0/5.0); + BOOST_UNITS_DEFINE_CONVERSION_OFFSET(boost::units::temperature::celsius_base_unit, boost::units::temperature::fahrenheit_base_unit, double, 32.0); +#endif + diff --git a/boost/units/base_units/temperature/fahrenheit.hpp b/boost/units/base_units/temperature/fahrenheit.hpp new file mode 100644 index 0000000000..ff0149f856 --- /dev/null +++ b/boost/units/base_units/temperature/fahrenheit.hpp @@ -0,0 +1,48 @@ +// 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) 2007-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_TEMPERATURE_FAHRENHEIT_BASE_UNIT_HPP +#define BOOST_UNITS_TEMPERATURE_FAHRENHEIT_BASE_UNIT_HPP + +#include <string> + +#include <boost/units/config.hpp> +#include <boost/units/base_unit.hpp> +#include <boost/units/physical_dimensions/temperature.hpp> + +namespace boost { + +namespace units { + +namespace temperature { + +struct fahrenheit_base_unit : public base_unit<fahrenheit_base_unit, temperature_dimension, -1007> +{ + static std::string name() { return("fahrenheit"); } + static std::string symbol() { return("F"); } +}; + +} // namespace temperature + +} // namespace units + +} // namespace boost + +#if BOOST_UNITS_HAS_BOOST_TYPEOF + +#include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP() + +BOOST_TYPEOF_REGISTER_TYPE(boost::units::temperature::fahrenheit_base_unit) + +#endif + +#include <boost/units/base_units/temperature/conversions.hpp> + +#endif // BOOST_UNITS_TEMPERATURE_FAHRENHEIT_BASE_UNIT_HPP |