Suminality accumulator class. More...
#include <sum.hh>
Public Types | |
typedef I::value | argument |
typedef Accumulator< void > | category |
typedef sum< I, S > | exact_t |
typedef S | q_result |
typedef mln::metal::unqualif < S >::ret | result |
Public Member Functions | |
bool | is_valid () const |
Check whether this accu is able to return a result. | |
void | set_value (const argument &v) |
Set the return value of the accumalator. | |
void | set_value (const util::pix< I > &px) |
S | subj_ () |
sum () | |
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". | |
S | to_result () const |
Get the value of the accumulator. | |
void | untake (const util::pix< I > &px) |
void | untake (const argument &v) |
Untake a value from the accumulator. | |
void | init () |
Manipulators. | |
void | take (const argument &v) |
void | take (const util::pix< I > &px) |
void | take (const sum< I, S > &other) |
void | take_as_init_ (const argument &v) |
void | take_as_init_ (const util::pix< I > &px) |
Protected Attributes | |
S | s_ |
The sum value. | |
Private Types | |
typedef mln::accu::internal::base< S, sum< I > > | super_ |
Suminality accumulator class.
Definition at line 80 of file morpho/attribute/sum.hh.
typedef I ::value mln::morpho::attribute::sum< I, S >::argument |
Definition at line 85 of file morpho/attribute/sum.hh.
typedef Accumulator<void> mln::Accumulator< sum< I, S > >::category [inherited] |
Reimplemented from mln::Proxy< sum< I, S > >.
Definition at line 80 of file accumulator.hh.
typedef sum< I, S > mln::Object< sum< I, S > >::exact_t [inherited] |
typedef S mln::accu::internal::base< S , sum< I, S > >::q_result [inherited] |
typedef mln::metal::unqualif< S >::ret mln::accu::internal::base< S , sum< I, S > >::result [inherited] |
typedef mln::accu::internal::base< S, sum<I> > mln::morpho::attribute::sum< I, S >::super_ [private] |
Definition at line 82 of file morpho/attribute/sum.hh.
mln::morpho::attribute::sum< I, S >::sum | ( | ) | [inline] |
Definition at line 129 of file morpho/attribute/sum.hh.
References mln::morpho::attribute::sum< I, S >::init().
void mln::morpho::attribute::sum< I, S >::init | ( | ) | [inline] |
Manipulators.
Definition at line 137 of file morpho/attribute/sum.hh.
References mln::literal::zero.
Referenced by mln::morpho::attribute::sum< I, S >::sum().
bool mln::morpho::attribute::sum< I, S >::is_valid | ( | ) | const [inline] |
Check whether this accu is able to return a result.
Return always true.
Definition at line 229 of file morpho/attribute/sum.hh.
void mln::morpho::attribute::sum< I, S >::set_value | ( | const argument & | v | ) | [inline] |
Set the return value of the accumalator.
Definition at line 205 of file morpho/attribute/sum.hh.
Referenced by mln::morpho::attribute::sum< I, S >::set_value().
void mln::morpho::attribute::sum< I, S >::set_value | ( | const util::pix< I > & | px | ) | [inline] |
Definition at line 213 of file morpho/attribute/sum.hh.
References mln::morpho::attribute::sum< I, S >::set_value(), and mln::util::pix< I >::v().
S mln::accu::internal::base< S , sum< I, S > >::subj_ | ( | ) | [inherited] |
void mln::morpho::attribute::sum< I, S >::take | ( | const argument & | v | ) | [inline] |
Definition at line 147 of file morpho/attribute/sum.hh.
Referenced by mln::morpho::attribute::sum< I, S >::take().
void mln::morpho::attribute::sum< I, S >::take | ( | const sum< I, S > & | other | ) | [inline] |
Definition at line 163 of file morpho/attribute/sum.hh.
References mln::morpho::attribute::sum< I, S >::s_.
void mln::morpho::attribute::sum< I, S >::take | ( | const util::pix< I > & | px | ) | [inline] |
Definition at line 155 of file morpho/attribute/sum.hh.
References mln::morpho::attribute::sum< I, S >::take(), and mln::util::pix< I >::v().
void mln::Accumulator< sum< I, S > >::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< sum< I, S > >::take_as_init_ | ( | const T & | t | ) | [inherited] |
Default implementation of "take as initialization".
void mln::morpho::attribute::sum< I, S >::take_as_init_ | ( | const argument & | v | ) | [inline] |
Definition at line 173 of file morpho/attribute/sum.hh.
Referenced by mln::morpho::attribute::sum< I, S >::take_as_init_().
void mln::morpho::attribute::sum< I, S >::take_as_init_ | ( | const util::pix< I > & | px | ) | [inline] |
Definition at line 181 of file morpho/attribute/sum.hh.
References mln::morpho::attribute::sum< I, S >::take_as_init_(), and mln::util::pix< I >::v().
void mln::Accumulator< sum< I, S > >::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< sum< I, S > >::take_n_times_ | ( | unsigned | n, | |
const T & | t | |||
) | [inherited] |
Default implementation of "take n times".
S mln::morpho::attribute::sum< I, S >::to_result | ( | ) | const [inline] |
Get the value of the accumulator.
Definition at line 221 of file morpho/attribute/sum.hh.
void mln::morpho::attribute::sum< I, S >::untake | ( | const argument & | v | ) | [inline] |
Untake a value from the accumulator.
Definition at line 189 of file morpho/attribute/sum.hh.
Referenced by mln::morpho::attribute::sum< I, S >::untake().
void mln::morpho::attribute::sum< I, S >::untake | ( | const util::pix< I > & | px | ) | [inline] |
Definition at line 197 of file morpho/attribute/sum.hh.
References mln::morpho::attribute::sum< I, S >::untake(), and mln::util::pix< I >::v().
S mln::morpho::attribute::sum< I, S >::s_ [protected] |
The sum value.
Definition at line 120 of file morpho/attribute/sum.hh.
Referenced by mln::morpho::attribute::sum< I, S >::take().