E-MailRelay
Public Member Functions | Public Attributes | List of all members
G::Slot::Signal< SlotArgs > Struct Template Reference

A slot holder, with connect() and emit() methods. More...

#include <gslot.h>

+ Collaboration diagram for G::Slot::Signal< SlotArgs >:

Public Member Functions

 Signal (bool once=false)
 
void connect (Slot< SlotArgs... > slot)
 
void disconnect () noexcept
 
void emit (SlotArgs... args)
 
void reset () noexcept
 
bool connected () const
 
bool emitted () const noexcept
 
void emitted (bool emitted) noexcept
 
template<typename T >
bool rebind (T &sink) noexcept
 
 Signal (const Signal &)=delete
 
 Signal (Signal &&) noexcept=default
 
Signaloperator= (const Signal &)=delete
 
Signaloperator= (Signal &&) noexcept=default
 

Public Attributes

Slot< SlotArgs... > m_slot
 
bool m_once
 
bool m_emitted {false}
 

Detailed Description

template<typename... SlotArgs>
struct G::Slot::Signal< SlotArgs >

A slot holder, with connect() and emit() methods.

Definition at line 183 of file gslot.h.

Constructor & Destructor Documentation

◆ Signal()

template<typename... SlotArgs>
G::Slot::Signal< SlotArgs >::Signal ( bool  once = false)
inlineexplicit

Definition at line 188 of file gslot.h.

Member Function Documentation

◆ connect()

template<typename... SlotArgs>
void G::Slot::Signal< SlotArgs >::connect ( Slot< SlotArgs... >  slot)
inline

Definition at line 192 of file gslot.h.

◆ connected()

template<typename... SlotArgs>
bool G::Slot::Signal< SlotArgs >::connected ( ) const
inline

Definition at line 215 of file gslot.h.

◆ disconnect()

template<typename... SlotArgs>
void G::Slot::Signal< SlotArgs >::disconnect ( )
inlinenoexcept

Definition at line 197 of file gslot.h.

◆ emit()

template<typename... SlotArgs>
void G::Slot::Signal< SlotArgs >::emit ( SlotArgs...  args)
inline

Definition at line 202 of file gslot.h.

◆ emitted() [1/2]

template<typename... SlotArgs>
bool G::Slot::Signal< SlotArgs >::emitted ( ) const
inlinenoexcept

Definition at line 219 of file gslot.h.

◆ emitted() [2/2]

template<typename... SlotArgs>
void G::Slot::Signal< SlotArgs >::emitted ( bool  emitted)
inlinenoexcept

Definition at line 223 of file gslot.h.

◆ rebind()

template<typename... SlotArgs>
template<typename T >
bool G::Slot::Signal< SlotArgs >::rebind ( T &  sink)
inlinenoexcept

Definition at line 227 of file gslot.h.

◆ reset()

template<typename... SlotArgs>
void G::Slot::Signal< SlotArgs >::reset ( )
inlinenoexcept

Definition at line 211 of file gslot.h.

Member Data Documentation

◆ m_emitted

template<typename... SlotArgs>
bool G::Slot::Signal< SlotArgs >::m_emitted {false}

Definition at line 187 of file gslot.h.

◆ m_once

template<typename... SlotArgs>
bool G::Slot::Signal< SlotArgs >::m_once

Definition at line 186 of file gslot.h.

◆ m_slot

template<typename... SlotArgs>
Slot<SlotArgs...> G::Slot::Signal< SlotArgs >::m_slot

Definition at line 185 of file gslot.h.


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