Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::accumulators::accumulator_set< Sample, Features, Weight > Struct Template Reference

A set of accumulators. More...

#include <accumulator_set.hpp>

Inheritance diagram for boost::accumulators::accumulator_set< Sample, Features, Weight >:
Collaboration diagram for boost::accumulators::accumulator_set< Sample, Features, Weight >:

Public Types

typedef Sample sample_type
 The type of the samples that will be accumulated. More...
 
typedef Features features_type
 An MPL sequence of the features that should be accumulated. More...
 
typedef Weight weight_type
 The type of the weight parameter. Must be a scalar. Defaults to void. More...
 
typedef
detail::make_accumulator_tuple
< Features, Sample, Weight >
::type 
accumulators_mpl_vector
 INTERNAL ONLY. More...
 
typedef
detail::meta::make_acc_list
< accumulators_mpl_vector >
::type 
accumulators_type
 INTERNAL ONLY. More...
 
typedef void result_type
 The return type of the operator() overloads is void. More...
 

Public Member Functions

 accumulator_set ()
 INTERNAL ONLY. More...
 
template<typename A1 >
 accumulator_set (A1 const &a1)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
 BOOST_PP_REPEAT_FROM_TO (2, BOOST_PP_INC(BOOST_ACCUMULATORS_MAX_ARGS), BOOST_ACCUMULATORS_ACCUMULATOR_SET_CTOR, _) template< typename UnaryFunction > void visit(UnaryFunction const &func)
 INTERNAL ONLY. More...
 
template<typename FilterPred , typename UnaryFunction >
void visit_if (UnaryFunction const &func)
 Conditional visitation. More...
 
void operator() ()
 Accumulation. More...
 
template<typename A1 >
void operator() (A1 const &a1)
 
 BOOST_PP_REPEAT_FROM_TO (2, BOOST_PP_INC(BOOST_ACCUMULATORS_MAX_ARGS), BOOST_ACCUMULATORS_ACCUMULATOR_SET_FUN_OP, _) template< typename Feature > struct apply
 INTERNAL ONLY. More...
 
template<typename Feature >
apply< Feature >::typeextract ()
 Extraction. More...
 
template<typename Feature >
apply< Feature >::type const & extract () const
 
template<typename Feature >
void drop ()
 Drop. More...
 

Detailed Description

template<typename Sample, typename Features, typename Weight>
struct boost::accumulators::accumulator_set< Sample, Features, Weight >

A set of accumulators.

accumulator_set resolves the dependencies between features and ensures that the accumulators in the set are updated in the proper order.

acccumulator_set provides a general mechanism to visit the accumulators in the set in order, with or without a filter. You can also fetch a reference to an accumulator that corresponds to a feature.

Member Typedef Documentation

template<typename Sample , typename Features , typename Weight >
typedef detail::make_accumulator_tuple< Features , Sample , Weight >::type boost::accumulators::accumulator_set< Sample, Features, Weight >::accumulators_mpl_vector

INTERNAL ONLY.

template<typename Sample , typename Features , typename Weight >
typedef detail::meta::make_acc_list< accumulators_mpl_vector >::type boost::accumulators::accumulator_set< Sample, Features, Weight >::accumulators_type

INTERNAL ONLY.

template<typename Sample , typename Features , typename Weight >
typedef Features boost::accumulators::accumulator_set< Sample, Features, Weight >::features_type

An MPL sequence of the features that should be accumulated.

template<typename Sample , typename Features , typename Weight >
typedef void boost::accumulators::accumulator_set< Sample, Features, Weight >::result_type

The return type of the operator() overloads is void.

template<typename Sample , typename Features , typename Weight >
typedef Sample boost::accumulators::accumulator_set< Sample, Features, Weight >::sample_type

The type of the samples that will be accumulated.

template<typename Sample , typename Features , typename Weight >
typedef Weight boost::accumulators::accumulator_set< Sample, Features, Weight >::weight_type

The type of the weight parameter. Must be a scalar. Defaults to void.

Constructor & Destructor Documentation

template<typename Sample , typename Features , typename Weight >
boost::accumulators::accumulator_set< Sample, Features, Weight >::accumulator_set ( )
inline

INTERNAL ONLY.

default-construct all contained accumulators

References boost::accumulators::detail::make_add_ref_visitor().

template<typename Sample , typename Features , typename Weight >
template<typename A1 >
boost::accumulators::accumulator_set< Sample, Features, Weight >::accumulator_set ( A1 const &  a1)
inlineexplicit

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters
a1Optional named parameter to be passed to all the accumulators

References boost::accumulators::detail::make_add_ref_visitor().

Member Function Documentation

template<typename Sample , typename Features , typename Weight >
boost::accumulators::accumulator_set< Sample, Features, Weight >::BOOST_PP_REPEAT_FROM_TO ( ,
BOOST_PP_INC(BOOST_ACCUMULATORS_MAX_ARGS ,
BOOST_ACCUMULATORS_ACCUMULATOR_SET_CTOR  ,
 
) const
inline

INTERNAL ONLY.

Visitation

Parameters
funcUnaryFunction which is invoked with each accumulator in turn.
template<typename Sample , typename Features , typename Weight >
boost::accumulators::accumulator_set< Sample, Features, Weight >::BOOST_PP_REPEAT_FROM_TO ( ,
BOOST_PP_INC(BOOST_ACCUMULATORS_MAX_ARGS ,
BOOST_ACCUMULATORS_ACCUMULATOR_SET_FUN_OP  ,
 
)
inline

INTERNAL ONLY.

Extraction

template<typename Sample , typename Features , typename Weight >
template<typename Feature >
void boost::accumulators::accumulator_set< Sample, Features, Weight >::drop ( )
inline
template<typename Sample , typename Features , typename Weight >
template<typename Feature >
apply<Feature>::type& boost::accumulators::accumulator_set< Sample, Features, Weight >::extract ( )
inline

Extraction.

template<typename Sample , typename Features , typename Weight >
template<typename Feature >
apply<Feature>::type const& boost::accumulators::accumulator_set< Sample, Features, Weight >::extract ( ) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

template<typename Sample , typename Features , typename Weight >
void boost::accumulators::accumulator_set< Sample, Features, Weight >::operator() ( )
inline

Accumulation.

Parameters
a1Optional named parameter to be passed to all the accumulators

References boost::accumulators::detail::make_accumulator_visitor(), and boost::visit().

template<typename Sample , typename Features , typename Weight >
template<typename A1 >
void boost::accumulators::accumulator_set< Sample, Features, Weight >::operator() ( A1 const &  a1)
inline
template<typename Sample , typename Features , typename Weight >
template<typename FilterPred , typename UnaryFunction >
void boost::accumulators::accumulator_set< Sample, Features, Weight >::visit_if ( UnaryFunction const &  func)
inline

Conditional visitation.

Parameters
funcUnaryFunction which is invoked with each accumulator in turn, provided the accumulator satisfies the MPL predicate FilterPred.

References boost::fusion::for_each().


The documentation for this struct was generated from the following files: