libsigc++ 2.12.0
Public Types | Public Member Functions | List of all members
sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, nil, nil > Class Template Reference

Convenience wrapper for the numbered sigc::slot5 template. More...

#include <sigc++/functors/slot.h>

Inheritance diagram for sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, nil, nil >:
Inheritance graph
[legend]

Public Types

typedef slot5< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5 > parent_type
 
- Public Types inherited from sigc::slot5< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5 >
typedef type_trait_take_t< T_arg1 > arg1_type_
 
typedef type_trait_take_t< T_arg2 > arg2_type_
 
typedef type_trait_take_t< T_arg3 > arg3_type_
 
typedef type_trait_take_t< T_arg4 > arg4_type_
 
typedef type_trait_take_t< T_arg5 > arg5_type_
 
typedef T_return result_type
 
- Public Types inherited from sigc::slot_base
typedef trackable::func_destroy_notify func_destroy_notify
 

Public Member Functions

 slot ()
 
 slot (const slot & src)
 Constructs a slot, copying an existing one. More...
 
template<class T_functor >
 slot (const T_functor & _A_func)
 Constructs a slot from an arbitrary functor. More...
 
 slot (slot && src)
 Constructs a slot, moving an existing one. More...
 
slotoperator= (const slot & src)
 Overrides this slot, making a copy from another slot. More...
 
slotoperator= (slot && src)
 Overrides this slot, making a move from another slot. More...
 
- Public Member Functions inherited from sigc::slot5< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5 >
 slot5 ()
 
 slot5 (const slot5 & src)
 Constructs a slot, copying an existing one. More...
 
template<class T_functor >
 slot5 (const T_functor & _A_func)
 Constructs a slot from an arbitrary functor. More...
 
 slot5 (slot5 && src)
 Constructs a slot, moving an existing one. More...
 
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. More...
 
slot5operator= (const slot5 & src)
 Overrides this slot, making a copy from another slot. More...
 
slot5operator= (slot5 && src)
 Overrides this slot, making a move from another slot. More...
 
- Public Member Functions inherited from sigc::slot_base
 slot_base () noexcept
 Constructs an empty slot. More...
 
 slot_base (const slot_base & src)
 Constructs a slot, copying an existing one. More...
 
 slot_base (rep_type * rep) noexcept
 Constructs a slot from an existing slot_rep object. More...
 
 slot_base (slot_base && src)
 Constructs a slot, moving an existing one. More...
 
 ~slot_base ()
 
void add_destroy_notify_callback (void *data, func_destroy_notify func) const
 Add a callback that is executed (notified) when the slot is detroyed. More...
 
bool block (bool should_block=true) noexcept
 Sets the blocking state. More...
 
bool blocked () const noexcept
 Returns whether the slot is blocked. More...
 
void disconnect ()
 Disconnects the slot. More...
 
bool empty () const noexcept
 Returns whether the slot is invalid. More...
 
 operator bool () const noexcept
 Tests whether a slot is null, because the default constructor was used. More...
 
slot_baseoperator= (const slot_base & src)
 Overrides this slot, making a copy from another slot. More...
 
slot_baseoperator= (slot_base && src)
 Overrides this slot, making a move from another slot. More...
 
void remove_destroy_notify_callback (void *data) const
 Remove a callback previously installed with add_destroy_notify_callback(). More...
 
void set_parent (void * parent, void *(* cleanup)(void *)) const noexcept
 Sets the parent of this slot. More...
 
bool unblock () noexcept
 Unsets the blocking state. More...
 

Additional Inherited Members

- Public Attributes inherited from sigc::slot_base
bool blocked_
 Indicates whether the slot is blocked. More...
 
rep_type * rep_
 Typed slot_rep object that contains a functor. More...
 

Detailed Description

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

Convenience wrapper for the numbered sigc::slot5 template.

See the base class for useful methods. This is the template specialization of the unnumbered sigc::slot template for 5 argument(s), specialized for different numbers of arguments This is possible because the template has default (nil) template types.

Deprecated:
Please use the syntax similar to that used by std::function<>:
sigc::slot<void(bool, int)> some_slot;
Convenience wrapper for the numbered sigc::slot# templates.
Definition: slot.h:1645

Member Typedef Documentation

◆ parent_type

template <class T_return , class T_arg1 , class T_arg2 , class T_arg3 , class T_arg4 , class T_arg5 >
typedef slot5<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5> sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, nil, nil >::parent_type

Constructor & Destructor Documentation

◆ slot() [1/4]

template <class T_return , class T_arg1 , class T_arg2 , class T_arg3 , class T_arg4 , class T_arg5 >
sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, nil, nil >::slot ( )
inline

◆ slot() [2/4]

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

Constructs a slot from an arbitrary functor.

Parameters
_A_funcThe desired functor the new slot should be assigned to.

◆ slot() [3/4]

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

Constructs a slot, copying an existing one.

Parameters
srcThe existing slot to copy.

◆ slot() [4/4]

template <class T_return , class T_arg1 , class T_arg2 , class T_arg3 , class T_arg4 , class T_arg5 >
sigc::slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, nil, nil >::slot ( slot< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, nil, nil > &&  src)
inline

Constructs a slot, moving an existing one.

If src is connected to a parent (e.g. a signal), it is copied, not moved.

Parameters
srcThe existing slot to move or copy.

Member Function Documentation

◆ operator=() [1/2]

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

Overrides this slot, making a copy from another slot.

Parameters
srcThe slot from which to make a copy.
Returns
this.

◆ operator=() [2/2]

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

Overrides this slot, making a move from another slot.

If src is connected to a parent (e.g. a signal), it is copied, not moved.

Parameters
srcThe slot from which to move or copy.
Returns
this.