Main Page Groups Namespaces

# sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator> Struct Template Reference

Abstracts signal emission. More...

List of all members.

## Public Types
typedef signal_emit7 < T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator > | self_type
typedef T_accumulator::result_type | result_type
typedef slot < T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7 > | slot_type
## Package Types
typedef signal_impl::const_iterator_type | iterator_type
## Package Functions
| signal_emit7 (typename type_trait<T_arg1>::take _A_a1, typename type_trait<T_arg2>::take _A_a2, typename type_trait<T_arg3>::take _A_a3, typename type_trait<T_arg4>::take _A_a4, typename type_trait<T_arg5>::take _A_a5, typename type_trait<T_arg6>::take _A_a6, typename type_trait<T_arg7>::take _A_a7)
| Instantiates the class.
T_return | operator() (const slot_type& _A_slot) const
| Invokes a slot using the buffered parameter values.
## Static Package Functions
static result_type | emit (signal_impl* impl, typename type_trait<T_arg1>::take _A_a1, typename type_trait<T_arg2>::take _A_a2, typename type_trait<T_arg3>::take _A_a3, typename type_trait<T_arg4>::take _A_a4, typename type_trait<T_arg5>::take _A_a5, typename type_trait<T_arg6>::take _A_a6, typename type_trait<T_arg7>::take _A_a7)
| Executes a list of slots using an accumulator of type T_accumulator.
## Package Attributes
| __pad0__:slot_iterator_buf<self_type> slot_iterator_buf_type
type_trait<T_arg1> ::take | _A_a1_
type_trait<T_arg2> ::take | _A_a2_
type_trait<T_arg3> ::take | _A_a3_
type_trait<T_arg4> ::take | _A_a4_
type_trait<T_arg5> ::take | _A_a5_
type_trait<T_arg6> ::take | _A_a6_
type_trait<T_arg7> ::take | _A_a7_

## Detailed Description

### template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>
struct sigc::internal::signal_emit7< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator >

Abstracts signal emission.

This template implements the emit() function of signal7. 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_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

typedef signal_emit7<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7, T_accumulator> sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::self_type

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

typedef T_accumulator::result_type sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::result_type

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

typedef slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7> sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::slot_type

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

typedef signal_impl::const_iterator_type sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::iterator_type`[package]`

## Constructor & Destructor Documentation

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::signal_emit7 | ( | typename type_trait<T_arg1>::take | _A_a1,
|  | typename type_trait<T_arg2>::take | _A_a2,
|  | typename type_trait<T_arg3>::take | _A_a3,
|  | typename type_trait<T_arg4>::take | _A_a4,
|  | typename type_trait<T_arg5>::take | _A_a5,
|  | typename type_trait<T_arg6>::take | _A_a6,
|  | typename type_trait<T_arg7>::take | _A_a7 |
| ) |  |  | `[inline, package]`

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_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

T_return sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::operator() | ( | const slot_type& | _A_slot | ) | const`[inline, package]`

Invokes a slot using the buffered parameter values.

Parameters:

  | _A_slot | Some slot to invoke.

Returns:
  The slot's return value.

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

static result_type sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::emit | ( | signal_impl* | impl,
|  | typename type_trait<T_arg1>::take | _A_a1,
|  | typename type_trait<T_arg2>::take | _A_a2,
|  | typename type_trait<T_arg3>::take | _A_a3,
|  | typename type_trait<T_arg4>::take | _A_a4,
|  | typename type_trait<T_arg5>::take | _A_a5,
|  | typename type_trait<T_arg6>::take | _A_a6,
|  | typename type_trait<T_arg7>::take | _A_a7 |
| ) |  |  | `[inline, static, package]`

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

The arguments are buffered in a temporary instance of signal_emit7.

Parameters:

  | _A_a1 | Argument to be passed on to the slots.
  | _A_a2 | Argument to be passed on to the slots.
  | _A_a3 | Argument to be passed on to the slots.
  | _A_a4 | Argument to be passed on to the slots.
  | _A_a5 | Argument to be passed on to the slots.
  | _A_a6 | Argument to be passed on to the slots.
  | _A_a7 | Argument to be passed on to the slots.

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

## Member Data Documentation

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::__pad0__`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg1>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a1_`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg2>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a2_`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg3>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a3_`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg4>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a4_`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg5>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a5_`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg6>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a6_`[package]`

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_arg7, class T_accumulator>

type_trait<T_arg7>::take sigc::internal::signal_emit7<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_accumulator>::_A_a7_`[package]`

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

- signal.h