logo top
Main Page   Groups   Namespaces  

sigc::slot5< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5 > Class Template Reference
[Slots]

Converts an arbitrary functor to a unified type which is opaque. More...

Inheritance diagram for sigc::slot5< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5 >:

Inheritance graph
[legend]
List of all members.

Public Types

typedef T_return result_type
typedef type_trait< T_arg1
>::take 
arg1_type_
typedef type_trait< T_arg2
>::take 
arg2_type_
typedef type_trait< T_arg3
>::take 
arg3_type_
typedef type_trait< T_arg4
>::take 
arg4_type_
typedef type_trait< T_arg5
>::take 
arg5_type_

Public Member Functions

T_return operator() (arg1_type_ _A_a1, arg2_type_ _A_a2, arg3_type_ _A_a3, arg4_type_ _A_a4, arg5_type_ _A_a5) const
 Invoke the contained functor unless slot is in blocking state.
 slot5 ()
template<class T_functor>
 slot5 (const T_functor& _A_func)
 Constructs a slot from an arbitrary functor.
 slot5 (const slot5& src)
slot5operator= (const slot5& src)
 Overrides this slot making a copy from another slot.

Detailed Description

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
class sigc::slot5< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5 >

Converts an arbitrary functor to a unified type which is opaque.

sigc::slot itself is a functor or to be more precise a closure. It contains a single, arbitrary functor (or closure) that is executed in operator()().

The template arguments determine the function signature of operator()():

To use simply assign the slot to the desired functor. If the functor is not compatible with the parameter list defined with the template arguments compiler errors are triggered. When called the slot will invoke the functor with minimal copies. block() and unblock() can be used to block the functor's invocation from operator()() temporarily.

You should use the more convenient unnumbered sigc::slot template.


Member Typedef Documentation

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
typedef T_return sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::result_type

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
typedef type_trait<T_arg1>::take sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::arg1_type_

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
typedef type_trait<T_arg2>::take sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::arg2_type_

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
typedef type_trait<T_arg3>::take sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::arg3_type_

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
typedef type_trait<T_arg4>::take sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::arg4_type_

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
typedef type_trait<T_arg5>::take sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::arg5_type_


Constructor & Destructor Documentation

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::slot5 (  )  [inline]

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
template <class T_functor>
sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::slot5 ( const T_functor &  _A_func  )  [inline]

Constructs a slot from an arbitrary functor.

Parameters:
_A_func The desirer functor the new slot should be assigned to.

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::slot5 ( const slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>&  src  )  [inline]


Member Function Documentation

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
T_return sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::operator() ( arg1_type_  _A_a1,
arg2_type_  _A_a2,
arg3_type_  _A_a3,
arg4_type_  _A_a4,
arg5_type_  _A_a5 
) const [inline]

Invoke the contained functor unless slot is in blocking state.

Parameters:
_A_a1 Argument to be passed on to the functor.
_A_a2 Argument to be passed on to the functor.
_A_a3 Argument to be passed on to the functor.
_A_a4 Argument to be passed on to the functor.
_A_a5 Argument to be passed on to the functor.
Returns:
The return value of the functor invocation.

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5>
slot5& sigc::slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>::operator= ( const slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>&  src  )  [inline]

Overrides this slot making a copy from another slot.

Parameters:
src The slot from which to make a copy.
Returns:
this.


The documentation for this class was generated from the following file:
Generated for libsigc++ 2.0 by Doxygen 1.5.1 © 1997-2001