Main Page Groups Namespaces

# sigc::internal::signal_emit1< T_return, T_arg1, T_accumulator > Struct Template Reference

Abstracts signal emission. More...

List of all members.

## Public Types

typedef signal_emit1< T_return, T_arg1, T_accumulator > | self_type
typedef T_accumulator::result_type | result_type
typedef slot<T_return, T_arg1> | slot_type
typedef internal::slot_iterator_buf< self_type > | slot_iterator_buf_type
typedef signal_impl::const_iterator_type | iterator_type

## Public Member Functions

| signal_emit1 (typename type_trait<T_arg1>::take _A_a1)
| Instantiates the class.
T_return | operator() (const slot_type& _A_slot) const
| Invokes a slot using the buffered parameter values.

## Static Public Member Functions

static result_type | emit (signal_impl* impl, typename type_trait<T_arg1>::take _A_a1)
| Executes a list of slots using an accumulator of type T_accumulator.

## Public Attributes

type_trait<T_arg1>::take | _A_a1_

## Detailed Description

### template <class T_return, class T_arg1, class T_accumulator>
struct sigc::internal::signal_emit1< T_return, T_arg1, T_accumulator >

Abstracts signal emission.

This template implements the emit() function of signal1. Template specializations are available to optimize signal emission when no accumulator is used, i.e. the template argument T_accumulator is `nil`.

## Member Typedef Documentation

template <class T_return, class T_arg1, class T_accumulator>
typedef signal_impl::const_iterator_type sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::iterator_type

template <class T_return, class T_arg1, class T_accumulator>
typedef T_accumulator::result_type sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::result_type

template <class T_return, class T_arg1, class T_accumulator>
typedef signal_emit1<T_return, T_arg1, T_accumulator> sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::self_type

template <class T_return, class T_arg1, class T_accumulator>
typedef internal::slot_iterator_buf<self_type> sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::slot_iterator_buf_type

template <class T_return, class T_arg1, class T_accumulator>
typedef slot<T_return, T_arg1> sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::slot_type

## Constructor & Destructor Documentation

template <class T_return, class T_arg1, class T_accumulator>
sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::signal_emit1 | ( | typename type_trait<T_arg1>::take | _A_a1 | ) | `[inline]`

| Instantiates the class. The parameters are stored in member variables. operator()() passes the values on to some slot.

## Member Function Documentation

template <class T_return, class T_arg1, class T_accumulator>
static result_type sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::emit | ( | signal_impl* | impl,
|  | typename type_trait<T_arg1>::take | _A_a1
| ) | `[inline, static]`

Executes a list of slots using an accumulator of type T_accumulator.

The arguments are buffered in a temporary instance of signal_emit1.

Parameters:

  | _A_a1 | Argument to be passed on to the slots.

Returns:
  The accumulated return values of the slot invocations as processed by the accumulator.

template <class T_return, class T_arg1, class T_accumulator>
T_return sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::operator() | ( | const slot_type& | _A_slot | ) | const`[inline]`

Invokes a slot using the buffered parameter values.

Parameters:

  | _A_slot | Some slot to invoke.

Returns:
  The slot's return value.

## Member Data Documentation

template <class T_return, class T_arg1, class T_accumulator>
type_trait<T_arg1>::take sigc::internal::signal_emit1<T_return, T_arg1, T_accumulator>::_A_a1_

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

- signal.h