Public Types | Public Member Functions | Protected Attributes

mln::accu::tuple< A, n, > Struct Template Reference
[Multiple accumulators]

Generic tuple of accumulators. More...

#include <tuple.hh>

Inheritance diagram for mln::accu::tuple< A, n, >:
Inheritance graph

List of all members.

Public Types

typedef A argument
typedef Accumulator< void > category
typedef tuple< A, n,
BOOST_PP_ENUM_PARAMS(10, T)> 
exact_t
typedef boost::tuple
< BOOST_PP_ENUM_PARAMS(10, T)> 
intern
typedef boost::tuple
< BOOST_PP_REPEAT(10,
RESULT_ACCU, Le Ricard ya que
ca de vrai!) > 
q_result
typedef boost::tuple
< BOOST_PP_REPEAT(10,
RESULT_ACCU, Le Ricard ya que
ca de vrai!)> 
res
typedef mln::metal::unqualif
< boost::tuple
< BOOST_PP_REPEAT(10,
RESULT_ACCU, Le Ricard ya que
ca de vrai!) > >::ret 
result
typedef tuple< A, n,
BOOST_PP_ENUM_PARAMS(10, T)> 
self

Public Member Functions

bool is_valid () const
 Check whether this accu is able to return a result.
boost::tuple< BOOST_PP_REPEAT(10,
RESULT_ACCU, Le Ricard ya que
ca de vrai!) > 
subj_ ()
void take_as_init (const T &t)
 Take as initialization the value t.
void take_as_init_ (const T &t)
 Default implementation of "take as initialization".
void take_n_times (unsigned n, const T &t)
 Take n times the value t.
void take_n_times_ (unsigned n, const T &t)
 Default implementation of "take n times".
res to_result () const
 Get the value of the accumulator.
 tuple ()

void init ()
 Manipulators.
void take_as_init_ (const argument &t)
void take (const argument &t)
void take (const tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> &other)

Protected Attributes

intern a_

Detailed Description

template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type)>
struct mln::accu::tuple< A, n, >

Generic tuple of accumulators.

The parameter T is the type of values.

Definition at line 74 of file tuple.hh.


Member Typedef Documentation

template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type) >
typedef A mln::accu::tuple< A, n, >::argument

Definition at line 77 of file tuple.hh.

typedef Accumulator<void> mln::Accumulator< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::category [inherited]

Reimplemented from mln::Proxy< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >.

Definition at line 80 of file accumulator.hh.

typedef tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> mln::Object< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::exact_t [inherited]

Definition at line 173 of file object.hh.

template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type) >
typedef boost::tuple< BOOST_PP_ENUM_PARAMS(10, T)> mln::accu::tuple< A, n, >::intern

Definition at line 80 of file tuple.hh.

typedef boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai!) > mln::accu::internal::base< boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai!) > , tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::q_result [inherited]

Definition at line 58 of file base.hh.

template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type) >
typedef boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai !)> mln::accu::tuple< A, n, >::res

Definition at line 79 of file tuple.hh.

typedef mln::metal::unqualif< boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai!) > >::ret mln::accu::internal::base< boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai!) > , tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::result [inherited]

Definition at line 59 of file base.hh.

template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type) >
typedef tuple<A, n, BOOST_PP_ENUM_PARAMS(10, T)> mln::accu::tuple< A, n, >::self

Definition at line 81 of file tuple.hh.


Constructor & Destructor Documentation

template<typename A , unsigned n, BOOST_PP_ENUM_PARAMS(10, typename T) >
mln::accu::tuple< A, n, >::tuple (  )  [inline]

Definition at line 189 of file tuple.hh.


Member Function Documentation

template<typename A , unsigned n, BOOST_PP_ENUM_PARAMS(10, typename T) >
void mln::accu::tuple< A, n, >::init (  )  [inline]

Manipulators.

Definition at line 197 of file tuple.hh.

References mln::accu::internal::tuplehelper< n, T >::init().

template<typename A , unsigned n, BOOST_PP_ENUM_PARAMS(10, typename T) >
bool mln::accu::tuple< A, n, >::is_valid (  )  const [inline]

Check whether this accu is able to return a result.

Always true here.

Definition at line 239 of file tuple.hh.

boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai!) > mln::accu::internal::base< boost::tuple< BOOST_PP_REPEAT(10, RESULT_ACCU, Le Ricard ya que ca de vrai!) > , tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::subj_ (  )  [inherited]
template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type) >
void mln::accu::tuple< A, n, >::take ( const tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> &  other  ) 
template<typename A , unsigned n, BOOST_PP_ENUM_PARAMS(10, typename T) >
void mln::accu::tuple< A, n, >::take ( const argument t  )  [inline]

Definition at line 213 of file tuple.hh.

References mln::accu::internal::tuplehelper< n, T >::take().

void mln::Accumulator< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::take_as_init ( const T &  t  )  [inherited]

Take as initialization the value t.

Dev note: this is a final method; override if needed by take_as_init_ (ending with '_').

void mln::Accumulator< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::take_as_init_ ( const T &  t  )  [inherited]

Default implementation of "take as initialization".

template<typename A , unsigned n, BOOST_PP_ENUM_PARAMS(10, typename T) >
void mln::accu::tuple< A, n, >::take_as_init_ ( const argument t  )  [inline]
void mln::Accumulator< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::take_n_times ( unsigned  n,
const T &  t 
) [inherited]

Take n times the value t.

Dev note: this is a final method; override if needed by take_as_init_ (ending with '_').

void mln::Accumulator< tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T)> >::take_n_times_ ( unsigned  n,
const T &  t 
) [inherited]

Default implementation of "take n times".

template<typename A , unsigned n, BOOST_PP_ENUM_PARAMS(10, typename T) >
tuple< A, n, BOOST_PP_ENUM_PARAMS(10, T) >::res mln::accu::tuple< A, n, >::to_result (  )  const [inline]

Get the value of the accumulator.

Definition at line 229 of file tuple.hh.

References mln::accu::internal::tuplehelper< n, T >::to_result().


Member Data Documentation

template<typename A, unsigned n, BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(10, typename T, boost::tuples::null_type) >
intern mln::accu::tuple< A, n, >::a_ [protected]

Definition at line 102 of file tuple.hh.