Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r56513 - in sandbox/statistics/distribution_common: . boost boost/statistics boost/statistics/detail boost/statistics/detail/distribution_common boost/statistics/detail/distribution_common/concept boost/statistics/detail/distribution_common/concept/aggregate boost/statistics/detail/distribution_common/concept/unary boost/statistics/detail/distribution_common/meta
From: erwann.rogard_at_[hidden]
Date: 2009-10-02 13:46:18


Author: e_r
Date: 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
New Revision: 56513
URL: http://svn.boost.org/trac/boost/changeset/56513

Log:
a
Added:
   sandbox/statistics/distribution_common/
   sandbox/statistics/distribution_common/boost/
   sandbox/statistics/distribution_common/boost/statistics/
   sandbox/statistics/distribution_common/boost/statistics/detail/
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/expectations.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/normalized_functions.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/unnormalized_functions.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/cdf.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/derivative_log_unnormalized_pdf.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/log_unnormalized_pdf.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/mean.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/normalizing_constant.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/pdf.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/quantile.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/variance.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/inherit_policy.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/inherit_value.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/policy.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/value.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_distribution.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_probability.hpp (contents, props changed)
   sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_variable.hpp (contents, props changed)

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/expectations.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/expectations.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,42 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::aggregate::expectations.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_AGGREGATE_EXPECTATIONS_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_AGGREGATE_EXPECTATIONS_HPP_ER_2009
+#include <boost/mpl/empty_base.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/mean.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/variance.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<
+ typename B = mpl::empty_base
+ >
+ class Expectations : public
+ Mean<
+ Variance<
+ B
+ >
+ >
+ {
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/normalized_functions.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/normalized_functions.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,45 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::aggregate::normalized_functions.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_AGGREGATE_NORMALIZED_FUNCTIONS_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_AGGREGATE_NORMALIZED_FUNCTIONS_HPP_ER_2009
+#include <boost/mpl/empty_base.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/cdf.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/pdf.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/quantile.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<
+ typename B
+ >
+ class NormalizedFunctions : public
+ Cdf<
+ Pdf<
+ Quantile<
+ B
+ >
+ >
+ >
+ {
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/unnormalized_functions.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/aggregate/unnormalized_functions.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,42 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::aggregate::unnormalized_functions.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_AGGREGATE_UNNORMALIZED_FUNCTIONS_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_AGGREGATE_UNNORMALIZED_FUNCTIONS_HPP_ER_2009
+#include <boost/mpl/empty_base.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/log_unnormalized_pdf.hpp>
+#include <boost/statistics/detail/distribution_common/concept/unary/derivative_log_unnormalized_pdf.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<
+ typename B
+ >
+ class UnnormalizedFunctions : public
+ LogUnnormalizedPdf<
+ DerivativeLogUnnormalizedPdf<
+ B
+ >
+ >
+ {
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/cdf.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/cdf.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,47 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::unary::concept::cdf.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_CDF_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_CDF_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class Cdf : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::variable_type x_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(Cdf){
+ p = boost::statistics::detail::cdf(d,x);
+ }
+
+ private:
+ d_ d;
+ x_ x;
+ p_ p;
+
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/derivative_log_unnormalized_pdf.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/derivative_log_unnormalized_pdf.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,51 @@
+//////////////////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::derivative_log_unnormalized_pdf.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_DERIVATIVE_LOG_UNNORMALIZED_PDF_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_DERIVATIVE_LOG_UNNORMALIZED_PDF_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class DerivativeLogUnnormalizedPdf : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::variable_type x_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(DerivativeLogUnnormalizedPdf){
+ val = boost::statistics::detail::derivative_log_unnormalized_pdf(
+ d,
+ x
+ );
+ }
+
+ private:
+ typedef typename meta::value<d_>::type value_;
+ d_ d;
+ value_ val;
+ x_ x;
+
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/log_unnormalized_pdf.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/log_unnormalized_pdf.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,47 @@
+///////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::log_unnormalized_pdf.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_LOG_UNNORMALIZED_PDF_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_LOG_UNNORMALIZED_PDF_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class LogUnnormalizedPdf : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::variable_type x_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(LogUnnormalizedPdf){
+ p = boost::statistics::detail::log_unnormalized_pdf(d,x);
+ }
+
+ private:
+ d_ d;
+ p_ p;
+ x_ x;
+
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/mean.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/mean.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,44 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::mean.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_MEAN_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_MEAN_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class Mean : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(Mean){
+ p = boost::statistics::detail::mean(d);
+ }
+
+ private:
+ d_ d;
+ p_ p;
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/normalizing_constant.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/normalizing_constant.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,45 @@
+///////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::normalizing_constant.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_NORMALIZING_CONSTANT_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_NORMALIZING_CONSTANT_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class NormalizingConstant : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(NormalizingConstant){
+ p = boost::statistics::detail::normalizing_constant(d);
+ }
+
+ private:
+ d_ d;
+ p_ p;
+
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/pdf.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/pdf.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,48 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::pdf.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_PDF_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_PDF_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class Pdf : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::variable_type x_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(Pdf){
+ p = boost::statistics::detail::pdf(d,x);
+ }
+
+ private:
+ typedef typename meta::value<d_>::type value_;
+ d_ d;
+ p_ p;
+ x_ x;
+
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/quantile.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/quantile.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,47 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::quantile.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_QUANTILE_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_QUANTILE_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class Quantile : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::variable_type x_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(Quantile){
+ x = boost::statistics::detail::quantile(d,p);
+ }
+
+ private:
+ d_ d;
+ x_ x;
+ p_ p;
+
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/variance.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/concept/unary/variance.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,44 @@
+//////////////////////////////////////////////////////////////////////////////////
+// distribution::common::concept::concept::unary::variance.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_VARIANCE_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_CONCEPT_UNARY_VARIANCE_HPP_ER_2009
+#include <boost/concept_check.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace concept{
+
+ template<typename B>
+ class Variance : public B{
+ typedef typename B::distribution_type d_;
+ typedef typename B::probability_type p_;
+
+ public:
+
+ BOOST_CONCEPT_USAGE(Variance){
+ p = boost::statistics::detail::variance(d);
+ }
+
+ private:
+ d_ d;
+ p_ p;
+ };
+
+}// concept
+}// common
+}// distribution
+
+}// statistics
+}// detail
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/inherit_policy.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/inherit_policy.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,41 @@
+///////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::inherit_policy.hpp //
+// //
+// Copyright 2009 Erwann Rogard. 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_INHERIT_POLICY_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_INHERIT_POLICY_HPP_ER_2009
+#include <boost/mpl/assert.hpp>
+#include <boost/mpl/not.hpp>
+#include <boost/type_traits.hpp>
+#include <boost/mpl/empty_base.hpp>
+#include <boost/statistics/detail/distribution_common/meta/policy.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename D,typename B = mpl::empty_base>
+ struct inherit_policy : B{
+ BOOST_MPL_ASSERT((
+ mpl::not_<
+ is_reference<D>
+ >
+ ));
+ typedef typename meta::policy<D>::type policy_type;
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+#endif

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/inherit_value.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/inherit_value.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,43 @@
+///////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::inherit_value.hpp //
+// //
+// Copyright 2009 Erwann Rogard. 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_INHERIT_VALUE_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_INHERIT_VALUE_HPP_ER_2009
+#include <boost/mpl/assert.hpp>
+#include <boost/mpl/not.hpp>
+#include <boost/type_traits.hpp>
+#include <boost/mpl/empty_base.hpp>
+#include <boost/statistics/detail/distribution_common/meta/value.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename D,typename B = mpl::empty_base>
+ struct inherit_value : B{
+ BOOST_MPL_ASSERT((
+ mpl::not_<
+ is_reference<D>
+ >
+ ));
+
+ typedef typename value<D>::type value_type;
+
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+#endif

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/policy.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/policy.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,33 @@
+//////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::policy.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_POLICY_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_POLICY_HPP_ER_2009
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename D>
+ struct policy{
+ typedef typename D::policy_type type;
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/value.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/value.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,33 @@
+//////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::value.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_VALUE_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_VALUE_HPP_ER_2009
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename D>
+ struct value{
+ typedef typename D::value_type type;
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+#endif
+

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_distribution.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_distribution.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,33 @@
+//////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::wrapper_distribution.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_WRAPPER_DISTRIBUTION_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_WRAPPER_DISTRIBUTION_HPP_ER_2009
+#include <boost/mpl/empty_base.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename D,typename B = mpl::empty_base>
+ struct wrapper_distribution : B{
+ typedef D distribution_type;
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+#endif

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_probability.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_probability.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,33 @@
+//////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::wrapper_probability.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_WRAPPER_PROBABILITY_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_WRAPPER_PROBABILITY_HPP_ER_2009
+#include <boost/mpl/empty_base.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename P,typename B = mpl::empty_base>
+ struct wrapper_probability : B{
+ typedef P probability_type;
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+#endif
\ No newline at end of file

Added: sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_variable.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/distribution_common/boost/statistics/detail/distribution_common/meta/wrapper_variable.hpp 2009-10-02 13:46:16 EDT (Fri, 02 Oct 2009)
@@ -0,0 +1,33 @@
+//////////////////////////////////////////////////////////////////////////////
+// distribution::common::meta::wrapper_variable.hpp //
+// //
+// (C) Copyright 2009 Erwann Rogard //
+// Use, modification and distribution are subject to 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_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_WRAPPER_INPUT_HPP_ER_2009
+#define BOOST_STATISTICS_DETAIL_DISTRIBUTION_COMMON_META_WRAPPER_INPUT_HPP_ER_2009
+#include <boost/mpl/empty_base.hpp>
+
+namespace boost{
+namespace statistics{
+namespace detail{
+namespace distribution{
+namespace common{
+namespace meta{
+
+ template<typename X,typename B = mpl::empty_base>
+ struct wrapper_variable : B{
+ typedef X variable_type;
+ };
+
+}// meta
+}// common
+}// distribution
+
+}// detail
+}// statistics
+}// boost
+
+#endif
\ No newline at end of file


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