|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r51950 - in sandbox/SOC/2007/visualization/boost/svg_plot: . detail
From: pbristow_at_[hidden]
Date: 2009-03-24 05:43:23
Author: pbristow
Date: 2009-03-24 05:43:22 EDT (Tue, 24 Mar 2009)
New Revision: 51950
URL: http://svn.boost.org/trac/boost/changeset/51950
Log:
Addition of uncs_of and corrections to values_of. All projects compile OK.
Text files modified:
sandbox/SOC/2007/visualization/boost/svg_plot/detail/auto_axes.hpp | 10 ++++----
sandbox/SOC/2007/visualization/boost/svg_plot/detail/axis_plot_frame.hpp | 42 ---------------------------------------
sandbox/SOC/2007/visualization/boost/svg_plot/uncertain.hpp | 38 +++++++++++++++++++++++------------
3 files changed, 31 insertions(+), 59 deletions(-)
Modified: sandbox/SOC/2007/visualization/boost/svg_plot/detail/auto_axes.hpp
==============================================================================
--- sandbox/SOC/2007/visualization/boost/svg_plot/detail/auto_axes.hpp (original)
+++ sandbox/SOC/2007/visualization/boost/svg_plot/detail/auto_axes.hpp 2009-03-24 05:43:22 EDT (Tue, 24 Mar 2009)
@@ -35,11 +35,11 @@
using boost::minmax_element;
// minmax_element finds both min and max elements more efficiently than separately.
-#include <cmath> // for fabs, pow, ceil, log10
-#include <limits> // for std::numeric_limits;
-#include <stdexcept> // for std::domain_error;
-#include <iterator> // for std::iterator_traits;
-#include <utility> // using std::pair;
+#include <cmath> // using std::fabs, std::pow, std::ceil, std::log10
+#include <limits> // using std::numeric_limits;
+#include <stdexcept> // using std::domain_error;
+#include <iterator> // using std::iterator_traits;
+#include <utility> // using std::pair; using std::make_pair;
// Autoscaling algorithm derived from:
// Michael P.D. Bramley. CUJ July 2000, p 20 - 26.
Modified: sandbox/SOC/2007/visualization/boost/svg_plot/detail/axis_plot_frame.hpp
==============================================================================
--- sandbox/SOC/2007/visualization/boost/svg_plot/detail/axis_plot_frame.hpp (original)
+++ sandbox/SOC/2007/visualization/boost/svg_plot/detail/axis_plot_frame.hpp 2009-03-24 05:43:22 EDT (Tue, 24 Mar 2009)
@@ -3657,52 +3657,12 @@
{ // Set to use X min & max pair values to autoscale X-axis.
scale_axis(p.first, p.second, // double min and max from pair.
&derived().x_auto_min_value_, &derived().x_auto_max_value_, &derived().x_auto_tick_interval_, &derived().x_auto_ticks_,
- derived().autoscale_check_limits_, autoscale_plusminus_,
+ derived().autoscale_check_limits_, derived().autoscale_plusminus_,
derived().x_include_zero_, derived().x_tight_, derived().x_min_ticks_, derived().x_steps_);
derived().x_autoscale_ = true; // Default to use any calculated values?
return derived();
} // autoscale(pair<double, double> p)
-
- // unable to match function definition to an existing declaration definition
- // 'Derived &boost::svg::detail::axis_plot_frame<Derived>::x_autoscale(const T &,const T &)'
- // existing declarations
- // 'Derived &boost::svg::detail::axis_plot_frame<Derived>::x_autoscale(const T &)'
- // 'Derived &boost::svg::detail::axis_plot_frame<Derived>::x_autoscale(const T &,const T &)'
- // 'Derived &boost::svg::detail::axis_plot_frame<Derived>::x_autoscale(std::pair<_Ty1,_Ty2>)'
- // with
- // [
- // _Ty1=double,
- // _Ty2=double
- // ]
- // 'Derived &boost::svg::detail::axis_plot_frame<Derived>::x_autoscale(bool)'
- //'bool boost::svg::detail::axis_plot_frame<Derived>::x_autoscale(void)'
- //
- //template <class Derived, class T> // T an STL container: array, vector ...
- //Derived& axis_plot_frame<Derived>::x_autoscale(const T& begin, const T& end)
- //{ // Data series using iterators to calculate autoscaled values.
- // scale_axis(begin, end,
- // &derived().x_auto_min_value_, &derived().x_auto_max_value_, &derived().x_auto_tick_interval_, &derived().x_auto_ticks_,
- // derived().autoscale_check_limits_,
- // derived().x_include_zero_, derived().x_tight_, derived().x_min_ticks_, derived().x_steps_);
-
- // derived().x_autoscale_ = true; // Default to use calculated values.
- // return derived();
- //} // x_autoscale(const T& begin, const T& end)
-
- //template <class Derived, class T> // T an STL container: array, vector ...
- //Derived& axis_plot_frame<Derived>::x_autoscale(const T& container) // Whole data series.
- //{ // to use to calculate autoscaled values.
- // //scale_axis(container.begin(), container.end(), // All the container.
- // scale_axis(container, // All the container.
- // &derived().x_auto_min_value_, &derived().x_auto_max_value_, &derived().x_auto_tick_interval_, &derived().x_auto_ticks_,
- // derived().autoscale_check_limits_,
- // derived().x_include_zero_, derived().x_tight_, derived().x_min_ticks_, derived().x_steps_);
-
- // derived().x_autoscale_ = true; // Default to use calculated values.
- // return derived();
- //} // x_autoscale(const T& container)
-
template <class Derived>
Derived& axis_plot_frame<Derived>::x_with_zero(bool b)
{ //! Set X-axis autoscale to include zero (default = false).
Modified: sandbox/SOC/2007/visualization/boost/svg_plot/uncertain.hpp
==============================================================================
--- sandbox/SOC/2007/visualization/boost/svg_plot/uncertain.hpp (original)
+++ sandbox/SOC/2007/visualization/boost/svg_plot/uncertain.hpp 2009-03-24 05:43:22 EDT (Tue, 24 Mar 2009)
@@ -245,7 +245,7 @@
// Note names plural valueS_of
template <class T>
-std::pair<double, double> values_of(T);
+std::pair<double, double> values_of(T); // Declaration.
template <class T>
std::pair<double, double> values_of(std::pair<const T, T> vp)
@@ -254,7 +254,7 @@
}
template <class T>
-std::pair<double, double> values_of(std::pair<unc, unc> up)
+std::pair<double, double> values_of(std::pair<const unc, unc> up)
{ //! \return value (part) as a pair of doubles.
// so can write
// std::pair<const double, double> minmax = value_of(*result.first); // x min & max
@@ -266,16 +266,29 @@
return minmax;
}
-//template <class T>
-//std::pair<double, double> values_of(std::pair<T, T> vp)
-//{ //! \return value (part) as a pair of doubles.
-// // so can write
-// // std::pair<double, double> minmax = value_of(*result.first); // x min & max
-// // whether T is double or unc.
-// std::pair<double, double> minmax = std::make_pair(vp.first.value(), vp.second.value());
-// return minmax;
-//}
+template <class T>
+std::pair<double, double> values_of(std::pair<T, T> vp)
+{
+ return std::make_pair(value_of(vp.first), value_of(vp.second));
+}
+template <class T>
+std::pair<double, double> values_of(std::pair<unc, unc> up)
+{ //! \return value (part) as a pair of doubles.
+ // so can write
+ // std::pair<const double, double> minmax = value_of(*result.first); // x min & max
+ // whether T is double or unc.
+ return std::make_pair<double, double>(up.first.value(), up.second.value());
+}
+
+template <class T>
+std::pair<float, float> uncs_of(T); // Declaration.
+
+template <class T>
+std::pair<float, float> uncs_of(std::pair<T, T> vp)
+{
+ return std::make_pair<float, float>(unc_of(vp.first), unc_of(vp.second));
+}
template <class T>
std::pair<const float, float> uncs_of(std::pair<const T, T> vp)
@@ -283,8 +296,7 @@
// so can write
// std::pair<const float, float> minmax = value_of(*result.first); // min unc & max unc for example/
// whether T is built-in or unc.
- std::pair<const double, double> minmax = std::make_pair(vp.first.value(), vp.second.value());
- return minmax;
+ return std::make_pair(vp.first.unc(), vp.second.unc());
}
} // namespace svg
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk