Public Types | Public Member Functions | Public Attributes | Protected Attributes

mln::accu::maj_h< T > Struct Template Reference
[On values]

Compute the majority value. More...

#include <maj_h.hh>

Inheritance diagram for mln::accu::maj_h< T >:
Inheritance graph

List of all members.

Public Types

typedef T argument
typedef Accumulator< void > category
typedef maj_h< T > exact_t
typedef const T & q_result
typedef mln::metal::unqualif
< const T & >::ret 
result

Public Member Functions

const accu::histo< T > & histo () const
bool is_valid () const
 Check whether this accu is able to return a result.
 maj_h ()
const T & 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".
const T & to_result () const
 Get the value of the accumulator.
void update_ () const

void init ()
 Manipulators.
void take (const argument &t)
void untake (const argument &t)
void take (const maj_h< T > &other)

Public Attributes

bool valid_

Protected Attributes

accu::histo< T > h_
argument t_

Detailed Description

template<typename T>
struct mln::accu::maj_h< T >

Compute the majority value.

It is based on a histogram. The parameter T is the type of values.

Definition at line 57 of file maj_h.hh.


Member Typedef Documentation

template<typename T>
typedef T mln::accu::maj_h< T >::argument

Definition at line 59 of file maj_h.hh.

typedef Accumulator<void> mln::Accumulator< maj_h< T > >::category [inherited]

Reimplemented from mln::Proxy< maj_h< T > >.

Definition at line 80 of file accumulator.hh.

typedef maj_h< T > mln::Object< maj_h< T > >::exact_t [inherited]

Definition at line 173 of file object.hh.

typedef const T & mln::accu::internal::base< const T & , maj_h< T > >::q_result [inherited]

Definition at line 58 of file base.hh.

typedef mln::metal::unqualif< const T & >::ret mln::accu::internal::base< const T & , maj_h< T > >::result [inherited]

Definition at line 59 of file base.hh.


Constructor & Destructor Documentation

template<typename T >
mln::accu::maj_h< T >::maj_h (  )  [inline]

Member Function Documentation

template<typename V >
const accu::histo< V > & mln::accu::maj_h< V >::histo (  )  const [inline]

Definition at line 205 of file maj_h.hh.

References mln::accu::maj_h< T >::h_.

template<typename T >
void mln::accu::maj_h< T >::init (  )  [inline]

Manipulators.

Definition at line 129 of file maj_h.hh.

References mln::accu::maj_h< T >::h_, and mln::accu::histo< V >::init().

Referenced by mln::accu::maj_h< T >::maj_h().

template<typename T >
bool mln::accu::maj_h< T >::is_valid (  )  const [inline]

Check whether this accu is able to return a result.

Always true here.

Definition at line 197 of file maj_h.hh.

const T & mln::accu::internal::base< const T & , maj_h< T > >::subj_ (  )  [inherited]
template<typename T >
void mln::accu::maj_h< T >::take ( const maj_h< T > &  other  )  [inline]
template<typename T >
void mln::accu::maj_h< T >::take ( const argument t  )  [inline]
void mln::Accumulator< maj_h< 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< maj_h< T > >::take_as_init_ ( const T &  t  )  [inherited]

Default implementation of "take as initialization".

void mln::Accumulator< maj_h< 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< maj_h< T > >::take_n_times_ ( unsigned  n,
const T &  t 
) [inherited]

Default implementation of "take n times".

template<typename T >
const T & mln::accu::maj_h< T >::to_result (  )  const [inline]

Get the value of the accumulator.

Definition at line 187 of file maj_h.hh.

References mln::accu::maj_h< T >::t_, mln::accu::maj_h< T >::update_(), and mln::accu::maj_h< T >::valid_.

template<typename T >
void mln::accu::maj_h< T >::untake ( const argument t  )  [inline]
template<typename T >
void mln::accu::maj_h< T >::update_ (  )  const [inline]

Member Data Documentation

template<typename T>
accu::histo<T> mln::accu::maj_h< T >::h_ [mutable, protected]
template<typename T>
argument mln::accu::maj_h< T >::t_ [mutable, protected]
template<typename T>
bool mln::accu::maj_h< T >::valid_ [mutable]