Main Page Groups Namespaces

# SigC::Signal2< T_return, T_arg1, T_arg2, T_accumulator > Class Template Reference
[Compatibility module]

Signal declaration. More...

Inheritance diagram for SigC::Signal2< T_return, T_arg1, T_arg2, T_accumulator >:

[legend]
List of all members.

## Public Types

typedef ::sigc::signal2< T_return, T_arg1, T_arg2, T_accumulator > | parent_type
typedef parent_type::result_type | result_type
typedef parent_type::slot_type | slot_type

## Public Member Functions

| Signal2 ()
| Signal2 (const Signal2& src)
slot_type | slot () const
| Creates a functor that calls emit() on this signal.

## Detailed Description

### template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
class SigC::Signal2< T_return, T_arg1, T_arg2, T_accumulator >

Signal declaration.

Signal2 can be used to connect() slots that are invoked during subsequent calls to emit(). Any functor or slot can be passed into connect(). It is converted into a slot implicitely.

If you want to connect one signal to another, use slot() to retrieve a functor that emits the signal when invoked.

Be careful if you directly pass one signal into the connect() method of another: a shallow copy of the signal is made and the signal's slots are not disconnected until both the signal and its clone are destroyed which is probably not what you want!

An STL-style list interface for the signal's list of slots can be retrieved with slots(). This interface supports iteration, insertion and removal of slots.

The following template arguments are used:

- T_return The desired return type for the emit() function (may be overridden by the accumulator).
- T_arg1 Argument type used in the definition of emit().
- T_arg2 Argument type used in the definition of emit().
- T_accumulator The accumulator type used for emission. The default `nil` means that no accumulator should be used. Signal emission returns the return value of the last slot invoked.

Deprecated:
  Use the unnumbered template sigc::signal instead.

## Member Typedef Documentation

template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
typedef ::sigc::signal2<T_return, T_arg1,T_arg2, T_accumulator> SigC::Signal2<T_return, T_arg1, T_arg2, T_accumulator>::parent_type

template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
typedef parent_type::result_type SigC::Signal2<T_return, T_arg1, T_arg2, T_accumulator>::result_type

| Reimplemented from sigc::signal2<T_return, T_arg1, T_arg2, T_accumulator>.

template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
typedef parent_type::slot_type SigC::Signal2<T_return, T_arg1, T_arg2, T_accumulator>::slot_type

| Reimplemented from sigc::signal2<T_return, T_arg1, T_arg2, T_accumulator>.

## Constructor & Destructor Documentation

template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
SigC::Signal2<T_return, T_arg1, T_arg2, T_accumulator>::Signal2 | ( |  | ) | `[inline]`

template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
SigC::Signal2<T_return, T_arg1, T_arg2, T_accumulator>::Signal2 | ( | const Signal2<T_return, T_arg1, T_arg2, T_accumulator>& | src | ) | `[inline]`

## Member Function Documentation

template <class T_return, class T_arg1, class T_arg2, class T_accumulator = ::sigc::nil>
slot_type SigC::Signal2<T_return, T_arg1, T_arg2, T_accumulator>::slot | ( |  | ) | const`[inline]`

Creates a functor that calls emit() on this signal.

     sigc::mem_fun(mysignal, &sigc::signal2::emit)

yields the same result.

Returns:
  A functor that calls emit() on this signal.

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

- signal.h