logo top
Main Page   Groups   Namespaces  

sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4 > Class Template Reference

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

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

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_

Public Member Functions

T_return operator() (arg1_type_ _A_a1, arg2_type_ _A_a2, arg3_type_ _A_a3, arg4_type_ _A_a4) const
 Invoke the contained functor unless slot is in blocking state.

 slot ()
 Constructs an empty slot.

template <class T_functor>  slot (const T_functor& _A_func)
 Constructs a slot from an arbitrary functor.

 slot (const slot& src)
 Constructs a slot, copying an existing one.

slotoperator= (const slot& 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 sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4 >

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

This is the template specialization of the sigc::slot template for 4 arguments.


Member Typedef Documentation

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

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

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

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

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


Member Function Documentation

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4>
T_return sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4>::operator() ( arg1_type_  _A_a1,
arg2_type_  _A_a2,
arg3_type_  _A_a3,
arg4_type_  _A_a4
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.
Returns:
The return value of the functor invocation.

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

Overrides this slot making a copy from another slot.

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

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

Constructs a slot, copying an existing one.

Parameters:
src The existing slot to copy.

template <class T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4>
template <class T_functor>
sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4>::slot ( 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>
sigc::slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4>::slot (  )  [inline]
 

Constructs an empty slot.


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