|
| signal6 () |
|
| signal6 (const signal6 & src) |
|
| signal6 (signal6 && src) |
|
iterator | connect (const slot_type & slot_) |
| Add a slot to the list of slots. More...
|
|
iterator | connect (slot_type && slot_) |
| Add a slot to the list of slots. More...
|
|
result_type | emit (type_trait_take_t< T_arg1 > _A_a1, type_trait_take_t< T_arg2 > _A_a2, type_trait_take_t< T_arg3 > _A_a3, type_trait_take_t< T_arg4 > _A_a4, type_trait_take_t< T_arg5 > _A_a5, type_trait_take_t< T_arg6 > _A_a6) const |
| Triggers the emission of the signal. More...
|
|
result_type | emit_reverse (type_trait_take_t< T_arg1 > _A_a1, type_trait_take_t< T_arg2 > _A_a2, type_trait_take_t< T_arg3 > _A_a3, type_trait_take_t< T_arg4 > _A_a4, type_trait_take_t< T_arg5 > _A_a5, type_trait_take_t< T_arg6 > _A_a6) const |
| Triggers the emission of the signal in reverse order (see emit()). More...
|
|
bound_const_mem_functor6< result_type, signal6, type_trait_take_t< T_arg1 >, type_trait_take_t< T_arg2 >, type_trait_take_t< T_arg3 >, type_trait_take_t< T_arg4 >, type_trait_take_t< T_arg5 >, type_trait_take_t< T_arg6 > > | make_slot () const |
| Creates a functor that calls emit() on this signal. More...
|
|
result_type | operator() (type_trait_take_t< T_arg1 > _A_a1, type_trait_take_t< T_arg2 > _A_a2, type_trait_take_t< T_arg3 > _A_a3, type_trait_take_t< T_arg4 > _A_a4, type_trait_take_t< T_arg5 > _A_a5, type_trait_take_t< T_arg6 > _A_a6) const |
| Triggers the emission of the signal (see emit()). More...
|
|
signal6 & | operator= (const signal6 & src) |
|
signal6 & | operator= (signal6 && src) |
|
slot_list_type | slots () |
| Creates an STL-style interface for the signal's list of slots. More...
|
|
const slot_list_type | slots () const |
| Creates an STL-style interface for the signal's list of slots. More...
|
|
| signal_base () noexcept |
|
| signal_base (const signal_base & src) noexcept |
|
| signal_base (signal_base && src) |
|
| ~signal_base () |
|
void | block (bool should_block=true) noexcept |
| Sets the blocking state of all slots in the list. More...
|
|
bool | blocked () const noexcept |
| Returns whether all slots in the list are blocked. More...
|
|
void | clear () |
| Empties the list of slots. More...
|
|
bool | empty () const noexcept |
| Returns whether the list of slots is empty. More...
|
|
signal_base & | operator= (const signal_base & src) |
|
signal_base & | operator= (signal_base && src) |
|
size_type | size () const noexcept |
| Returns the number of slots in the list. More...
|
|
void | unblock () noexcept |
| Unsets the blocking state of all slots in the list. More...
|
|
| trackable () noexcept |
|
| trackable (const trackable & src) noexcept |
|
| trackable (trackable && src) |
|
| ~trackable () |
|
void | add_destroy_notify_callback (void *data, func_destroy_notify func) const |
| Add a callback that is executed (notified) when the trackable object is detroyed. More...
|
|
void | notify_callbacks () |
| Execute and remove all previously installed callbacks. More...
|
|
trackable & | operator= (const trackable & src) |
|
trackable & | operator= (trackable && src) |
|
void | remove_destroy_notify_callback (void *data) const |
| Remove a callback previously installed with add_destroy_notify_callback(). More...
|
|
template <class
T_return, class T_arg1, class T_arg2, class T_arg3, class T_arg4, class T_arg5, class T_arg6, class T_accumulator = nil>
class sigc::signal6< T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_accumulator >
Signal declaration.
signal6 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 implicitly.
If you want to connect one signal to another, use make_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.
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_arg3 Argument type used in the definition of emit().
- T_arg4 Argument type used in the definition of emit().
- T_arg5 Argument type used in the definition of emit().
- T_arg6 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, for example if signal emission returns the return value of the last slot invoked.
You should use the more convenient unnumbered sigc::signal template.
template <class
T_return , class T_arg1 , class T_arg2 , class T_arg3 , class T_arg4 , class T_arg5 , class T_arg6 , class T_accumulator = nil>
Add a slot to the list of slots.
Any functor or slot may be passed into connect(). It will be converted into a slot implicitly. The returned iterator may be stored for disconnection of the slot at some later point. It stays valid until the slot is removed from the list of slots. The iterator can also be implicitly converted into a sigc::connection object that may be used safely beyond the life time of the slot.
std::function<> and C++11 lambda expressions are functors. These are examples of functors that can be connected to a signal.
std::bind() creates a functor, but this functor typically has an operator()() which is a variadic template. Our functor_trait can't deduce the result type of such a functor. If you first assign the return value of std::bind() to a std::function, you can connect the std::function to a signal.
- Parameters
-
slot_ | The slot to add to the list of slots. |
- Returns
- An iterator pointing to the new slot in the list.